Un servidor MCP para Google Cloud Healthcare API (FHIR)
Un servidor MCP (Model Context Protocol) que proporciona herramientas sanitarias para interactuar con recursos FHIR en Google Cloud Healthcare API y APIs públicas de investigación médica como pubmed, utilizando clientes MCP como Claude y Goose.
Se trata de una versión ligeramente modificada del servidor MCP AgentCare para HCE. https://github.com/Kartha-AI/agentcare-mcp
La diferencia principal es que este repositorio se comunica con las APIs FHIR de Google Cloud Healthcare a través de una pasarela SmartonFHIR protegida por Firebase Auth.
Arquitectura
Demo
- Claude: demo/claude-demo.mp4
- Ganso: demo/ganso-demo.mp4
Capturas de pantalla
Herramientas
Herramientas FHIR
find_patient
- Búsqueda de un paciente por nombre, fecha de nacimiento u otros identificadoresget_patient_observations
- Recuperar observaciones/señales vitales del pacienteget_patient_conditions
- Obtener las condiciones activas del pacienteget_patient_medications
- Obtener la medicación actual del pacienteget_patient_encounters
- Obtener los encuentros clínicos del pacienteget_patient_allergies
- Obtener las alergias e intolerancias del pacienteget_patient_procedures
- Obtener los procedimientos del pacienteget_patient_careteam
- Obtener los miembros del equipo asistencial del pacienteget_patient_careplans
- Obtener los planes de cuidados activos del pacienteget_vital_signs
- Obtener las constantes vitales del pacienteget_lab_results
- Obtener los resultados de laboratorio del pacienteget_medications_history
- Obtener el historial de medicación del pacienteclinical_query
- Ejecutar consultas FHIR personalizadas
Herramientas de investigación médica
search-pubmed
- Buscar artículos de PubMed relacionados con condiciones médicassearch-trials
- Encuentra ensayos clínicos relevantesdrug-interactions
- Comprobar las interacciones entre medicamentos
Utilización
Cada herramienta requiere parámetros específicos:
Parámetros requeridos
- La mayoría de las herramientas requieren
patientId
- Algunas herramientas tienen parámetros adicionales
lab_trend_analysis
: requierelabType
search-pubmed
: requierequery
ymaxResults
opcionalsearch-trials
: requierecondición
yubicación
opcionaldrug-interactions
: requiere la matrizdrugs
consulte: /src/server/constants/tools.ts para especificación de herramientas
Uso con claude desktop
para claude desktop:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json (utilice las variables env como se muestra arriba) { "mcpServers": { "google-cloud-healthcare-api-mcp": { "command": "node", "args": [ "/Users/tu-nombre-de-usuario/{google-cloud-healthcare-api-mcp dir}/build/index.js" ], "env": { "FIREBASE_API_KEY": "XXXXXXXXX", "FIREBASE_AUTH_DOMAIN": "XXXXXXXX", "FIREBASE_PROJECT_ID": "XXXXXXX", "FIREBASE_STORAGE_BUCKET": "XXXXXXXXX", "FIREBASE_MESSAGING_SENDER_ID": "XXXXXXX", "FIREBASE_APP_ID": "XXXXXXXXX", "FIREBASE_MEASUREMENT_ID":"XXXXXXXX", "FIREBASE_AUTH_CALLBACK_PORT": "3456", "FHIR_BASE_URL":"{gchapi-fhir-gateway-host}/fhir", "PUBMED_API_KEY":"your_pubmed_api_key", "CLINICAL_TRIALS_API_KEY": "your_trials_api_key", "FDA_API_KEY": "your_fda_api_key" } } }
Instalación mediante Smithery
Para instalar google-cloud-healthcare-api-mcp para Claude Desktop automáticamente a través de Smithery:
npx -y @smithery/cli install @Kartha-AI/google-cloud-healthcare-api-mcp --client claude
Iniciar el servidor MCP localmente con MCP Inspector
git clone git@github.com:Kartha-AI/google-cloud-healthcare-api-mcp.git cd google-cloud-healthcare-api-mcp npm install npm run build npm install -g @modelcontextprotocol/inspector mcp-inspector build/index.js http://localhost:5173 Configurar los env vars en Inspector
Solución de problemas:
Si Claude desktop se está ejecutando utiliza el puerto 3456 para Auth. Necesitas terminar ese proceso usando el siguiente comando:
kill -9 $(lsof -t -i:3456)