mcpField
K
knowledge

knowledge

ローカル
github.com/seayniclabsメモリ・ナレッジ01 日前に更新

knowledge について

knowledgeは、セルフホストのOpen Notebookを使う人向けのMCPサーバーです。ノートの検索・読み取り・書き込みに加え、調査、議事録、週次レビューのスキルを提供し、書き込みやローカルファイルの読み込みには承認を求めます。

主な機能

  1. 01ノートとソースの検索
  2. 02ノートとソース内容の読み取り
  3. 03ノート作成とウェブソースの追加
  4. 04書き込み前のプレビューと承認要求
  5. 05調査・議事録・週次レビューのスキル

活用シーン

  1. 01ノートを検索して回答に出典を付ける
  2. 02今週更新したノートを振り返る
  3. 03議事録や決定記録を作成する
  4. 04選択したノートブックにウェブリンクを追加

MCP 対応

設定したOpen Notebookサーバーに接続し、MCPクライアントに検索・読み取り・書き込みツールとスキルプロンプトを提供します。書き込み操作ではユーザー承認を求められます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"seayniclabs-knowledge": {
"command": "uvx",
"args": [
"knowledge-bundle-mcp"
],
"env": {
"KNOWLEDGE_OPEN_NOTEBOOK_URL": "<KNOWLEDGE_OPEN_NOTEBOOK_URL>",
"KNOWLEDGE_OPEN_NOTEBOOK_PASSWORD": "<KNOWLEDGE_OPEN_NOTEBOOK_PASSWORD>",
"KNOWLEDGE_OPEN_NOTEBOOK_REQUIRE_CONFIRM": "<KNOWLEDGE_OPEN_NOTEBOOK_REQUIRE_CONFIRM>",
"KNOWLEDGE_OPEN_NOTEBOOK_ALLOWED_NOTEBOOKS": "<KNOWLEDGE_OPEN_NOTEBOOK_ALLOWED_NOTEBOOKS>"
}
}
}
}
起動コマンドuvx knowledge-bundle-mcp
設定が必要な環境変数
KNOWLEDGE_OPEN_NOTEBOOK_URLAddress of your Open Notebook server, e.g. https://notebook.example.com
KNOWLEDGE_OPEN_NOTEBOOK_PASSWORDシークレットPassword for your Open Notebook server, if it has one
KNOWLEDGE_OPEN_NOTEBOOK_REQUIRE_CONFIRMtrue (default): you approve each new note. false: the assistant may write on its own
KNOWLEDGE_OPEN_NOTEBOOK_ALLOWED_NOTEBOOKSComma-separated notebook names the assistant may write to without asking

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypiknowledge-bundle-mcp0.2.1

ツール

8

掲載時のツール一覧 · 今日に更新

パラメーター型必須説明
limitintegerいいえ
offsetintegerいいえ
include_archivedbooleanいいえ

詳細

Knowledge

Seaynic Labs が開発しました。 このようなツールをご自身のシステム向けに作りたいですか?ご相談ください。

Knowledge を使うと、AI アシスタントがセルフホスト可能な Open Notebook のノートを検索、読み取り、書き込みできます。また、会議メモ、意思決定記録、週次レビュー、出典に基づく調査などの作業をうまくこなせるようにするスキルも付属しています。

これは、ツール、スキル、指示をひとつにまとめたバンドルです。ツールはモジュールで構成された1つのサーバーです。使用するモジュールを有効にします。新しいモジュールは無効の状態で追加されるため、使うものを選ぶまでは、更新によってアシスタントができることが変わることはありません。

セキュリティカード
ネットワーク設定した Open Notebook サーバー(KNOWLEDGE_OPEN_NOTEBOOK_URL)のみです。Open Notebook は、Knowledge ではなく、追加したリンクを取得します。それ以外の通信やテレメトリーはありません。
ファイル設定ファイル(/.config/knowledge/config.toml)を読み取ります。ローカルファイルを読み取るのは、open_notebook_add_source でそのファイルを指定し、承認した場合のみです(ファイルは Open Notebook サーバーに送信されます)。ローカルの承認ログ(/.local/state/knowledge/approvals.jsonl)を1つ書き込みます。
シークレット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-notesMarkdown ファイルとして構造化された会議メモを作成し、必要に応じてノートブックに保存しますSeaynic Labs(MIT)
decision-recordDecisions/ フォルダーに、番号付きのアーキテクチャ意思決定記録を作成しますSeaynic Labs(MIT)
icm-architectエージェントがたどれるフォルダー構造としてナレッジベースを整理しますJake Van Clief(MIT)、クレジット
obsidian-markdownWikiリンク、コールアウト、プロパティを含む 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分

  1. KNOWLEDGE_OPEN_NOTEBOOK_URL にサーバーのアドレスを設定します(設定場所は以下の手順2を参照してください)。

  2. チェックを実行します。各項目について ok または FIX が表示され、すべて準備できている場合は 0 で終了します。

    knowledge-bundle-mcp --doctor
    
  3. アシスタントを起動し、ノートブックの一覧を表示するよう頼みます。open_notebook_notebooks を呼び出し、名前を表示します。

  4. ノートの1つに含まれていると分かっている単語を検索するよう頼みます。open_notebook_search を呼び出します。

  5. ノートを保存するよう頼みます。まずプレビューが表示され、その後、アプリで保存を承認するよう求められます。

設定

MCP クライアントの設定で環境変数として設定するか、設定ファイルに記述します(以下を参照)。Knowledge はこれらの設定なしで起動し、ツールを呼び出したときに不足している設定を知らせます。

変数モジュール内容
KNOWLEDGE_OPEN_NOTEBOOK_URLopen_notebookOpen Notebook サーバーのアドレス。例:https://notebook.example.com。パスは指定しません。
KNOWLEDGE_OPEN_NOTEBOOK_PASSWORDopen_notebookサーバーにパスワードが設定されている場合のみ指定します(サーバー側の OPEN_NOTEBOOK_PASSWORD)。それ以外の場合は設定しません。
KNOWLEDGE_OPEN_NOTEBOOK_REQUIRE_CONFIRMopen_notebookデフォルトは true です。新しいノートとリンクを追加するたびに承認します。false にすると、アシスタントが自動で保存します。ローカルファイルは常に承認が必要です。
KNOWLEDGE_OPEN_NOTEBOOK_ALLOWED_NOTEBOOKSopen_notebook任意。確認なしでリンクやノートを保存できるノートブック名をカンマ区切りで指定します。例:Research,Inbox
KNOWLEDGE_APPROVAL_LOGany任意。承認ログの保存先です。デフォルト:~/.local/state/knowledge/approvals.jsonl
KNOWLEDGE_<MODULE>_ENABLEDanyfalse にするとモジュールが無効になります。例: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 Desktopclaude_desktop_config.json(Settings → Developer → Edit Config)
Claude Codeclaude 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 が正常に通ったら、以下のいずれかをアシスタントに入力してください。

  1. 「ノートブックの一覧を表示して、最後に更新されたものを教えてください。」
  2. 「Q3予算について書いた内容をノートブックから検索し、各ノートを引用してください。」
  3. 「weekly-review スキルを使って、今週変更したノートの週次レビューを書いてください。」
  4. 「プロトタイプで Postgres ではなく SQLite を選ぶための ADR を作成し、代替案の表も記入してください。」
  5. 「このリンクを Research ノートブックに保存してください:https://example.com/article。まずプレビューを表示してください。」

ツール

ツール返される内容
knowledge_modules有効なモジュール、不足している設定、スキル、公開者を返します。最初に呼び出してください。
open_notebook_notebooks自分のノートブックを、最終更新日時の新しい順にページ分割して返します
open_notebook_search一致するソースとメモを返します。mode は text(キーワード)または vector(意味。サーバー上に埋め込みモデルが必要)です。notebook_id は任意です。ページ分割されます。
open_notebook_notes1 つのノートブック内のメモを、タイトルのみでページ分割して返します
open_notebook_note_get1 件のメモの内容を、max_chars で指定した文字数で切り詰めて返します
open_notebook_source_get1 件のソースのタイトル、トピック、抽出されたテキスト、ノートブック、処理状況を返します
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 が開発。 当社は、ローカルファーストで、変更のたびに人が承認するビジネス独自のシステム向けに、このようなツールを開発しています。カスタム連携を見る。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。