Skip to main content
Glama
bobbynoble

MCP Server Healthcare

by bobbynoble

MCP Server Healthcare

NHS臨床コーディングワークフロー向けのModel Context Protocol(MCP)サーバー — 臨床メモに対するICD-10-CM/OPCS-4/HCCコードの提案、SAR/FOI情報ガバナンスリクエストの追跡、DSARマッピングリポジトリリクエストの分類および臨床レビューを通じた処理、バッチコーディング、Cerner FHIR R4サンドボックスを介した患者データの読み書き。

任意のMCPクライアント(Claude Desktop、Claude Code、Copilot StudioのMCPコネクタなど)がこれらのツールを直接呼び出すことができます — REST APIレイヤーは不要です。

元々はbobbynoble/clinical-coding-botの一部として構築されました。このリポジトリはスタンドアロンのMCPサーバーであり、ラップするビジネスロジックの独自コピーを持つため、そのリポジトリへの依存関係はありません。

ツール

領域

ツール

臨床コーディング

suggest_clinical_codes

SAR/FOIトラッカー

list_sar_foi_requests、create_sar_foi_request、update_sar_foi_request、list_overdue_sar_foi_requests、list_sar_foi_requests_due_soon、get_sar_foi_stats、get_sar_foi_cerner_bundle

DSARマッピングリポジトリ

list_dsar_types、classify_dsar_type、list_dsar_requests、create_dsar_request、get_dsar_request、review_dsar_element、deliver_dsar_request

バッチコーディング

list_coding_batches、get_batch_episodes、get_batch_episode、get_batch_coding_stats、get_revenue_at_risk

Cerner FHIRサンドボックス

cerner_status、cerner_search_patients、cerner_get_patient、cerner_get_encounters、cerner_get_discharge_note、cerner_get_documents、cerner_post_condition、cerner_post_procedure、cerner_import_encounters_to_batch、cerner_writeback_episode

cerner_post_condition、cerner_post_procedure、cerner_writeback_episodeは、設定されているCerner環境に対して実際の書き込みを実行します(デフォルトでは非本番サンドボックス — app/fhir_cerner.pyを参照)。

Related MCP server: LangCare MCP FHIR Server

セットアップ

pip install -r requirements.txt
cp .env.example .env   # fill in Azure OpenAI / Search / Cerner credentials as needed

すべてのツールは設定された認証情報に関係なく読み込まれますが、suggest_clinical_codesにはAzure OpenAI + Azure AI Searchの設定が必要であり、cerner_*ツールにはCERNER_CLIENT_ID/CERNER_CLIENT_SECRETが必要です — 対応する認証情報なしで呼び出すと、サーバーがクラッシュするのではなく、明確なエラーで失敗します。

実行

Stdio(Claude Desktop、Claude Code、ほとんどのローカルMCPクライアント):

python -m MCP_Server_Healthcare

Claude Desktop設定の例(claude_desktop_config.json):

{
  "mcpServers": {
    "clinical-coding-bot": {
      "command": "python",
      "args": ["-m", "MCP_Server_Healthcare"],
      "cwd": "/absolute/path/to/mcp_server_healthcare"
    }
  }
}

Streamable HTTP(リモートアクセス、例:Copilot Studioやホスト型MCPクライアントから):

python -m MCP_Server_Healthcare --transport http --port 8010

HTTPトランスポートでは、.envにCODING_API_KEYを設定する必要があります — すべてのリクエストは一致するX-API-Keyヘッダーを保持する必要があり、そうでない場合は401で拒否されます(フェイルクローズ)。デフォルトでは127.0.0.1で待ち受けます。MCP_HOST=0.0.0.0を設定すると(TLS/リバースプロキシの背後に配置して)、localhostを超えて公開できます。

リポジトリ構成

MCP_Server_Healthcare/   the MCP server itself (server.py has the tool
                         definitions; __main__.py the stdio/http entry point;
                         auth.py the HTTP transport's API-key gate)
app/                     business logic each tool wraps — coder.py (RAG
                         coding), sar_foi.py, dsar.py, batch.py,
                         fhir_cerner.py. Each stores its state in a SQLite
                         file created alongside it on first run.

注記

  • ブロッキングネットワーク呼び出し(Azure OpenAI/Search、Cerner FHIR)はasyncio.to_threadでオフロードされるため、1つの遅い呼び出しが同じサーバー上の他のツール呼び出しを停滞させることはありません。

  • SQLiteファイル(app/sar_foi.db、app/batch.db、app/dsar.db)は初回実行時に自動的に作成され、gitignoreされています。

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    A clean-room SHARP-on-MCP compliant FHIR R4 MCP server that enables AI agents to interact with any FHIR R4 endpoint using SHARP context headers, without server-side OAuth. It provides clinical tools, lab results, imaging, and interactive MCP-UI dashboards.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI applications to query and retrieve healthcare data (patients, conditions, observations, medications) from a public FHIR R4 server via MCP tools.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    MCP server for FHIR interoperability, enabling natural language querying and manipulation of clinical data with full CRUD operations, semantic search, and RAG capabilities.
    13
    MIT