Skip to main content
Glama

smart-fhir

患者を捏造しないコネクタ。

MCP v1 transport stdio FHIR R4 4.0.1 SMART 2.2.0 writes off

tools 4 sandbox public synthetic empty search stays empty unknown id 404 PHI none

インストール · ツール · 動作の仕組み · 制限


インストール

stdio のみ。TypeScript ビルド後、ローカルコネクタを追加します:

name: smart-fhir
command: node
args: dist/index.js
npm 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 の scripts(install、build、test、prove)を参照してください。

Related MCP server: smart-mcp-server

ツール

4つのツール。create / update / delete はありません。

ツール

動作

smart_discover

GET {iss}/.well-known/smart-configuration。パースした JSON または明確なエラーを返します。エンドポイントを捏造しません。

fhir_auth_status

{ mode, iss, fhir_version: "R4", write: "off", token_present, discovery_ok, last_error? }。トークンや PEM を決して出力しません。

fhir_search

GET {iss}/{resourceType}?..._count はデフォルト 10、最大 50。1ページのみ。空の Bundle はそのまま返します。

fhir_read

GET {iss}/{resourceType}/{id}。404 は「見つからない」ということであり、捏造リソースではありません。

resourceType 許可リスト: Patient | Observation | Condition | MedicationRequest | はっと. それ以外 → { ok: false, error: "resourceType not in v1 allowlist" }

動作の仕組み

FHIR_VERSIONR4 でなければなりません。それ以外は起動を拒否します。

対象

URL

扱い

FHIR インデックス(公開ページは R5 5.0.0

http://hl7.org/fhir/

公式インデックスのみ。未実装。

FHIR R4 (v1)

https://hl7.org/fhir/R4/

FHIR Release 4、4.0.1。リソースモデル。

SMART App Launch 2.2.0 (STU 2.2)

https://hl7.org/fhir/smart-app-launch/

現在公開されている SMART IG。 FHIR R4 ベース。

アプリ起動+認可

https://hl7.org/fhir/smart-app-launch/app-launch.html

ディスカバリ、standalone / EHR 起動、PKCE、トークン。 App Launch(code+PKCE)はv1の範囲外です。

Backend Services

https://hl7.org/fhir/smart-app-launch/backend-services.html

client_credentials + 秘密鍵 JWT。実装済み。環境変数が設定されない限り未使用。

ISS 許可リスト(末尾のスラッシュは取り除かれる。それ以外は拒否):

許可リストに載っている別のベースを FHIR_ISS に設定すると、別の ISS を指せます。新しい ISS はまずレビューが必要です。そのレビューと実在の client_id がない状態で、本番の EHR にこれを向けないでください。

FHIR_AUTH_MODE

動作

open (デフォルト)

ディスカバリしてから、Authorization を付けずに FHIR GET。open ではディスカバリの 404 は致命的ではない(ログを取って続行)。FHIR が 401 / 403 を返すと → { ok: false, http_status, ... }

bearer

ディスカバリは同じ。Authorization Bearer トークンで FHIR GET します。

backend_jwt

FHIR_CLIENT_ID(または SMART_CLIENT_ID)と FHIR_PRIVATE_KEY_PEM両方がある場合のみ。SMART Backend Services の JWT。必要な環境変数がない → 起動を拒否。資格情報を捏造しません。

App Launch(code+PKCE)は対象外です。

Install Server
F
license - not found
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

View all related MCP servers

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

View all MCP Connectors

Latest Blog Posts

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