med-lit-mcp

med-lit-mcp

Enables searching medical literature, clinical trials, drug information, guidelines, and medical fee schedules directly from Claude, returning only original sources and text without medical judgment.

Category
Visit Server

README

med-lit-mcp

医療者の「調べもの」の時間を削るための MCP サーバです。PubMed・臨床試験・医薬品情報・診療ガイドライン・診療報酬マスターを、Claude から直接引けるようにします。

米国の調査では、医師は診療1時間あたり 1.5〜2時間 を事務と記録に費やしています。その一部が文献・添付文書・制度の確認です。このサーバはそこを狙っています。


このサーバがしないこと

本ソフトウェアは医療機器プログラム(SaMD)ではありません。 薬機法上の該当性は「寄与度(医学的判断への影響の大きさ)」と「リスク(誤作動時の危害)」で判断されます。本サーバは一次情報の所在を示すだけで医学的な判断を行わないため、非該当の範囲に留まります。

設計上、次のことはしません。

  • 診断名の提示・鑑別診断の列挙
  • 治療方針・薬剤選択・投与量の推奨
  • 検査値や画像からの所見判定
  • 抄録や添付文書の要約・言い換え(原文のまま返します)

返すのは 出典と原文だけ です。判断は医療者が行ってください。

この方針はコードで担保しています。src/med_lit_mcp/guard.py に禁止表現のパターンを置き、サーバが自ら生成する文(ツール説明・注記・エラーメッセージ)に判断を示唆する表現が混入していないことをテストで検査しています。

扱うデータ

患者の個人情報は一切扱いません。 外部へ送信するのは検索キーワードだけです。通信先は次の4ホストに限定され、それ以外への通信は例外を投げます(http.py の ALLOWED_HOSTS)。

ホスト 用途
eutils.ncbi.nlm.nih.gov PubMed(NCBI E-utilities)
clinicaltrials.gov ClinicalTrials.gov API v2
rest.kegg.jp KEGG DRUG(医薬品情報)
shinryohoshu.mhlw.go.jp 診療報酬情報提供サービス(マスター)

取得結果はローカルの SQLite にキャッシュされます(既定 ~/.cache/med-lit-mcp/)。診療報酬マスターを取り込めば、その検索はネットワークなしで動きます。

インストール

uvx --from git+https://github.com/fc0web/med-lit-mcp med-lit-mcp

または clone して:

git clone https://github.com/fc0web/med-lit-mcp
cd med-lit-mcp
uv sync
uv run med-lit-mcp

Claude Desktop / Claude Code への登録

claude_desktop_config.json(Claude Desktop)または .mcp.json(Claude Code)に追記します。

{
  "mcpServers": {
    "med-lit": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/fc0web/med-lit-mcp", "med-lit-mcp"],
      "env": {
        "NCBI_EMAIL": "you@example.com"
      }
    }
  }
}

Claude Code なら1行で登録できます。

claude mcp add med-lit -- uvx --from git+https://github.com/fc0web/med-lit-mcp med-lit-mcp

ツール

ツール 内容
search_pubmed 文献検索。著者・雑誌・年・研究デザイン(RCT / メタ解析 / システマティックレビュー等)で絞り込み
fetch_pubmed_abstract PMID から抄録の全文を取得。構造化抄録はセクションごとに保持
search_clinical_trials ClinicalTrials.gov 検索。疾患・介入・実施状況・相・国で絞り込み
find_guideline 診療ガイドライン探索。PubMed の guideline[pt] 絞り込み+Minds 検索URL
search_drug 一般名・商品名から医薬品検索(KEGG DRUG、日本薬局方収載品を含む)
fetch_drug_entry 医薬品の詳細(分類・標的・代謝・相互作用)
import_shinryo_master 診療報酬マスターの取り込み(初回のみ)
search_shinryo_hoshu 点数・薬価の検索(オフライン動作)
shinryo_master_status 取り込み済みマスターと収載日の確認

使用例

「オルフォルグリプロンの第3相試験を、2025年以降のRCTに絞って探して」
  → search_pubmed(term="orforglipron", year_from=2025, study_types=["rct"])

「初診料の点数を調べて」
  → import_shinryo_master(kind="shinryo")   # 初回のみ
  → search_shinryo_hoshu(term="初診料")

設定(環境変数)

変数 既定 説明
NCBI_API_KEY なし 設定すると NCBI のレート上限が 3→10 req/sec に上がります
NCBI_EMAIL なし NCBI が明示を推奨している連絡先。設定を推奨します
MED_LIT_CACHE 1 0 でキャッシュ無効
MED_LIT_TIMEOUT 30 HTTP タイムアウト(秒)
XDG_CACHE_HOME ~/.cache キャッシュの置き場所

APIキーは無くても動きます。レート制限は超過時に例外ではなく待機とリトライで処理します。

社内プロキシ・独自CAを使っている場合

MCP クライアントはサーバをサブプロセスとして起動する際、最小限の環境変数しか引き継ぎません。企業ネットワークで独自の認証局を使っている場合、TLS 検証に失敗することがあります。設定の env に明示してください。

"env": {
  "SSL_CERT_FILE": "/path/to/ca-bundle.crt",
  "REQUESTS_CA_BUNDLE": "/path/to/ca-bundle.crt",
  "HTTPS_PROXY": "http://proxy.example.jp:8080"
}

できないこと(正直に)

  • Mindsガイドラインライブラリの本文検索。Minds は検索結果をブラウザ側で描画しており、公開APIもありません。ヘッドレスブラウザで取りに行くことは技術的には可能ですが、仕様変更に弱く利用条件も明確でないため v0.1 では行わず、検索URLの提示に留めています。
  • PMDA 添付文書の本文取得。同じく公開APIがないため、KEGG を一次ソースとし、PMDA の検索URLを併記しています。添付文書の記載が正であり、実務では必ず PMDA で原文を確認してください。
  • 歯科・調剤マスター。v0.1 は医科診療行為・医薬品・特定器材の3種のみです。

開発

uv sync
uv run pytest              # 外部APIを叩かないテスト
uv run pytest -m live      # 実APIへの疎通テスト
uv run ruff check .

出典

ライセンス

MIT。

免責

本ソフトウェアは医療機器プログラムではありません。診断・治療の判断に用いるものではなく、出力の最終的な確認責任は利用者にあります。制度・点数・薬価・ガイドラインは改定されるため、実務では必ず一次情報で確認してください。

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured