knowledge について
knowledgeは、セルフホストのOpen Notebookを使う人向けのMCPサーバーです。ノートの検索・読み取り・書き込みに加え、調査、議事録、週次レビューのスキルを提供し、書き込みやローカルファイルの読み込みには承認を求めます。
主な機能
- 01ノートとソースの検索
- 02ノートとソース内容の読み取り
- 03ノート作成とウェブソースの追加
- 04書き込み前のプレビューと承認要求
- 05調査・議事録・週次レビューのスキル
活用シーン
- 01ノートを検索して回答に出典を付ける
- 02今週更新したノートを振り返る
- 03議事録や決定記録を作成する
- 04選択したノートブックにウェブリンクを追加
MCP 対応
設定したOpen Notebookサーバーに接続し、MCPクライアントに検索・読み取り・書き込みツールとスキルプロンプトを提供します。書き込み操作ではユーザー承認を求められます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
uvx knowledge-bundle-mcpKNOWLEDGE_OPEN_NOTEBOOK_URLAddress of your Open Notebook server, e.g. https://notebook.example.comKNOWLEDGE_OPEN_NOTEBOOK_PASSWORDシークレットPassword for your Open Notebook server, if it has oneKNOWLEDGE_OPEN_NOTEBOOK_REQUIRE_CONFIRMtrue (default): you approve each new note. false: the assistant may write on its ownKNOWLEDGE_OPEN_NOTEBOOK_ALLOWED_NOTEBOOKSComma-separated notebook names the assistant may write to without askingローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
8掲載時のツール一覧 · 今日に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| limit | integer | いいえ | |
| offset | integer | いいえ | |
| include_archived | boolean | いいえ |
詳細
Knowledge
Seaynic Labs が開発しました。 このようなツールをご自身のシステム向けに作りたいですか?ご相談ください。
Knowledge を使うと、AI アシスタントがセルフホスト可能な Open Notebook のノートを検索、読み取り、書き込みできます。また、会議メモ、意思決定記録、週次レビュー、出典に基づく調査などの作業をうまくこなせるようにするスキルも付属しています。
これは、ツール、スキル、指示をひとつにまとめたバンドルです。ツールはモジュールで構成された1つのサーバーです。使用するモジュールを有効にします。新しいモジュールは無効の状態で追加されるため、使うものを選ぶまでは、更新によってアシスタントができることが変わることはありません。
| セキュリティカード | |
|---|---|
| ネットワーク | 設定した Open Notebook サーバー(KNOWLEDGE_OPEN_NOTEBOOK_URL)のみです。Open Notebook は、Knowledge ではなく、追加したリンクを取得します。それ以外の通信やテレメトリーはありません。 |
| ファイル | 設定ファイル( |
| シークレット | API キーとパスワードは、環境または設定ファイルから取得します。ツールの引数として渡されることも、モデルに返されることもありません。 |
| 読み取り専用のツール | 6個:open_notebook_notebooks、open_notebook_search、open_notebook_notes、open_notebook_note_get、open_notebook_source_get、knowledge_modules |
| 承認が必要 | open_notebook_note_create、open_notebook_add_source:アプリで書き込みを1件ずつ承認するか、設定でノートブックを事前承認します(ローカルファイルは対象外です)。AI が代わりに承認することはできません。 |
| 起動コスト | 約4,600トークン(ツール8個、スキルプロンプト7個) |
| 変更 | ツールの説明はハッシュで固定されています(tool-manifest.lock.json)。説明が通知なく変更された場合、CI は失敗します。 |
スキル
| スキル | 機能 | 提供元 |
|---|---|---|
getting-started | 設定を確認し、最初の呼び出しを実行して、承認やエラーについて説明します | Seaynic Labs(MIT) |
research-with-sources | ノートブックをもとに回答し、各主張に出典を示し、内容が食い違う出典に注意を促します | Seaynic Labs(MIT) |
weekly-review | 今週変更したノートから、完了項目、未完了項目、来週の項目をまとめます | Seaynic Labs(MIT) |
meeting-notes | Markdown ファイルとして構造化された会議メモを作成し、必要に応じてノートブックに保存します | Seaynic Labs(MIT) |
decision-record | Decisions/ フォルダーに、番号付きのアーキテクチャ意思決定記録を作成します | Seaynic Labs(MIT) |
icm-architect | エージェントがたどれるフォルダー構造としてナレッジベースを整理します | Jake Van Clief(MIT)、クレジット |
obsidian-markdown | Wikiリンク、コールアウト、プロパティを含む Obsidian 形式の Markdown を扱います | Steph Ango(MIT)、クレジット |
スキルはすべてのアプリで利用できます。Claude Code などのスキル対応アプリは skills/ フォルダーを読み取ります。どの MCP アプリでも同じテキストをプロンプトとして利用できます。たとえば、getting-started は getting-started という名前のプロンプトです。サードパーティ製スキルには、それぞれのライセンスファイルが付属しています。CREDITS.md をご覧ください。
インストール
Knowledge の実行には Python 3.11 以降が必要です。uv を使えば、事前に何かをインストールする必要はありません。
uvx knowledge-bundle-mcp --version
または pip を使います。
pip install knowledge-bundle-mcp
バージョンを固定してインストールする場合。 固定した環境にするには、正確なバージョンを指定します。プラグインマニフェストでも同じ方法でバージョンを固定します。
uvx knowledge-bundle-mcp==0.2.1 --version
Claude Code プラグインとしてインストールする場合。 1回のインストールで MCP サーバーとスキルを導入できます。リリースとともに公開される seayniclabs/plugins マーケットプレイスが必要です。
/plugin marketplace add seayniclabs/plugins
/plugin install knowledge@seayniclabs
プラグインを使う場合も、設定で Open Notebook のアドレスを指定する必要があります。プラグインファイルは .claude-plugin/plugin.json です。
最初の5分
-
KNOWLEDGE_OPEN_NOTEBOOK_URLにサーバーのアドレスを設定します(設定場所は以下の手順2を参照してください)。 -
チェックを実行します。各項目について
okまたはFIXが表示され、すべて準備できている場合は 0 で終了します。knowledge-bundle-mcp --doctor -
アシスタントを起動し、ノートブックの一覧を表示するよう頼みます。
open_notebook_notebooksを呼び出し、名前を表示します。 -
ノートの1つに含まれていると分かっている単語を検索するよう頼みます。
open_notebook_searchを呼び出します。 -
ノートを保存するよう頼みます。まずプレビューが表示され、その後、アプリで保存を承認するよう求められます。
設定
MCP クライアントの設定で環境変数として設定するか、設定ファイルに記述します(以下を参照)。Knowledge はこれらの設定なしで起動し、ツールを呼び出したときに不足している設定を知らせます。
| 変数 | モジュール | 内容 |
|---|---|---|
KNOWLEDGE_OPEN_NOTEBOOK_URL | open_notebook | Open Notebook サーバーのアドレス。例:https://notebook.example.com。パスは指定しません。 |
KNOWLEDGE_OPEN_NOTEBOOK_PASSWORD | open_notebook | サーバーにパスワードが設定されている場合のみ指定します(サーバー側の OPEN_NOTEBOOK_PASSWORD)。それ以外の場合は設定しません。 |
KNOWLEDGE_OPEN_NOTEBOOK_REQUIRE_CONFIRM | open_notebook | デフォルトは true です。新しいノートとリンクを追加するたびに承認します。false にすると、アシスタントが自動で保存します。ローカルファイルは常に承認が必要です。 |
KNOWLEDGE_OPEN_NOTEBOOK_ALLOWED_NOTEBOOKS | open_notebook | 任意。確認なしでリンクやノートを保存できるノートブック名をカンマ区切りで指定します。例:Research,Inbox |
KNOWLEDGE_APPROVAL_LOG | any | 任意。承認ログの保存先です。デフォルト:~/.local/state/knowledge/approvals.jsonl |
KNOWLEDGE_<MODULE>_ENABLED | any | false にするとモジュールが無効になります。例:KNOWLEDGE_OPEN_NOTEBOOK_ENABLED=false |
設定ファイル(任意)。 Knowledge は ~/.config/knowledge/config.toml、または KNOWLEDGE_CONFIG で指定されたファイルも読み込みます。環境変数は設定ファイルより優先されます。
[open_notebook]
url = "https://notebook.example.com"
password = "change-me"
require_confirm = true
MCP クライアントに追加する
ほとんどのクライアントでは同じ形式の JSON を使用します。クライアントが MCP サーバーの設定を保存する場所に記述してください。
{
"mcpServers": {
"knowledge": {
"command": "uvx",
"args": ["knowledge-bundle-mcp"],
"env": {
"KNOWLEDGE_OPEN_NOTEBOOK_URL": "https://notebook.example.com"
}
}
}
}
| クライアント | 設定の保存場所 |
|---|---|
| Claude Desktop | claude_desktop_config.json(Settings → Developer → Edit Config) |
| Claude Code | claude mcp add knowledge -- uvx knowledge-bundle-mcp を実行し、env の値を追加するか、プロジェクトの .mcp.json を使用します |
| Cursor | ~/.cursor/mcp.json、またはプロジェクト内の .cursor/mcp.json |
| VS Code | "mcpServers" の代わりに "servers" を使用して .vscode/mcp.json に記述します |
| Sonique、Hermes、OpenClaw、その他 | stdio MCP サーバーを起動するクライアントであれば使用できます。コマンドに uvx、引数に ["knowledge-bundle-mcp"] を指定し、さらに env の値を設定します |
HTTP 経由。 プロセスを起動する代わりに URL に接続するクライアントの場合:
knowledge-bundle-mcp --transport http --port 8765
http://127.0.0.1:8765/mcp でストリーミング可能な HTTP を提供します。デフォルトでは、自分のマシンからのみ接続を受け付けます。ほかの場所に公開する前に、認証を設定してください。
試してみる
Knowledge で --doctor が正常に通ったら、以下のいずれかをアシスタントに入力してください。
- 「ノートブックの一覧を表示して、最後に更新されたものを教えてください。」
- 「Q3予算について書いた内容をノートブックから検索し、各ノートを引用してください。」
- 「weekly-review スキルを使って、今週変更したノートの週次レビューを書いてください。」
- 「プロトタイプで Postgres ではなく SQLite を選ぶための ADR を作成し、代替案の表も記入してください。」
- 「このリンクを Research ノートブックに保存してください:https://example.com/article。まずプレビューを表示してください。」
ツール
| ツール | 返される内容 |
|---|---|
knowledge_modules | 有効なモジュール、不足している設定、スキル、公開者を返します。最初に呼び出してください。 |
open_notebook_notebooks | 自分のノートブックを、最終更新日時の新しい順にページ分割して返します |
open_notebook_search | 一致するソースとメモを返します。mode は text(キーワード)または vector(意味。サーバー上に埋め込みモデルが必要)です。notebook_id は任意です。ページ分割されます。 |
open_notebook_notes | 1 つのノートブック内のメモを、タイトルのみでページ分割して返します |
open_notebook_note_get | 1 件のメモの内容を、max_chars で指定した文字数で切り詰めて返します |
open_notebook_source_get | 1 件のソースのタイトル、トピック、抽出されたテキスト、ノートブック、処理状況を返します |
open_notebook_note_create | 承認後にメモを保存します。confirm=true を指定しない場合はプレビューのみを返します。 |
open_notebook_add_source | 指定したウェブリンクまたはローカルファイルをソースとして追加します。最初にプレビューを表示し、承認後に追加します。バックグラウンドで処理されます。 |
すべてのツールは公開済みのスキーマに基づく構造化データを返すため、アシスタントはテキストを解析せずに結果を扱えます。エラーは常に knowledge.<module>.<code>: <message> Fix: <hint> の形式です。
セキュリティ
- Knowledge は、設定した Open Notebook サーバーのみを呼び出します。それ以外の場所には何も送信せず、独自のデータも保持しません。
open_notebook_note_createとopen_notebook_add_sourceはノートブックを変更するため、各操作はユーザー自身が承認します。アシスタントが保存を求めると、Knowledge は MCP クライアントを通じてユーザーに直接確認し(MCP elicitation)、ノートブック、タイトル、全文またはリンクを表示します。アシスタントがユーザーの代わりにその質問に答えることはできません。- ローカルファイルは、ユーザーがファイル名を指定した後にのみ読み込まれ、フルパスとサイズをユーザーが承認した後にのみアップロードされます。認証情報ストアのような名前のファイル(
.env、.netrc、秘密鍵、*.pem、*.key)および~/.ssh、~/.aws、~/.gnupg内のファイルは拒否されます。 - 一部の MCP クライアントは、まだユーザーへの質問に対応していません。その場合、
KNOWLEDGE_OPEN_NOTEBOOK_ALLOWED_NOTEBOOKSでノートブックを事前承認するか、KNOWLEDGE_OPEN_NOTEBOOK_REQUIRE_CONFIRM=falseで承認を無効にしない限り、Knowledge は書き込みを拒否します。ローカルファイルは事前承認できません。 - 書き込みや送信の前に、認証情報に見えるテキスト(API キー、トークン、秘密鍵、URL 内のパスワード)は拒否されます。エラーには検出された認証情報の種類が示されますが、値は示されません。
- サーバーには
https://アドレスを使用し、パスワードはほかのツールではなく Knowledge にのみ伝えてください。
開発
uv venv && uv pip install -e '.[dev]'
.venv/bin/pytest
python3 scripts/check_skills.py
.venv/bin/python scripts/tool_lock.py --check
.venv/bin/python scripts/security_card.py --check
scripts/tool_lock.py(--check を付けない場合)は、ツール、プロンプト、または指示に意図的な変更を加えた後、tool-manifest.lock.json を書き換えます。同じコミットに変更履歴の行を追加してください。
セキュリティ
脆弱性は GitHub から非公開で報告してください(Security タブの「Report a vulnerability」)。SECURITY.md を参照してください。すべての承認、拒否、書き込み拒否は ~/.local/state/knowledge/approvals.jsonl にローカルで記録されます。記録されるのはタイトル、ノートブック名、サイズであり、テキストは記録されません。移動するには KNOWLEDGE_APPROVAL_LOG を設定してください。
ライセンス
MIT。Seaynic Labs が公開しています。サードパーティのスキルは CREDITS.md にクレジットを記載し、それぞれ独自のライセンスを保持しています。
Seaynic Labs が開発。 当社は、ローカルファーストで、変更のたびに人が承認するビジネス独自のシステム向けに、このようなツールを開発しています。カスタム連携を見る。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。