mcpField
P
pubcrawl

pubcrawl

ローカル
github.com/nickjlambヘルスケア152 週間前に更新

pubcrawl について

PubCrawlは、検証可能な生物医学情報を必要とする臨床関係者、研究者、医療ライター向けのMCPサーバーです。文献・臨床試験の検索、米英の薬剤ラベルの取得と対応セクションの比較ができます。

主な機能

  1. 01PubMedとEurope PMCの検索
  2. 02論文の抄録とオープンアクセス全文の取得
  3. 03臨床試験の検索と詳細確認
  4. 04米国・英国の薬剤ラベルの取得
  5. 05ラベルの対応セクションの比較

活用シーン

  1. 01テーマに関する新しい論文やプレプリントの検索
  2. 02米英の薬剤ラベルに記載された適応症の比較
  3. 03疾患とフェーズで募集中の試験を検索
  4. 04試験の評価項目と適格基準の取得

MCP 対応

生物医学文献、米英の薬剤ラベル、ClinicalTrials.govを扱うツールをMCPクライアントに提供します。stdioとステートレスなStreamable HTTPトランスポートに対応しています。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"nickjlamb-pubcrawl": {
"command": "npx",
"args": [
"-y",
"@pharmatools/pubcrawl"
],
"env": {
"NCBI_API_KEY": "<NCBI_API_KEY>"
}
}
}
}
起動コマンドnpx -y @pharmatools/pubcrawl
設定が必要な環境変数
NCBI_API_KEYシークレットNCBI API key for higher rate limits (10 req/s vs 3 req/s). Optional — get one free at https://www.ncbi.nlm.nih.gov/account/

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

パッケージ
npm@pharmatools/pubcrawl2.6.4

ツール

14

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
sortenumいいえ並べ替え順relevance | date
querystringはいPubMed の検索クエリ
dateTostringいいえ終了日(YYYY/MM/DD)
dateFromstringいいえ開始日(YYYY/MM/DD)
maxResultsnumberいいえ結果の最大件数
articleTypestringいいえ論文タイプのフィルター(例:レビュー、臨床試験)

詳細

PubCrawl — AI アシスタント向けの PubMed、医薬品ラベル、臨床試験

AI アシスタントが PubMed、Europe PMC、FDA および UK の医薬品ラベル、ClinicalTrials.gov にアクセスできる MCP サーバーです。

文献、ラベル、試験をめぐる、査読済みのパブクロール。

ci npm downloads node MCP Registry Glama MCP server Listed on mcpservers.org DOI License: MIT PRs welcome

クイックスタート · ツール · 例 · アーキテクチャ · ロードマップ · コントリビューション


✨ PubCrawl とは?

PubCrawl は、AI アシスタント(Claude Desktop、Cursor、または MCP 対応のクライアント)を、臨床医や研究者が実際に利用する一次情報源に直接接続します。これにより、平易な英語で質問すると、PubMed、Europe PMC、FDA/UK の医薬品ラベル、ClinicalTrials.gov に基づく回答を得られます。回答には、検証可能な実際の PMID、NCT ID、DOI が含まれます。

各ツールは、公式 API を薄くラップした決定論的なものです。情報を捏造することはなく、すべての結果に情報源が明記されます。

他のどの MCP サーバーにもない機能

**「セマグルチドの米国と英国のラベルを比較して」**と尋ねると、PubCrawl は両方の最新ラベルを取得し、対応するセクションを対応付けます。たとえば、米国の Indications and Usage と英国の 4.1 Therapeutic indications などを比較できるため、違いを推測するのではなく、実際に確認できます。

MCP クライアントにセマグルチドの米国と英国のラベルの比較を依頼する例:PubCrawl は compare_labels を呼び出し、openFDA/DailyMed から米国の処方情報を、eMC から英国の SmPC を取得して、適応症の一覧を並べて返す。米国には心血管および腎リスク低減を含む3つの適応症がある一方、英国には適応症が1つだけで、心血管および腎アウトカムはセクション4.4、4.5、5.1への相互参照としてのみ記載されている。

米国の処方情報英国の SmPC
適応症血糖コントロール · 既存の CVD を有する T2D 患者の MACE リスク低減 · CKD を有する T2D 患者の 持続的な eGFR 低下、ESKD、CV 死亡リスクの低減血糖コントロールのみ — CV および腎アウトカムは §4.4/4.5/5.1 への相互参照として記載されているが、適応症としては記載されていない
禁忌MTC または MEN 2 の本人または家族歴 · 過敏症過敏症のみ

米国ではラベルに記載された心血管に関する主張が、英国では承認されていない適応症を推奨することになります。両市場向けに医療関連の文章を作成、レビュー、確認する場合、この差を把握することが肝心です。そして、この差を明らかにする MCP ツールは compare_labels だけです。

その他すべて
  • 🔬 文献、医薬品ラベリング、臨床試験にわたる 14 個のツール
  • 🧾 検証可能な設計 — 結果から DailyMed、eMC、PubMed、ClinicalTrials.gov にアクセスできます
  • 📰 Europe PMC 経由の プレプリント — 正式公開前の研究を見つけられます
  • 🆓 API キーは不要(任意の無料 NCBI キーを設定すると、PubMed のレート制限が緩和されます)
  • 🧪 完全に 型付けされ、テスト済みで、CI によるチェック済み — 文献検索は OpenGATE、ラベリングと臨床試験はリポジトリ内の 忠実度ベンチマーク によって、リリースごとに検証されます

PharmaTools.AI が開発しています。


🚀 クイックスタート(60 秒)

1. クライアントの設定に PubCrawl を追加します — インストールは不要です。初回実行時に npx が取得します。

Claude Desktop の場合は、claude_desktop_config.json を編集します。

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "pubcrawl": {
      "command": "npx",
      "args": ["-y", "@pharmatools/pubcrawl"]
    }
  }
}

2. クライアントを再起動します。 PubCrawl が + → コネクター に表示されます。

3. 質問してみましょう:

「アトルバスタチンの米国と英国のラベリングを比較し、最近の第 3 相試験を探してください。」

これで完了です。→ その他の例 · API キーとその他のオプション


🧰 ツール

📚 文献
ツール機能
search_pubmed日付範囲、論文の種類、並べ替え順で絞り込んで PubMed を検索します。PMID、タイトル、著者、ジャーナル、DOI を返します。
search_europepmcPubMed より広範なコーパスを持つ Europe PMC を検索します。プレプリント(bioRxiv、medRxiv)や特許も収録されています。各結果には、抄録の抜粋、被引用数、オープンアクセスの状況、プレプリントかどうかが含まれます。プレプリントのみ、またはオープンアクセスのみで絞り込めます。
get_abstract論文の構造化抄録全文を取得します。背景、方法、結果、結論などのラベル付きセクションに分割され、キーワードと MeSH 用語も含まれます。
get_full_textPubMed Central のオープンアクセス論文の全文を取得します。解析済みのセクション、図表のキャプション、参考文献数が含まれます。
find_relatedPubMed の類似文献検索アルゴリズムを使用して、関連する論文を関連度スコア順に検索します。
format_citationAPA、Vancouver、Harvard、BibTeX 形式の引用を生成します。
trending_papersトピックに関する最近の論文を検索します。必要に応じて、影響力の高いジャーナル(Nature、Science、Cell、NEJM、Lancet、JAMA など)に絞り込めます。
💊 医薬品ラベリング
ツール機能
resolve_drug_name医薬品のブランド名を一般名に(または一般名を米国でのブランド名に)変換し、薬効分類と一般的な適応症も提示します。RxNorm/openFDA を使用する決定論的な処理で、AI は使用しません。
get_uspiopenFDA 経由で米国の処方情報の各セクションを取得します(出典は DailyMed)。適応症、用法・用量、警告、禁忌などが含まれます。
get_smpceMC から英国の製品特性概要を取得します。番号付きの SmPC セクションを含む、米国の処方情報に相当する英国の情報です。
compare_labels同じ医薬品の米国(USPI)と英国(SmPC)のラベリングを並べて比較し、対応するセクションを組み合わせます(米国の適応症 ↔ 英国の 4.1 など)。片方の情報がない場合は必ずその理由を説明し、途中で切り詰められたセクションには truncated のフラグを付けます。また、us_drug / uk_drug で市場ごとに異なる名称(Farxiga / Forxiga)を指定できます。
search_by_indication医学的状態に対して承認された医薬品を検索します。openFDA 経由で FDA のラベリングを検索し、eMC で英国での入手可能性を照合します。
🧫 臨床試験
ツール機能
search_trialsClinicalTrials.gov で臨床試験を検索します。病状、介入、募集状況、フェーズで絞り込めます。NCT ID、スポンサー、登録者数、リンクを返します。
get_trialNCT ID を指定して、臨床試験の詳細を取得します。参加資格基準、試験デザイン、群、主要・副次評価項目、実施施設、関連する PubMed ID が含まれます。

💬 例

接続したら、自然な言葉で質問するだけです。

文献

  • 「セマグルチドに関する最近の臨床試験をPubMedで検索してください。」
  • 「GLP-1受容体作動薬に関するプレプリントをEurope PMCで検索し、被引用数の多い順に並べてください。」
  • 「PMID 38127654の抄録を取得してから、関連論文を探し、すべてバンクーバー方式で引用してください。」
  • 「今月、CRISPR遺伝子治療に関する注目の論文は何ですか? 影響力の大きいジャーナルに限ってください。」
  • 「そのPMC論文の全文を取得して、方法のセクションを要約してください。」

医薬品のラベル情報

  • 「メトホルミンのFDA処方情報から、適応症と警告だけを取得してください。」
  • 「アトルバスタチンの英国SmPCを取得してください。」
  • 「リシノプリルの米国と英国のラベル情報を比較して、違いを強調してください。」
  • 「Ozempicの一般名と薬効分類は何ですか?」
  • 「米国と英国の両方で2型糖尿病に承認されている薬は何ですか?」

臨床試験

  • 「乳がんに対するペムブロリズマブの、参加者を募集している第3相試験を探してください。」
  • 「NCT03086486の適格基準と主要評価項目を取得してください。」

複数の情報源を横断(PubCrawlの得意分野)

  • 「セマグルチドについて、米国のラベルに記載された心血管系の適応症を要約し、続いて主要な試験とそのNEJM掲載論文を探してください。」

🏗 アーキテクチャ

3つのレイヤーで構成されています。ツールがMCPインターフェースを登録し、libクライアントが各外部APIと通信し、共有のキャッシュとパーサーが高速かつ一貫した処理を実現します。

PubCrawlのアーキテクチャ:MCPクライアントはstdioまたはstreamable HTTP経由でPubCrawlサーバーに接続し、その14個のツールは文献、医薬品のラベル情報、臨床試験の3つに分類されています。各グループは共有LRUキャッシュ、XML/JATS/SPLパーサー、レート制限の仕組みを介して、NCBI E-utilities、Europe PMC、openFDA、DailyMed、英国eMC、ClinicalTrials.govの公式APIを直接呼び出します。各結果にはPMID、NCT、DOIのいずれかの識別子が付与されます。この経路にモデルは介在せず、何も捏造されません。

各ツールファイルは、zodスキーマと非同期ハンドラーを備えたregister*Tool(server)関数をエクスポートします。すべてのネットワーク呼び出しには、レート制限、キャッシュ、時間制限が適用されます。アーキテクチャの詳細についてはCLAUDE.mdを、ツールの追加方法についてはCONTRIBUTING.mdを参照してください。


🔧 設定

インストール方法
# Zero-install (recommended): npx fetches it on demand — see Quick start above.

# Or install globally:
npm install -g @pharmatools/pubcrawl

# Config for a global install:
#   { "mcpServers": { "pubcrawl": { "command": "pubcrawl" } } }
NCBI APIキー(任意)

キーがない場合、PubMedへのリクエストは1秒あたり3件に制限されます。無料のキーを使うと、1秒あたり10件まで増やせます。

  1. https://www.ncbi.nlm.nih.gov/account/で無料のNCBIアカウントを作成します
  2. Account Settings → API Key Management → create a keyを選択します
  3. キーを設定に追加します。
{
  "mcpServers": {
    "pubcrawl": {
      "command": "npx",
      "args": ["-y", "@pharmatools/pubcrawl"],
      "env": { "NCBI_API_KEY": "your_key_here" }
    }
  }
}
HTTPトランスポート

PubCrawlには、ブラウザベースおよびホスト型のクライアント向けに、ステートレスなStreamable HTTPトランスポートも付属しています。

npm run start:http   # serves POST /mcp and GET /health on PORT (default 3000)

🗺 ロードマップ

今後の予定の概要です。全項目についてはROADMAP.mdを参照してください。

  • get_europepmc_fulltext — search_europepmcで見つかったプレプリントとOA論文を読む
  • get_adverse_events — openFDA FAERSの有害事象を検索する
  • 米国と英国のcompare_labelsを補完するEMA / EPARのラベル情報
  • PubMed検索の精度を高めるMeSHクエリーヘルパー
  • 一般的なレビューのワークフロー向けMCP リソースとプロンプト

アイデアを歓迎します。課題を作成してください。


🛠 開発

git clone https://github.com/nickjlamb/pubcrawl.git
cd pubcrawl
npm install

npm run dev      # TypeScript watch mode
npm run build    # compile to dist/
npm start        # run the stdio server
npm test         # Vitest unit suite
npm run lint     # ESLint

ユニットテストはtests/にあり、フィクスチャのペイロードを使って、解析、キャッシュ、引用、フォーマット、ラベルのペアリングのロジックを検証します(ネットワーク呼び出しはありません)。CIでは、プッシュやプルリクエストのたびにlint → test → buildを実行します。コードベースに初めて取り組む方は、まずCONTRIBUTING.mdをご覧ください。

忠実性の測定
npm run bench            # labelling + trials fidelity benchmark against the live sources
npm run bench -- --ci    # what the release gate runs: exit 1 if a verified case fails

各リリース時と毎週、2つのゲートを実行します。OpenGATE の検索スコアラーは、PubMed と Europe PMC のレコードを人手で検証したアンカーと照合します。リポジトリ内の 忠実性ベンチマーク では、医薬品のラベル表示と臨床試験について同様の検証を行います。compare_labels は、米国/英国のアンカーのゴールドセット(ある側にはフレーズが含まれ、もう一方には含まれてはならないため、実際の相違がならされることなく明らかになります)に加え、openFDA の生レコードと eMC のページを再取得し、返された各文がソースの部分文字列であることを確認する逐語チェックに照らして評価されます。どちらのゲートでも、LLM による判定は一切使用しません。


📦 リリースと変更履歴

バージョンにはセマンティックバージョニングを採用しています。全履歴は変更履歴、リリースノートとアセットはリリースをご覧ください。

🤝 貢献

バグ報告、新しいデータソース、新しいツールなどの貢献を歓迎します。まず貢献ガイドをお読みいただき、イシューまたはプルリクエストを作成してください。

📚 引用

PubCrawl が公開する研究に役立った場合は、引用をお願いします。詳しくはCITATION.cffをご覧ください。または、次の形式で引用してください。

@software{lamb_pubcrawl,
  author    = {Lamb, Nick},
  title     = {PubCrawl: verifiable biomedical literature, drug labelling and clinical trials for AI assistants},
  year      = {2026},
  publisher = {Zenodo},
  doi       = {10.5281/zenodo.22101559},
  url       = {https://doi.org/10.5281/zenodo.22101559}
}

📄 ライセンス

MIT © PharmaTools.AI

データ提供元:NCBI E-utilities、Europe PMC、openFDA、DailyMed、英国 eMC、ClinicalTrials.gov。PubCrawl はこれらの提供元とは提携していません。

コメント

MCP は初めてですか?

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

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