Skip to main content
Glama
bobbynoble

MCP Server Healthcare

by bobbynoble

MCP Server Healthcare

Un servidor de Model Context Protocol (MCP) para un flujo de trabajo de codificación clínica del NHS: sugerir códigos ICD-10-CM/OPCS-4/HCC para una nota clínica, realizar un seguimiento de las solicitudes de gobernanza de la información SAR/FOI, ejecutar solicitudes del repositorio de mapeo DSAR a través de clasificación y revisión clínica, codificación por lotes y lectura/escritura de datos de pacientes a través de un sandbox de Cerner FHIR R4.

Cualquier cliente MCP (Claude Desktop, Claude Code, el conector MCP de Copilot Studio, etc.) puede llamar a estas herramientas directamente: no se requiere una capa de API REST.

Originalmente construido como parte de bobbynoble/clinical-coding-bot; este repositorio es el servidor MCP independiente, con su propia copia de la lógica de negocio que envuelve, por lo que no tiene dependencia de ese repositorio.

Herramientas

Área

Herramientas

Codificación clínica

suggest_clinical_codes

Seguimiento de 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

Repositorio de mapeo DSAR

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

Codificación por lotes

list_coding_batches, get_batch_episodes, get_batch_episode, get_batch_coding_stats, get_revenue_at_risk

Sandbox de 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 y cerner_writeback_episode realizan escrituras reales contra el entorno de Cerner que esté configurado (un sandbox de no producción por defecto; consulte app/fhir_cerner.py).

Related MCP server: LangCare MCP FHIR Server

Configuración

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

Cada herramienta se carga independientemente de qué credenciales estén configuradas, pero suggest_clinical_codes necesita Azure OpenAI + Azure AI Search configurados, y las herramientas cerner_* necesitan CERNER_CLIENT_ID/CERNER_CLIENT_SECRET; llamar a una sin las credenciales correspondientes falla con un error claro en lugar de bloquear el servidor.

Ejecución

Stdio (Claude Desktop, Claude Code, la mayoría de los clientes MCP locales):

python -m MCP_Server_Healthcare

Ejemplo de configuración de Claude Desktop (claude_desktop_config.json):

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

HTTP transmisible (acceso remoto, p. ej., desde Copilot Studio o un cliente MCP alojado):

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

El transporte HTTP requiere que CODING_API_KEY esté configurada en .env; cada solicitud debe llevar un encabezado X-API-Key correspondiente, o se rechaza con 401 (falla cerrada). Escucha en 127.0.0.1 por defecto; establezca MCP_HOST=0.0.0.0 (y colóquelo detrás de TLS/un proxy inverso) para exponerlo más allá de localhost.

Estructura del repositorio

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.

Notas

  • Las llamadas de red bloqueantes (Azure OpenAI/Search, Cerner FHIR) se descargan con asyncio.to_thread para que una llamada lenta no detenga otras llamadas de herramientas en el mismo servidor.

  • Los archivos SQLite (app/sar_foi.db, app/batch.db, app/dsar.db) se crean automáticamente en la primera ejecución y están en 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