Skip to main content
Glama
bobbynoble

MCP Server Healthcare

by bobbynoble

MCP Server Healthcare

Ein Model Context Protocol (MCP)-Server für einen klinischen Kodierungs-Workflow im NHS – Vorschlagen von ICD-10-CM/OPCS-4/HCC-Codes für eine klinische Notiz, Verfolgen von SAR/FOI-Information-Governance-Anfragen, Ausführen von DSAR-Mapping-Repository-Anfragen durch Klassifizierung und klinische Überprüfung, Batch-Kodierung und Lesen/Schreiben von Patientendaten über eine Cerner-FHIR-R4-Sandbox.

Jeder MCP-Client (Claude Desktop, Claude Code, Copilot Studios MCP-Connector usw.) kann diese Tools direkt aufrufen – keine REST-API-Schicht erforderlich.

Ursprünglich als Teil von bobbynoble/clinical-coding-bot erstellt; dieses Repo ist der eigenständige MCP-Server mit einer eigenen Kopie der Geschäftslogik, die er kapselt, sodass er keine Abhängigkeit von diesem Repo hat.

Werkzeuge

Bereich

Werkzeuge

Klinische Kodierung

suggest_clinical_codes

SAR/FOI-Tracker

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-Mapping-Repository

list_dsar_types, classify_dsar_type, list_dsar_requests, create_dsar_request, get_dsar_request, review_dsar_element, deliver_dsar_request

Batch-Kodierung

list_coding_batches, get_batch_episodes, get_batch_episode, get_batch_coding_stats, get_revenue_at_risk

Cerner-FHIR-Sandbox

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 und cerner_writeback_episode führen echte Schreibvorgänge gegen die konfigurierte Cerner-Umgebung aus (standardmäßig eine Nicht-Produktions-Sandbox – siehe app/fhir_cerner.py).

Related MCP server: LangCare MCP FHIR Server

Einrichtung

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

Jedes Tool wird unabhängig davon geladen, welche Anmeldeinformationen gesetzt sind, aber suggest_clinical_codes benötigt Azure OpenAI + Azure AI Search, und die cerner_*-Tools benötigen CERNER_CLIENT_ID/CERNER_CLIENT_SECRET – der Aufruf ohne die passenden Anmeldeinformationen schlägt mit einer klaren Fehlermeldung fehl, anstatt den Server zum Absturz zu bringen.

Ausführen

Stdio (Claude Desktop, Claude Code, die meisten lokalen MCP-Clients):

python -m MCP_Server_Healthcare

Beispiel für die Claude-Desktop-Konfiguration (claude_desktop_config.json):

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

Streamable HTTP (Fernzugriff, z. B. von Copilot Studio oder einem gehosteten MCP-Client):

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

Der HTTP-Transport erfordert, dass CODING_API_KEY in .env gesetzt ist – jede Anfrage muss einen passenden X-API-Key-Header enthalten, sonst wird sie mit 401 abgelehnt (Fail-Closed). Standardmäßig lauscht er auf 127.0.0.1; setzen Sie MCP_HOST=0.0.0.0 (und platzieren Sie ihn hinter TLS/einem Reverse-Proxy), um ihn über localhost hinaus verfügbar zu machen.

Repository-Struktur

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.

Hinweise

  • Blockierende Netzwerkaufrufe (Azure OpenAI/Search, Cerner FHIR) werden mit asyncio.to_thread ausgelagert, sodass ein langsamer Aufruf andere Tool-Aufrufe auf demselben Server nicht blockiert.

  • SQLite-Dateien (app/sar_foi.db, app/batch.db, app/dsar.db) werden beim ersten Start automatisch erstellt und sind gitignored.

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