mcpField
E
endnote-mcp

endnote-mcp

ローカル
github.com/gokmengokhan科学・教育565 日前に更新

endnote-mcp について

endnote-mcpは、研究者や執筆者向けにEndNoteの文献ライブラリをClaude Desktopへ接続します。文献とPDFをローカルでインデックス化し、検索、引用形式の作成、文献目録の生成、任意のセマンティック検索に対応します。

主な機能

  1. 01文献メタデータとPDF本文の検索
  2. 02意味的な類似性による論文検索
  3. 03PDF添付ファイルの指定ページを読む
  4. 04引用と文献目録の書式設定
  5. 05文献をBibTeXとしてエクスポート
  6. 06ローカルライブラリの差分インデックス作成

活用シーン

  1. 01文献レコードとPDFを横断して論文を検索
  2. 02研究執筆中に関連ページを読む
  3. 03原稿の引用や文献目録を整える
  4. 04選択した文献をLaTeX用にエクスポート

MCP 対応

MCPサーバーは、インデックス化したEndNoteライブラリの検索、PDFの読み取り、引用形式の作成、文献のエクスポートを行う12個のツールを提供します。Claude DesktopはMCP経由で接続し、文献データはローカルでインデックス化されます。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"gokmengokhan-endnote": {
"command": "uvx",
"args": [
"endnote-mcp"
]
}
}
}
起動コマンドuvx endnote-mcp

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

パッケージ
pypiendnote-mcp1.4.15

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

EndNote MCP

Tests PyPI Python License

EndNote の参考文献ライブラリを Claude AI に接続できます。Claude Desktop の会話から、参考文献の検索、PDF の閲覧、引用の書式設定、関連論文の検索、参考文献一覧の生成をすべて直接行えます。

できること

セットアップすると、Claude に次のような質問ができます。

  • 「ライブラリから social capital と Bourdieu を検索して」
  • 「組織が不確実性にどのように対処するかについての論文を探して」(セマンティック検索)
  • 「論文 #3844 に関連する参考文献を探して」
  • 「参考文献 #1234 の APA 形式の引用を教えて」
  • 「参考文献 12、45、78、102 の参考文献一覧を作成して」
  • 「参考文献 12、45、78 を BibTeX としてエクスポートして」
  • 「その Smith et al. の論文の 5~7 ページを読んで」

Claude が検索するのはローカルのライブラリです。通常の会話の範囲を超えて、データがクラウドにアップロードされることはありません。

仕組み

EndNote Library → XML Export → endnote-mcp index → SQLite Database (FTS5 + Embeddings)
                                                          ↕
                                   Claude Desktop ← MCP Server (12 tools)

参考文献と PDF のテキストは、全文検索機能を備えたローカルの SQLite データベースにインデックス化されます。オプションで AI の埋め込みを利用すると、キーワードだけでなく意味に基づいて論文を見つけるセマンティック検索が可能になります。セマンティック検索の依存関係がインストールされている場合、インデックス作成時に新しい参考文献が自動的に埋め込まれます。Claude は Model Context Protocol (MCP) を介して接続します。

必要条件

  • EndNote 20 以降(すべてのエディション)
  • Claude Desktop アプリ

以下のバンドルインストーラーには、ほかに必要なものはありません。Python と依存関係は Claude Desktop が管理します。CLI でインストールする場合は、Python 3.10 以降と uv(または pip)も必要です。

インストール(デスクトップバンドル — 推奨)

技術者以外の方向けの最も簡単なインストール方法です。Python もターミナルも必要ありません。

  1. EndNote からライブラリをエクスポートします。 「File → Export」を選択し、形式として XML を選んで、デスクトップなどに保存します。
  2. 最新リリースから endnote-mcp.mcpb をダウンロードします。
  3. .mcpb ファイルをダブルクリックします(または Claude Desktop で「Settings → Extensions → Install Extension…」を選択します)。
  4. インストールダイアログで、Claude Desktop に次の場所を指定します。
    • 手順 1 で作成した EndNote XML ファイル
    • PDF Attachments Folder — 通常は .enl ファイルと同じ場所にある <library>.Data/PDF/、または .enlp パッケージ内の PDF/
  5. 「Install」をクリックします。Claude Desktop がライブラリのインデックス作成を自動的に開始します。メタデータは数秒で検索可能になり、PDF のテキストとセマンティック埋め込みはバックグラウンドで処理されます。

これで完了です。Claude に*「ライブラリから grounded theory を検索して」*と頼んでみてください。

このバンドルは独自の設定(config-mcpb.yaml)を使用するため、インストールしても既存の CLI の設定には影響しません。どちらも同じデータベースをデフォルトで使用するため、すでに CLI でインデックスを作成済みの場合、バンドルは別のコピーを作成せず、そのインデックスを再利用します。

バンドルを自分でビルドする

メンテナー(またはソースコードを使用する方)は、次のコマンドでビルドできます。

bash scripts/build_mcpb.sh
# → dist/endnote-mcp.mcpb

ビルドされるのは、クロスプラットフォーム対応の単一の .mcpb ファイル(約 36 KB)です。依存関係は、Claude Desktop に同梱されている uv ランタイムを介してインストール時に解決されます。

この形式は以前 DXT と呼ばれ、.dxt 拡張子を使用していましたが、上流で MCPB(MCP Bundles)に名称変更されました。modelcontextprotocol/mcpb を参照してください。

インストール(CLI/PyPI から)

ターミナルを使いますか?この方法では、インデックス作成と埋め込みに使用できる endnote-mcp CLI を利用できます。

1. インストール
# With uv (recommended)
uv tool install endnote-mcp

# Or with pip
pip install endnote-mcp
2. EndNote からライブラリをエクスポートする

EndNote で、File → Export を選択し、形式として XML を選んで、デスクトップなどの使いやすい場所に保存します。

3. セットアップウィザードを実行する
endnote-mcp setup

ウィザードでは、次の操作を行います。

  • XML エクスポートと PDF ディレクトリを自動検出します
  • 設定を作成します
  • ライブラリをインデックス化します
  • Claude Desktop を自動的に設定します
4. Claude Desktop を再起動する

Claude Desktop を終了して、再度開きます。MCP コネクターに「EndNote Library」が表示されます。

Claude Code プラグインとエージェントスキル

このリポジトリには、ライブラリの操作方法をエージェントに教えるスキル endnote-library が含まれています。ツールが返したレコードのみを引用すること、PDF 上の位置ではなく印刷されたページからページ番号を取得すること、引用文を一語一句確認すること、草稿の参考文献を1件ずつ検証することを教えます。

Claude Code。 まず CLI をインストールしてライブラリをインデックス化し(上記の手順1~3)、次を実行します。

/plugin install endnote --marketplace gokmengokhan/endnote-mcp

2.1.275 より前の Claude Code では、/plugin marketplace add gokmengokhan/endnote-mcp を実行してから、/plugin install endnote@endnote-mcp を実行します。このプラグインはスキルを追加し、endnote-mcp serve でサーバーを起動するため、このコマンドを PATH に含める必要があります。同じコマンドで claude mcp add を実行してサーバーをすでに追加している場合、Claude Code は一度だけ接続します。別のコマンドやパスを使っている場合は、ツールの重複を避けるため、claude mcp remove endnote で削除してください。

Claude Desktop。 plugin/skills/endnote-library/ フォルダーを ZIP に圧縮し、Customize > Skills からアップロードします。

その他のエージェント。 Agent Skills(SKILL.md フォルダー)を読み取るエージェントでも同じスキルを使用できます。plugin/skills/endnote-library/ をエージェントのスキルディレクトリにコピーしてください。

セマンティック検索(任意)

クエリと異なる用語が使われていても、関連する参考文献を見つける意味ベースの検索を有効にします。たとえば、「不確実な将来に企業がどう備えるか」を検索すると、シナリオプランニングや戦略的先見に関する論文が見つかります。

# Install semantic search dependencies
pip install endnote-mcp[semantic]

# Generate embeddings (~3 min for 4,000 references)
endnote-mcp embed

軽量な all-MiniLM-L6-v2 モデルをローカルで使用します。API キーは不要で、すべてのデータはお使いのマシン内に保持されます。

コマンド

コマンド説明
endnote-mcp setup対話形式のセットアップウィザード
endnote-mcp index新しい参考文献を追加した後にインデックスを再作成します(増分)
endnote-mcp index --full最初からインデックスをすべて再作成します
endnote-mcp index --skip-pdfsメタデータのみをインデックス化します(高速、約1秒)
endnote-mcp index --embedインデックスを再作成し、埋め込みを生成します
endnote-mcp embedセマンティック検索用の埋め込みを生成します
endnote-mcp embed --fullすべての埋め込みを最初から再生成します
endnote-mcp statusインデックスの統計情報を表示します
endnote-mcp installClaude Desktop の設定に追加します
endnote-mcp serveMCP サーバーを起動します(Claude Desktop が自動的に使用)

Claude で利用できるツール

ツール説明
search_references著者、タイトル、年、キーワード、要旨で検索します(BM25 順位付け、DOI リンク付き)
search_fulltextPDF の内容を検索し、概念、引用、手法を見つけます
search_library1回の呼び出しでメタデータと PDF をまとめて検索します
search_semanticAI 埋め込みを使用して意味で検索します(endnote-mcp[semantic] が必要)
get_reference_details参考文献の完全なメタデータ(要旨、キーワード、DOI など)を取得します
get_citationAPA 第7版、Harvard、Vancouver、Chicago、IEEE 形式に変換します
get_bibtexLaTeX 用の BibTeX エントリーとして参考文献をエクスポートします
get_bibliography複数の参考文献を整形した参考文献一覧を生成します
find_related類似する参考文献を検索します(利用可能な場合は埋め込みを使用)
read_pdf_sectionPDF 添付ファイルの特定ページを読み取ります
list_references_by_topicトピックに基づいて広く参考文献を一覧表示します
rebuild_indexEndNote ライブラリを更新した後にインデックスを再作成します

新しい参考文献の追加

EndNote ライブラリに新しい参考文献を追加した場合:

  1. EndNote からXML を再エクスポートします(同じファイルを上書きします)。
  2. 次のいずれかを実行します。
    • ターミナルから endnote-mcp index を実行する、または
    • Claude に「ライブラリのインデックスを再構築して」と依頼する

インデックス作成は増分処理です。ライブラリ全体を再処理するのではなく、新しい参考文献と PDF のみを処理します。セマンティック検索がインストールされている場合、新しい参考文献は自動的に埋め込み表現に変換されます。

パフォーマンス

操作所要時間(参考文献 4,000 件の場合)
メタデータのインデックス作成約 1 秒
PDF の抽出(初回)PDF 100 件あたり約 1 分
PDF の抽出(増分処理)新しい PDF のみ
埋め込み表現の生成約 3 分
キーワード検索50 ミリ秒未満
セマンティック検索200 ミリ秒未満

設定

設定は次の場所に保存されます。

  • macOS:~/Library/Application Support/endnote-mcp/config.yaml
  • Windows:%APPDATA%/endnote-mcp/config.yaml
  • Linux:~/.config/endnote-mcp/config.yaml
endnote_xml: /path/to/your/library.xml
pdf_dir: /path/to/your/Library.Data/PDF
db_path: /path/to/library.db    # auto-set by setup
max_pdf_pages: 30                # max pages per read request
search_notes: false              # include the EndNote Notes field in searches
Notes フィールド

EndNote のResearch Notes(独自の要約や評価を記録するフィールド)は、デフォルトでインデックス作成と検索の対象になり、キーワードの直下、抄録の上位にランク付けされます。

通常のNotesフィールドもインデックス作成の対象ですが、一致判定からは除外されます。これは、文献管理ソフトがインポート時に、著者の所属、メールアドレス、シソーラス用語などをこのフィールドに格納するためです。search_notes: true を設定すると、検索対象に含められます。この設定はすぐに反映され、再インデックスは不要です。

引用スタイル

組み込みスタイルは 5 種類です。

  • APA 第 7 版 — get_citation(rec_number=42, style="apa7")
  • Harvard — style="harvard"
  • Vancouver — style="vancouver"
  • Chicago(著者・日付方式、第 17 版)— style="chicago"
  • IEEE — style="ieee"

get_bibliography を使うと、複数の参考文献をまとめて書式設定し、著者名または年で並べ替えられます。

BibTeX エクスポート

LaTeX で使用する参考文献を BibTeX エントリーとしてエクスポートします。

  • Claude に「参考文献 42 と 100 を BibTeX としてエクスポートして」と依頼する
  • または、カンマ区切りのレコード番号を指定して get_bibtex ツールを直接使用する

適切なエントリータイプ(@article、@book、@inproceedings など)、引用キー、利用可能なすべてのフィールドを含む完全なエントリーが生成されます。

トラブルシューティング

「No configuration found」 — endnote-mcp setup を実行します。

「XML file not found」 — EndNote から再エクスポートします:File → Export → XML format

「PDF not found」 — 設定の pdf_dir が正しい .Data/PDF ディレクトリを指していることを確認します。

検索結果がない — endnote-mcp index を実行してデータベースを再構築します。

Claude Desktop にツールが表示されない — endnote-mcp install を実行してから、Claude Desktop を再起動します。

「Semantic search is not available」 — pip install endnote-mcp[semantic] を実行し、その後 endnote-mcp embed を実行します。

クライアントに「failed to connect」または CONNECTION_CLOSED と表示される — クライアントは内部エラーを隠しています。echo '' | endnote-mcp serve を実行すると、実際のトレースバックを確認できます(その後に表示される JSON デコードエラーは空の入力によるもので、障害ではありません)。

リリース

公開処理はタグのプッシュ時に .github/workflows/release.yml から実行され、OIDC を使って PyPI と MCP Registry にアップロードします。API トークンはリポジトリに保存されません。

バージョンは 7 か所に記載されており、公開済みの PyPI リリースと完全に一致しない server.json はレジストリに拒否されます。すべての箇所のバージョンを更新し、タグを付ける前に確認してください。

# pyproject.toml, server.json (x2), CITATION.cff, the README citation
# block, mcpb/manifest.json and mcpb/pyproject.toml
python scripts/check_version.py v1.4.12

git commit -am "Bump version to 1.4.12"
git tag v1.4.12 && git push origin main --tags

このソフトウェアの引用

このツールを研究で使用する場合は、次のように引用してください。

Gokmen, G. (2026). EndNote MCP: Connecting EndNote Reference Libraries to Claude AI (Version 1.4.15) [Computer software]. https://doi.org/10.5281/zenodo.18617546

または、GitHub の「Cite this repository」ボタンを使って BibTeX/APA 形式で引用してください。

ライセンス

AGPL-3.0 — 無料で使用、改変、配布できます。詳細は LICENSE を参照してください。

コメント

MCP は初めてですか?

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

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