smart-fhir
smart-fhir
Коннектор, который не выдумывает пациента.
Установка · Инструменты · Как это работает · Ограничения
Установка
Только stdio. После TypeScript-сборки добавьте локальный коннектор:
name: smart-fhir
command: node
args: dist/index.jsnpm install
npm run buildПеременные окружения для этого (значения по умолчанию, не секреты):
FHIR_ISS = https://launch.smarthealthit.org/v/r4/fhir
FHIR_VERSION = R4
FHIR_AUTH_MODE = open
FHIR_WRITE = off
FHIR_AUDIT_PATH = ./audit/audit.jsonlНе кладите секреты в репозиторий. Не открывайте публичный HTTP-порт. Не слушайте TCP.
Утренний быстрый запуск (та же среда)
npx -y tsx src/index.tsСмотрите скрипты в package.json: install, build, test, prove.
Related MCP server: smart-mcp-server
Инструменты
Четыре инструмента. Никаких create / update / delete.
Инструмент | Действие |
| GET |
|
|
| GET |
| GET |
Разрешённые типы resourceType: Patient, Observation, Condition, MedicationRequest, Encounter. Всё остальное → { ok: false, error: "resourceType is not in the v1 allowlist" }.
Как это работает
FHIR_VERSION должен быть R4. Любое другое значение не даст запуститься.
Что | URL | Как читать |
Индекс FHIR (опубликованная страница — R5 5.0.0) | Только официальный индекс. Не реализовано. | |
FHIR R4 (v1) | FHIR Release 4, 4.0.1. Модель ресурсов. | |
SMART App Launch 2.2.0 (STU 2.2) | Текущий опубликованный SMART IG. Основан на FHIR R4. | |
App launch + авторизация | App Launch, PKCE, токен. App Launch (code+PKCE) вне рамок v1. | |
Backend Services |
|
Разрешённый список ISS (конечный слеш удаляется; всё остальное отклоняется):
https://launch.smarthealthit.org/v/r4/fhir(по умолчанию)https://r4.smarthealthit.orghttps://hapi.fhir.org/baseR4
Чтобы направить коннектор на другой ISS, задайте FHIR_ISS другой разрешённой базой. Новый ISS сначала нужно проверить. Не указывайте на «живую» EHR без этой проверки и настоящего client_id.
FHIR_AUTH_MODE | Поведение |
| Сначала discovery, затем FHIR GET без |
| Та же discovery. FHIR GET с |
| Только если есть и |
App Launch (code+PKCE) вне рамок. FHIR_REDIRECT_URI зарезервирован и не используется.
Форма ошибки аутентификации: { ok: false, http_status, issue?, error? }. Никогда не отдаёт выдуманную Patient-запись.
FHIR_WRITE по умолчанию off. В v1 нет инструментов записи, даже если кто-то поставит on. Операции записи никогда не делают POST AuditEvent в FHIR.
Имя | Значение по умолчанию | Примечания |
FHIR_ISS | стандартный лаунчер R4 | Должен оставаться в разрешённом списке |
FHIR_VERSION | R4 | Всё остальное отклоняется |
FHIR_AUTH_MODE | open | open / bearer / backend_jwt |
FHIR_WRITE | off | Запись в v1 остаётся выключенной |
FHIR_AUDIT_PATH |
| Только дозапись JSONL; локально задайте |
FHIR_ACCESS_TOKEN | не задано | Только для bearer |
FHIR_CLIENT_ID | не задано | Backend Services |
SMART_CLIENT_ID | не задано | Псевдоним FHIR_CLIENT_ID |
FHIR_PRIVATE_KEY_PEM | не задано | JWT Backend Services |
FHIR_JWKS_URL | не задано | Зарезервирован, если EHR запрашивает JWKS |
FHIR_SCOPE | five system/*.rs types | Переопределение только в режиме JWT |
FHIR_REDIRECT_URI | не задано | Зарезервирован для будущего App Launch |
Строки аудита: ts, tool, iss, mode, resourceType, id?, http_status, entry_count?. Нет тела ресурса, токена, PEM и значений запроса name/MRN.
Ограничения
R5 / R4B по умолчанию. Дополнительные типы ресурсов. CRUD. Bulk. App Launch в браузере / PKCE.
Настоящая EHR / настоящая PHI. Продовый деплой. Публичный bind или Streamable HTTP.
momentum / fhirhydrant / Atrium / Pinecone / Medplum.
Не медицинский продукт. Не диагностирует, не лечит и не хранит PHI.
Никакой PHI. Никаких «живых» EHR.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables AI applications to securely search and manage healthcare data from FHIR R4-compliant servers with built-in safety validation for AI-generated clinical observations, preventing recording of physiologically impossible values.8MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to securely interact with FHIR R4 servers for clinical decision support workflows, including PlanDefinition execution, FHIR resource management, terminology services, and Questionnaire/StructureMap transformation via Matchbox.1
- AlicenseAqualityAmaintenanceRead-only MCP server for licensed Healthpoint HL7 FHIR API access.101Apache 2.0
- AlicenseAqualityAmaintenanceEnables read-only FHIR access to Practice Fusion EHR to search patients, appointments, conditions, medications, and lab results.13223MIT
Related MCP Connectors
Securely access and manage FHIR healthcare data stored in Medplum.
Hosted MCP endpoint with realistic fake data for prototyping agents. 12 tools, no setup.
Guardrailed FHIR access for AI agents: PHI redaction, audit trail, step-up auth, tenant isolation
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/swami8791/smart-fhir-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server