health-gorilla
Query Health Gorilla FHIR patients, conditions, medications and lab results.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (6)
- LOWen healthgorilla_get_patient_everything
- LOWen healthgorilla_list_immunizations
- LOWen healthgorilla_list_observations
- LOWen healthgorilla_list_diagnostic_reports
- LOWen healthgorilla_poll_query_status
- LOWen healthgorilla_start_patient360_query
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"health-gorilla": {
"url": "https://health-gorilla.usefulapi.io/mcp"
}
}
}Puntos de conexión remotos
https://health-gorilla.usefulapi.io/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (16)
🟢healthgorilla_find_patients(given, family, birthdate, identifier, _count)
Search for patients by demographics. FHIR: GET /Patient?given=&family=&birthdate=&identifier=. Returns a FHIR searchset Bundle. Use the returned Patient id with the other tools.
Esquema de entrada
{
"type": "object",
"properties": {
"given": {
"description": "Given (first) name.",
"type": "string"
},
"family": {
"description": "Family (last) name.",
"type": "string"
},
"birthdate": {
"description": "Date of birth, yyyy-mm-dd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"identifier": {
"description": "Business identifier (e.g. MRN), optionally system|value.",
"type": "string"
},
"_count": {
"description": "FHIR _count — max results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 1000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢healthgorilla_get_patient(patient_id)
Read a single patient by id. FHIR: GET /Patient/{id}. Returns a FHIR Patient resource.
Esquema de entrada
{
"type": "object",
"properties": {
"patient_id": {
"type": "string",
"minLength": 1,
"description": "Health Gorilla Patient resource id."
}
},
"required": [
"patient_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢healthgorilla_get_patient_everything(patient_id, _since, _count)
Fetch the comprehensive record for a patient as a FHIR Bundle. FHIR: GET /Patient/{id}/$everything. Optionally scope by _since and page with _count.
Esquema de entrada
{
"type": "object",
"properties": {
"patient_id": {
"type": "string",
"minLength": 1,
"description": "Health Gorilla Patient resource id."
},
"_since": {
"description": "Only include resources updated on/after this date, yyyy-mm-dd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"_count": {
"description": "FHIR _count — max results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 1000
}
},
"required": [
"patient_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢healthgorilla_list_conditions(patient_id, category, _count)
List a patient's conditions/problems. FHIR: GET /Condition?patient={id}. Returns a FHIR searchset Bundle.
Esquema de entrada
{
"type": "object",
"properties": {
"patient_id": {
"type": "string",
"minLength": 1,
"description": "Patient resource id."
},
"category": {
"description": "Condition category, e.g. problem-list-item, encounter-diagnosis.",
"type": "string"
},
"_count": {
"description": "FHIR _count — max results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 1000
}
},
"required": [
"patient_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢healthgorilla_list_medications(patient_id, status, _count)
List a patient's medication requests/prescriptions. FHIR: GET /MedicationRequest?patient={id}. Returns a FHIR searchset Bundle.
Esquema de entrada
{
"type": "object",
"properties": {
"patient_id": {
"type": "string",
"minLength": 1,
"description": "Patient resource id."
},
"status": {
"description": "Medication status, e.g. active, completed, stopped.",
"type": "string"
},
"_count": {
"description": "FHIR _count — max results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 1000
}
},
"required": [
"patient_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢healthgorilla_list_allergies(patient_id, _count)
List a patient's allergies/intolerances. FHIR: GET /AllergyIntolerance?patient={id}. Returns a FHIR searchset Bundle.
Esquema de entrada
{
"type": "object",
"properties": {
"patient_id": {
"type": "string",
"minLength": 1,
"description": "Patient resource id."
},
"_count": {
"description": "FHIR _count — max results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 1000
}
},
"required": [
"patient_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢healthgorilla_list_immunizations(patient_id, _count)
List a patient's immunizations. FHIR: GET /Immunization?patient={id}. Returns a FHIR searchset Bundle.
Esquema de entrada
{
"type": "object",
"properties": {
"patient_id": {
"type": "string",
"minLength": 1,
"description": "Patient resource id."
},
"_count": {
"description": "FHIR _count — max results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 1000
}
},
"required": [
"patient_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢healthgorilla_list_observations(patient_id, category, code, date, _count)
List a patient's observations (labs, vitals). FHIR: GET /Observation?patient={id}. Filter by category (e.g. laboratory, vital-signs), LOINC code, or date. Returns a FHIR searchset Bundle.
Esquema de entrada
{
"type": "object",
"properties": {
"patient_id": {
"type": "string",
"minLength": 1,
"description": "Patient resource id."
},
"category": {
"description": "Observation category, e.g. laboratory, vital-signs.",
"type": "string"
},
"code": {
"description": "Observation code (e.g. LOINC), optionally system|value.",
"type": "string"
},
"date": {
"description": "Date filter (FHIR date param, may use prefixes like ge2026-01-01).",
"type": "string"
},
"_count": {
"description": "FHIR _count — max results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 1000
}
},
"required": [
"patient_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢healthgorilla_list_diagnostic_reports(patient_id, category, _count)
List a patient's diagnostic reports (lab panels, imaging). FHIR: GET /DiagnosticReport?patient={id}. Returns a FHIR searchset Bundle.
Esquema de entrada
{
"type": "object",
"properties": {
"patient_id": {
"type": "string",
"minLength": 1,
"description": "Patient resource id."
},
"category": {
"description": "Report category, e.g. LAB, RAD.",
"type": "string"
},
"_count": {
"description": "FHIR _count — max results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 1000
}
},
"required": [
"patient_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢healthgorilla_list_documents(patient_id, type, _count)
List a patient's document references (C-CDA, notes, etc). FHIR: GET /DocumentReference?patient={id}. Each entry points at a Binary you can fetch with healthgorilla_get_binary.
Esquema de entrada
{
"type": "object",
"properties": {
"patient_id": {
"type": "string",
"minLength": 1,
"description": "Patient resource id."
},
"type": {
"description": "Document type code (e.g. LOINC), optionally system|value.",
"type": "string"
},
"_count": {
"description": "FHIR _count — max results per page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 1000
}
},
"required": [
"patient_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢healthgorilla_get_coverage(patient_id)
List a patient's insurance coverage. FHIR: GET /Coverage?patient={id}. Returns a FHIR searchset Bundle.
Esquema de entrada
{
"type": "object",
"properties": {
"patient_id": {
"type": "string",
"minLength": 1,
"description": "Patient resource id."
}
},
"required": [
"patient_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢healthgorilla_get_binary(binary_id)
Retrieve raw document content by Binary id. FHIR: GET /Binary/{id}. Content may be a FHIR Binary JSON resource, XML C-CDA, or base64 — returned as-is (raw text if not JSON).
Esquema de entrada
{
"type": "object",
"properties": {
"binary_id": {
"type": "string",
"minLength": 1,
"description": "Binary resource id (from a DocumentReference)."
}
},
"required": [
"binary_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢healthgorilla_poll_query_status(request_result_url)
Poll a RequestResult URL returned by healthgorilla_start_patient360_query. HTTP 202 = still processing, 200 = done (returns retrieval metrics: organizationsTotal, documentsFound, documentsImported, documentsSkipped, documentsFailed). Returns { status, body }.
Esquema de entrada
{
"type": "object",
"properties": {
"request_result_url": {
"type": "string",
"format": "uri",
"description": "The RequestResult poll URL returned by a Patient360 query (a Health Gorilla URL)."
}
},
"required": [
"request_result_url"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢healthgorilla_fhir_search(resource_type, query)
Escape hatch: run an arbitrary FHIR search. GET /{resource_type}?{query}. e.g. resource_type='Observation', query='patient=123&category=laboratory&_count=5'. Use when a dedicated tool does not cover your query.
Esquema de entrada
{
"type": "object",
"properties": {
"resource_type": {
"type": "string",
"pattern": "^[A-Za-z]+$",
"description": "FHIR resource type, e.g. Patient, Observation, Encounter."
},
"query": {
"description": "Raw FHIR query string without the leading '?', e.g. patient=123&_count=5.",
"type": "string"
}
},
"required": [
"resource_type"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴healthgorilla_create_patient(given, family, birthdate, gender, line, ...)
Registers a NEW patient record in your Health Gorilla tenant. FHIR: POST /Patient with a minimal FHIR R4 Patient resource built from the given args. State-changing.
Esquema de entrada
{
"type": "object",
"properties": {
"given": {
"type": "string",
"minLength": 1,
"description": "Given (first) name."
},
"family": {
"type": "string",
"minLength": 1,
"description": "Family (last) name."
},
"birthdate": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Date of birth, yyyy-mm-dd."
},
"gender": {
"type": "string",
"enum": [
"male",
"female",
"other",
"unknown"
],
"description": "Administrative gender."
},
"line": {
"description": "Street address line.",
"type": "string"
},
"city": {
"description": "City.",
"type": "string"
},
"state": {
"description": "State (2-letter).",
"type": "string"
},
"postalCode": {
"description": "Postal / ZIP code.",
"type": "string"
},
"identifier": {
"description": "Business identifier value (e.g. MRN).",
"type": "string"
}
},
"required": [
"given",
"family",
"birthdate",
"gender"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴healthgorilla_start_patient360_query(patient_id)
Initiates an asynchronous national-network records retrieval (CommonWell / Carequality / QHINs) that imports external documents into your tenant. FHIR: GET /DocumentReference/$p360-retrieve?patient={id} with header 'Prefer: respond-async'. Returns the RequestResult poll URL (Location header); poll it with healthgorilla_poll_query_status. State-changing.
Esquema de entrada
{
"type": "object",
"properties": {
"patient_id": {
"type": "string",
"minLength": 1,
"description": "Patient resource id to retrieve external records for."
}
},
"required": [
"patient_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Comunidad
Evidencia