Skip to main content
Página de referencia. Para ver prompts naturales y outputs reales de cada tool en el chat de Cursor / Claude / Windsurf, ir directo a Ejemplos por tool. La estrategia de cuándo elegir lint vs validate (y por qué importa) vive en Skill CL Core: Routing por intent. @fhiron/mcp-connector expone 10 herramientas con prefijo fhiron_. El prefijo evita colisión con la marca registrada FHIR® (HL7) y deja todo el namespace agrupado en cualquier cliente MCP. Para que el modelo (y tú) las absorban rápido, están organizadas en tres categorías mentales según la intención:
  • Validar: confirmar que un recurso cumple CL Core v1.9.4
  • Explorar: entender el estándar, los perfiles y la terminología chilena
  • Reparar: aplicar correcciones mecánicas
Regla práctica: empieza siempre por Explorar si no tienes un recurso aún (fhiron_get_example, fhiron_search_terminology), después Validar lo que armaste, y solo cuando un issue trae quickFix, llama a Reparar.

Mapa de herramientas

Validar

Confirman que un recurso, un Bundle o un endpoint completo cumple CL Core. Cinco tools, escaladas de barata a costosa.
ToolCostoCuándo usarla
fhiron_lintGratis (offline)Lint local determinístico antes de tocar la red. Atrapa los errores cl-* con quickFix mecánico.
fhiron_validate1 créditoTool principal: corre el lint local y luego HAPI server-side para slicing y terminología profunda.
fhiron_validate_file1 créditoIgual que fhiron_validate pero leyendo un .json del filesystem. Evita pegar JSONs largos en el chat.
fhiron_validate_bundle1 crédito por entry validada (cap 50)Bundle entry-by-entry contra HAPI. Devuelve matriz pass/fail agrupada por resourceType.
fhiron_score_endpointGratis (no llama a Fhiron)Escanea un endpoint FHIR público y devuelve un FHIR Score 0–100 con grade A–F y recomendaciones.
fhiron_score_endpoint bloquea automáticamente URLs hacia redes privadas, loopback y metadata cloud (localhost, 10.x, 172.16-31.x, 192.168.x, 169.254.x, 100.64-127.x, ::1, fe8x..feb, fc/fd, metadata.google.internal). Usa únicamente endpoints FHIR públicos.
Detalle de costo por canal, conteo de Bundle y casos de IA en batch en Cómo se cuentan las validaciones.

Explorar

Para entender el estándar, ver ejemplos válidos y consultar terminología chilena. Todas son gratis y offline. La IA debe llamarlas antes de inventar un código o un perfil.
ToolCostoCuándo usarla
fhiron_get_exampleGratis (offline)Devuelve un recurso CL Core válido listo para editar (Patient, Practitioner, Encounter, Condition, MedicationRequest, +9).
fhiron_search_terminologyGratis (offline)Busca en catálogos chilenos: comunas DEIS, establecimientos DEIS, ATC/TFC, CIE-10, CSTipoIdentificador.
fhiron_explain_codeGratis (offline)Explicación pedagógica de un código de error (cl-enc-04, cl-medreq-02, hapi-error-terminology, mcp-quota-01, etc.) con why, fix y ejemplo.
fhiron_compare_profiles2 créditosValida el mismo recurso contra FHIR R4 base vs CL Core en paralelo y devuelve el diff de errores.

Reparar

Aplica correcciones mecánicas obtenidas desde un issue.quickFix devuelto por fhiron_validate o fhiron_lint.
ToolCostoCuándo usarla
fhiron_apply_fixGratis (offline)Aplica un quickFix (RFC 6901 jsonPointer + replacement) sobre el JSON original. Idempotente: aplicar dos veces es seguro.

Estructura del feedback

Cada issue que devuelven las tools de Validar responde las cuatro preguntas pedagógicas (qué / dónde / por qué / cómo arreglar):
{
  "code": "cl-enc-04",                                          // qué (estable, máquina-legible)
  "severity": "error",
  "path": "Encounter.status",                                   // dónde (FHIRPath)
  "message": "Encounter.status='complete' no pertenece al ValueSet EncounterStatus (binding required). Códigos válidos: planned · arrived · triaged · in-progress · onleave · finished · cancelled · entered-in-error · unknown.",
  "why": "FHIR R4 — required binding al ValueSet http://hl7.org/fhir/ValueSet/encounter-status. 'complete' es un valor que devuelven varios HIS legacy, pero no es FHIR; el binding required no admite códigos custom.",
  "profileUrl": "http://hl7.org/fhir/StructureDefinition/Encounter",
  "docsUrl": "https://docs.fhiron.cl/inspect/errores#cl-enc-04",
  "suggestion": "Mapear el estado interno del HIS a uno de los códigos del ValueSet (finished cuando la atención cerró, in-progress cuando está abierta, cancelled cuando se anuló).",
  "example": { "status": "finished" },
  "quickFix": {
    "title": "Reemplazar por código FHIR válido",
    "jsonPointer": "/status",
    "replacement": "finished"
  }
}

Convención de nombres

Los nombres canónicos usan el prefijo fhiron_ para diferenciarse de la marca registrada FHIR® (HL7) y para que cualquier cliente MCP agrupe visualmente las herramientas del connector. Los nombres no van a cambiar. Son parte del contrato público del paquete.