MCPサーバー セットアップガイド

Claude Scholarは拡張機能のためにMCP(Model Context Protocol)サーバーを利用します。MCPサーバーはこのリポジトリには含まれていません — ユーザーが個別にインストールおよび設定する必要があります。

必須MCPサーバー

1. Zotero MCP(研究ワークフロー)

使用先: literature-reviewerエージェント、/research-init/zotero-review/zotero-notesコマンド

パッケージ: Galaxy-Dawn/zotero-mcp — ローカルZoteroデスクトップとWeb APIモードを自動検出。Web認証情報はリモートアクセスまたは書き込みツールの場合にのみ必要。

機能

カテゴリ ツール
インポート zotero_add_items_by_identifier, zotero_add_items_by_doi, zotero_add_items_by_arxiv, zotero_add_item_by_url
読み取り zotero_get_collections, zotero_get_collection_items, zotero_search_items, zotero_semantic_search
更新 zotero_update_item, zotero_update_note, zotero_create_collection, zotero_move_items_to_collection, zotero_reconcile_collection_duplicates
削除 zotero_delete_items(ゴミ箱へ移動), zotero_delete_collection
PDF zotero_find_and_attach_pdfs(source-aware PDF cascade), zotero_add_linked_url_attachment

前提条件

  1. Web API認証情報なしでローカル読み取り専用アクセスを行う場合はZoteroをインストール
  2. 書き込みツールまたはリモートWeb APIアクセスの場合は、Zotero設定 -> セキュリティ -> アプリケーションを開く
  3. Create new private keyをクリックしてAPIキーを生成
  4. 同じページでボタンの下に表示されるUser IDをコピー。個人ライブラリの場合、この数値をZOTERO_LIBRARY_IDとして使用

インストール

# uv経由でインストール(推奨)
uv tool install git+https://github.com/Galaxy-Dawn/zotero-mcp.git

設定

以下からプラットフォームを選択してください:

Claude Code

Claude Code v2.1.5以降の場合、~/.claude.jsonmcpServersに追加。

それ以前のバージョンの場合、~/.claude/settings.jsonmcpServersに追加:

{
  "mcpServers": {
    "zotero": {
      "command": "zotero-mcp",
      "args": ["serve"],
      "env": {
        "ZOTERO_API_KEY": "your-api-key",
        "ZOTERO_LIBRARY_ID": "your-user-id",
        "ZOTERO_LIBRARY_TYPE": "user",
        "UNPAYWALL_EMAIL": "your-email@example.com",
        "UNSAFE_OPERATIONS": "all"
      }
    }
  }
}
Codex CLI

~/.codex/config.tomlに追加:

[mcp_servers.zotero]
command = "zotero-mcp"
args = ["serve"]
enabled = true

[mcp_servers.zotero.env]
ZOTERO_API_KEY = "your-api-key"
ZOTERO_LIBRARY_ID = "your-user-id"
ZOTERO_LIBRARY_TYPE = "user"
UNPAYWALL_EMAIL = "your-email@example.com"
UNSAFE_OPERATIONS = "all"
NO_PROXY = "localhost,127.0.0.1"
OpenCode

~/.opencode/opencode.jsoncに追加:

{
  "mcp": {
    "zotero": {
      "type": "local",
      "command": ["zotero-mcp", "serve"],
      "enabled": true
    }
  }
}

次に~/.zshrcで環境変数を設定:

# Zotero MCP
export ZOTERO_API_KEY="your-api-key"
export ZOTERO_LIBRARY_ID="your-user-id"
export ZOTERO_LIBRARY_TYPE="user"
export UNPAYWALL_EMAIL="your-email@example.com"
export UNSAFE_OPERATIONS="all"

環境変数

変数 必須 説明
ZOTERO_API_KEY ローカル読み取り専用: 不要、Web/書き込みツール: 必要 Zotero APIキー
ZOTERO_LIBRARY_ID ローカル読み取り専用: 不要、Web/書き込みツール: 必要 個人ライブラリ用のZotero User ID(数値)
ZOTERO_LIBRARY_TYPE 必要 userまたはgroup
UNPAYWALL_EMAIL 不要 Unpaywall PDF検索用メールアドレス
UNSAFE_OPERATIONS 不要 items(delete_items)、all(delete_collection)
NO_PROXY 不要 localhostのプロキシをバイパス

注意:

  • 最小限のローカルセットアップはcommand = "zotero-mcp"args = ["serve"]のみです。
  • 本番設定にyour-api-keyyour-user-idyour-email@example.comなどのプレースホルダー値を残さないでください。

利用可能なツール

ツール 用途
zotero_get_collections 全コレクションを一覧表示
zotero_get_collection_items コレクション内のアイテムを取得
zotero_search_items キーワードでライブラリを検索
zotero_search_by_tag タグで検索
zotero_get_item_metadata アイテムのメタデータとアブストラクトを取得
zotero_get_item_fulltext PDFフルテキストを読解
zotero_get_annotations PDFアノテーションを取得
zotero_get_notes ノートを取得
zotero_semantic_search セマンティック検索(埋め込みを使用)
zotero_advanced_search 高度な検索
zotero_add_items_by_identifier DOI、arXiv、ランディングページ、または直接PDF URLから論文をスマートに取り込む。Webアップロードが容量制限に当たり、かつ Zotero Desktop が起動している場合は、ローカル connector copy(pdf_source=local_zotero_copy)へフォールバックしたり、既存のローカル copy(pdf_source=local_zotero_existing_copy)を再利用したりでき、利用可能な場合は local_item_key=... を返す
zotero_add_items_by_doi DOIで論文をインポート
zotero_add_items_by_arxiv arXiv IDでプレプリントをインポート
zotero_add_item_by_url Webページをアイテムとして保存
zotero_update_item アイテムのフィールドを更新
zotero_update_note ノートの内容を更新
zotero_create_collection コレクションを作成
zotero_move_items_to_collection コレクション間でアイテムを移動
zotero_update_collection コレクション名を変更
zotero_delete_collection コレクションを削除
zotero_delete_items アイテムをゴミ箱に移動
zotero_find_and_attach_pdfs 既存アイテムに対して source-aware PDF cascade を再実行
zotero_reconcile_collection_duplicates インポート後の重複排除とコレクション単位のクリーンアップ
zotero_add_linked_url_attachment リンクURL添付ファイルを追加

ワークフローメモ: Claude Scholar の現在の研究立ち上げ経路では、インポートに zotero_add_items_by_identifier を優先し、その後の標準クリーンアップとして zotero_reconcile_collection_duplicates を使います。import ledger と local-copy reconcile は、既定の公開 MCP ツールではなく内部診断に留まります。

2. ブラウザオートメーションMCP(任意)

用途: Chromeブラウザ制御、Webページインタラクション。

設定

{
  "mcpServers": {
    "streamable-mcp-server": {
      "type": "streamable-http",
      "url": "http://127.0.0.1:12306/mcp"
    }
  }
}

検証

設定後、CLIを再起動してMCPサーバーの接続を確認:

# Zoteroの例:
> List my Zotero collections

ツールがデータ(例: コレクション)を返せば、セットアップは完了です。

トラブルシューティング

問題 解決方法
ツールがエラーを返す APIキーとライブラリIDが正しいか確認
PDF添付が失敗する UNPAYWALL_EMAILが設定されているか確認
削除操作がブロックされる UNSAFE_OPERATIONS=itemsまたはallを設定
HTTPエラー NO_PROXYにlocalhostが含まれているか確認
APIレート制限(429) 一度に10件以下の論文をバッチ処理し、バッチ間に遅延を追加