メインコンテンツまでスキップ

MCPサーバー

概要

MCP(Model Context Protocol)サーバーは、ZoteroライブラリとSynthesisの機能を40以上のMCPツールとして公開する組み込みプロトコルサービスである。MCP対応クライアント(Claude Desktop、Cursor、VS Code拡張機能など)がZoteroデータに直接アクセスできる。

MCPサーバーはHost Bridgeのケイパビリティレジストリを基盤として共有するが、MCPプロトコル仕様(Streamable HTTPトランスポート、JSON-RPC 2.0)に従う。

設定

Zotero → 設定 → Zotero Agents → Host Bridge → MCPサーバーを有効にする

単一のチェックボックスでサーバーのオン/オフを切り替える。デフォルトで有効。

設定不可のデフォルト値

設定理由
リッスンアドレス127.0.0.1セキュリティ:ループバックのみ
オリジン検証厳格127.0.0.1localhost[::1]のみ許可
リクエストサイズ制限1 MBメモリ保護
書き込み保護有効すべての書き込みオペレーションに承認が必要

セキュリティ

  • Bearer Token認証: Host Bridgeと同じセッショントークン/マスタートークンを共有
  • ループバックのみ: リモートアクセスは不可
  • オリジン検証: クロスオリジンリクエストは拒否(403)
  • 1 MB上限: oversizedボディは413で拒否
  • シングルスレッドキュー: 1実行 + 8待機、45秒実行タイムアウト、30秒キュータイムアウト
  • サーキットブレーカー: 5分以内に3回失敗 → ツールを60秒間一時停止

MCPクライアントの接続

エンドポイント

http://127.0.0.1:<port>/mcp

ポートは自動割り当て(範囲26370-26569)。実際のポートは環境設定のHost Bridgeエンドポイントで確認する。

Claude Desktop設定例

{
"mcpServers": {
"zotero-skills": {
"type": "http",
"url": "http://127.0.0.1:26370/mcp",
"headers": {
"Authorization": "Bearer <your-token>"
}
}
}
}

トークンは環境設定 → Host Bridge → マスタートークンをコピーで取得する。

プロトコルの詳細

  • トランスポート:Streamable HTTP(POST /mcp
  • バージョン:2025-06-18
  • サーバーID:zotero-skills / "Zotero Agents Context Broker" v0.4.0
  • GET /mcp → 405(POSTのみ受け付け)
  • idなしのリクエスト → 通知として扱われる(レスポンスなし)
  • id: null → 明示的に無効

ツール一覧

全40以上のツール

読み取りツール

ツール説明
get_current_view現在のZoteroビュー情報
get_selected_items現在選択されているアイテムのサマリー
search_itemsアイテムを検索(制限 ≤ 50)
list_library_itemsページネーション付きアイテム一覧
get_item_detail完全なアイテムメタデータ
get_item_notes子ノートを一覧
get_note_detailノート本文を読む(チャンク分割、1チャンクあたり ≤ 16k文字)
list_note_payloadsノート内のWorkflowペイロードを一覧
get_note_payload1つのペイロードを読む
get_item_attachments添付ファイルのマニフェストを一覧(ファイルバイトは除く)
prepare_paper_reading_context1つの論文のメタデータ、ノート、ペイロード、添付ファイルを統合

書き込みツール(承認が必要)

ツール説明
preview_mutation書き込みオペレーションをプレビュー(実行しない)
update_item_fields1つのアイテムの許可されたフィールドを更新
add_item_tags1つ以上のアイテムにタグを追加
remove_item_tagsタグを削除
create_child_note子ノートを作成
update_noteノート本文を更新
create_markdown_noteレンダリング済みHTML + base64 Markdownペイロードを持つノートを作成
update_markdown_note既存のMarkdownバックノートを更新
ingest_paperDOI/arXiv/PMID/ISBNで論文を取り込み(PDF添付ファイル付き)
add_items_to_collectionアイテムをコレクションに追加
remove_items_from_collectionアイテムをコレクションから削除

診断ツール

ツール説明
get_mcp_statusサービス診断:キュー、サーキットブレーカー、最近のリクエスト

Synthesisツール

ツール説明
topics.listすべてのトピックを一覧
topics.find_by_paper_ref論文参照でトピックを検索
topics.get_context完全なトピックコンテキストを取得
topics.get_review_inputトピックレビューパッケージを組立て
schemas.getスキーマ定義を取得
concepts.query概念ナレッジベースをクエリ
citation_graph.query_cluster引用クラスタをクエリ
citation_graph.get_overviewグラフの概要を取得
citation_graph.get_sliceサブグラフスライスを抽出
citation_graph.get_metricsグラフメトリクスを計算(pagerank、foundation、frontier)
citation_graph.rank_external_references外部参考文献をランキング
citation_graph.rank_library_papersライブラリ論文をランキング
library_index.getページネーション付きライブラリインデックス
resolvers.resolve参考文献/トピックリゾルバを解決
reference_index.get参考文献インデックスを取得
paper_artifacts.get_manifestアーティファクトのマニフェストを取得
paper_artifacts.readアーティファクトの内容を読む
paper_artifacts.export_filteredフィルタ済みアーティファクトをエクスポート
paper_artifacts.resolve_topic_digestトピックダイジェストを解決
insights.get_attention_queueアテンションキューを取得

書き込み保護

書き込みツールはHost Bridgeと同じ承認モデルに従う。

MCPクライアントが書き込みツールを呼び出す

├── Bearer Tokenを検証
├── ツールスコープを抽出
├── 承認チェック:
│ ├── 読み取り専用ツール → 即座に実行
│ ├── 事前承認済み書き込み → 即座に実行
│ └── 承認が必要 → Zotero UIにキュー
└── 実行 / 拒否

キュー:最大50の保留中の承認。5分以内に10回以上の拒否 → サーキットブレーカー(30秒間無効化)。

次のステップ

  • Host Bridge — 基盤となるトランスポートとCLIツール
  • 環境設定 — MCPサーバーの設定を表示