PubMed MCP Server について
PubMed MCP Server は、MCP クライアントから PubMed の論文を検索し、抄録を取得できるサーバーです。BioPython Entrez を使い、検索を非同期で実行します。
主な機能
- 01クエリによる PubMed 検索
- 02論文抄録の取得
- 03非同期検索の実行
活用シーン
- 01研究テーマに関する論文の検索
- 02検索結果の抄録取得
MCP 対応
MCP クライアントに `search_pubmed` ツールを公開します。クエリと取得件数の上限を指定できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
PubMed MCP サーバー
このリポジトリには、BioPython の Entrez モジュールを使用して PubMed から論文の抄録を検索する MCP サーバーが含まれています。FastMCP フレームワークを活用し、PubMed の非同期検索機能を提供します。
機能
- PubMed の検索: 検索語に基づいて論文を検索します。
- 抄録の取得: PubMed から取得した論文の抄録を取得します。
- 非同期処理: 非同期実行(
asyncio.to_thread経由)を使用し、サーバーの処理をブロックしないようにします。
前提条件
- Python 3.8 以降
- mcp[cli]
- BioPython
セットアップ
-
リポジトリのクローン:
git clone PubMed-MCP-Server.git cd PubMed-MCP-Server -
依存関係のインストール:
uv を使用して必要なパッケージをインストールできます。
uv add -r requirements.txt -
Entrez のメールアドレスの設定:
コード(
main.py内)に有効なメールアドレスを設定してください。Entrez.email = "give an email address"
サーバーの実行
次のコマンドを実行して PubMed MCP サーバーを起動します。
uv run main.py
このコマンドは、uv コマンドラインツールを使用してサーバーを起動します(設定で指定されているとおりです)。
MCP クライアントの設定
MCP クライアントから PubMed MCP サーバーに接続できるようにするには、次のように config.json ファイルを作成または更新します。
{
"mcpServers": {
"pubmed": {
"command": "C:/Users/codingaslu/.local/bin/uv",
"args": [
"--directory",
"C:/Users/codingaslu/OneDrive/Desktop/pubmed-mcp-server",
"run",
"main.py"
]
}
}
}
設定の説明
-
command:
MCP サーバーの実行に使用するコマンドラインツール(この場合はuv)のフルパスです。 -
args:
--directory:サーバーが配置されている作業ディレクトリを指定します。"C:/Users/aiany/OneDrive/Desktop/YT Video/pubmed-mcp-server":サーバーのルートディレクトリへのパスです。"run"と"main.py":PubMed MCP サーバーを起動するコマンドとエントリーポイントです。
使い方
サーバーを起動し、MCP クライアントを設定すると、次のツールを使用できます。
- ツール:
search_pubmed - パラメーター:
query:PubMed の検索語です(デフォルトは"endocarditis"です)。max_results:取得する論文の最大数です(デフォルトは10です)。
使用例:
search_pubmed(query="endocarditis", max_results=10)
論文の抄録を改行で区切った文字列が返されます。
ライセンス
このプロジェクトは MIT License の下でライセンスされています。
必要に応じて、使用する環境に合わせてパスや詳細を調整できます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。