mcpField
D
Dicom/hl7/fhir Interoperability Mcp Server

Dicom/hl7/fhir Interoperability Mcp Server

ローカル
github.com/NyxToolsDevヘルスケア513 週間前に更新

Dicom/hl7/fhir Interoperability Mcp Server について

DICOM/HL7/FHIR Interoperability MCP Serverは、DICOM、HL7v2、FHIRデータの調査やマッピングを行う医療IT連携エンジニア向けのツールです。オプションでPACSに接続でき、Mirth Connectのチャネル生成にも対応します。

主な機能

  1. 01DICOMタグの検索とベンダー固有タグの解読
  2. 02HL7 v2メッセージとフィールドの解析
  3. 03DICOM・HL7v2・FHIR R4のマッピング
  4. 04Mirth Connectチャネル設定の生成
  5. 05PACSへの任意接続と検索・メタデータ取得

活用シーン

  1. 01DICOMタグとベンダー固有情報の調査
  2. 02HL7メッセージの解析と検証
  3. 03医療標準間のフィールドマッピング設計
  4. 04PACS研究の検索とマッピング概要の作成

MCP 対応

MCPサーバーはDICOM、HL7v2、FHIRの参照、解析、マッピング、生成ツールを公開します。PACS接続を有効にすると、研究の検索、メタデータ取得、画像取得も行えます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"dicom-hl7": {
"command": "uvx",
"args": [
"dicom-hl7-mcp"
],
"env": {
"DICOM_HL7_LICENSE_KEY": "<DICOM_HL7_LICENSE_KEY>"
}
}
}
}
起動コマンドuvx dicom-hl7-mcp
設定が必要な環境変数
DICOM_HL7_LICENSE_KEYシークレットPremium license key from nyxtools.gumroad.com

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypidicom-hl7-mcp0.2.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

DICOM/HL7/FHIR 相互運用性 MCP サーバー

NyxToolsDev/dicom-hl7-mcp-server MCP server

DICOM、HL7v2、FHIR を単一パッケージで連携する唯一の MCP サーバーです。PACS 接続にも対応しています。

PACS、RIS、システム統合で16年の経験を持つ医療 IT エンジニアが開発しました。これは FHIR API や DICOM タグ辞書をラップしたものではありません。長年の実務を通じて培われる相互運用性の知識に加え、実際の PACS システムに接続する機能を備えています。

このサーバーの特長

機能このサーバーDICOM 専用サーバーFHIR 専用サーバー
DICOM タグ検索+ベンダー固有の注意点はいはいいいえ
HL7v2 メッセージの解析はいいいえいいえ
FHIR R4 リソースのマッピングはいいいえはい
DICOM ↔ HL7v2 のマッピングはいいいえいいえ
HL7v2 → FHIR 変換はいいいえいいえ
Mirth Connect チャネルの生成はいいいえいいえ
PACS 接続(C-FIND/C-MOVE)はい一部いいえ
DICOMweb(QIDO-RS/WADO-RS)はいいいえいいえ
PACS にクエリを実行し、HL7/FHIR に自動マッピングはいいいえいいえ
ベンダーのプライベートタグのデコード(GE、Siemens、Philips)はい一部いいえ
統合パターンの知識(IHE SWF、ADT フロー)はいいいえいいえ

ツール

リファレンスツール(無料)
ツール機能
lookup_dicom_tag番号またはキーワードで任意の DICOM タグを検索します
explain_dicom_tagベンダー固有の注意点や見落としやすい点を含め、タグを詳しく説明します
parse_hl7_messageHL7 v2.x メッセージを解析し、人が読みやすい形式にします
explain_hl7_segmentセグメントのフィールド、データ型、用途を説明します
lookup_hl7_tableHL7 テーブルの値(行政上の性別、患者クラスなど)を検索します
マッピング・生成ツール(プレミアム)
ツール機能
map_dicom_to_hl7変換に関する注記とともに、DICOM タグを HL7 v2 フィールドにマッピングします
map_hl7_to_fhirHL7 v2 フィールドを FHIR R4 リソースにマッピングします
generate_mirth_channelMirth Connect チャネル設定を生成します
validate_hl7_messageHL7 メッセージを標準に照らして検証します
explain_integration_pattern医療分野の統合パターンをフロー図とともに説明します
decode_private_tagsベンダーのプライベート DICOM タグ(GE、Siemens、Philips など)をデコードします
generate_sample_messageテスト用に実用的なサンプル HL7 メッセージを生成します
PACS 接続ツール(プレミアム)
ツール機能
pacs_echoPACS への接続を確認します(C-ECHO または DICOMweb ping)
pacs_query患者、日付、モダリティ、アクセッション番号で検査/シリーズを検索します
pacs_get_metadataPACS から検査/シリーズの詳細なメタデータを取得します
pacs_retrieveC-MOVE で画像を送信先 AE タイトルに転送します
pacs_study_summary検査にクエリを実行し、生成された ORM を用いて DICOM→HL7→FHIR の順に自動マッピングします

インストール

リファレンスツールのみ(PACS 接続なし):

pip install dicom-hl7-mcp

PACS 接続あり(pynetdicom + httpx を追加):

pip install dicom-hl7-mcp[pacs]

設定

基本(リファレンスツールのみ)

Claude Desktop の設定に追加します:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "dicom-hl7-assistant": {
      "command": "uvx",
      "args": ["dicom-hl7-mcp"]
    }
  }
}
プレミアムライセンスを使用する場合
{
  "mcpServers": {
    "dicom-hl7-assistant": {
      "command": "uvx",
      "args": ["dicom-hl7-mcp"],
      "env": {
        "DICOM_HL7_LICENSE_KEY": "your-license-key-here"
      }
    }
  }
}
PACS 接続あり(従来型 DICOM)

C-FIND/C-MOVE/C-ECHO を使用して PACS に接続します:

{
  "mcpServers": {
    "dicom-hl7-assistant": {
      "command": "uvx",
      "args": ["--with", "dicom-hl7-mcp[pacs]", "dicom-hl7-mcp"],
      "env": {
        "DICOM_HL7_LICENSE_KEY": "your-license-key-here",
        "DICOM_HL7_PACS_AE_TITLE": "YOUR_PACS",
        "DICOM_HL7_PACS_HOST": "pacs.hospital.org",
        "DICOM_HL7_PACS_PORT": "4242",
        "DICOM_HL7_LOCAL_AE_TITLE": "CLAUDE_MCP"
      }
    }
  }
}
PACS 接続あり(DICOMweb)

DICOMweb 対応 PACS(QIDO-RS/WADO-RS)に接続します:

{
  "mcpServers": {
    "dicom-hl7-assistant": {
      "command": "uvx",
      "args": ["--with", "dicom-hl7-mcp[pacs]", "dicom-hl7-mcp"],
      "env": {
        "DICOM_HL7_LICENSE_KEY": "your-license-key-here",
        "DICOM_HL7_DICOMWEB_URL": "https://pacs.hospital.org/dicom-web",
        "DICOM_HL7_DICOMWEB_AUTH": "bearer",
        "DICOM_HL7_DICOMWEB_TOKEN": "your-auth-token"
      }
    }
  }
}
環境変数
変数必須デフォルト説明
DICOM_HL7_LICENSE_KEYプレミアム版の場合—プレミアムライセンスキー
DICOM_HL7_LOG_LEVELいいえINFOログレベル
従来の DICOM
DICOM_HL7_PACS_AE_TITLEDIMSE の場合—リモート PACS の AE タイトル
DICOM_HL7_PACS_HOSTDIMSE の場合—リモート PACS のホスト名/IP
DICOM_HL7_PACS_PORTDIMSE の場合—リモート PACS のポート
DICOM_HL7_LOCAL_AE_TITLEいいえDICOM_HL7_MCPこのサーバーの AE タイトル
DICOMweb
DICOM_HL7_DICOMWEB_URLDICOMweb の場合—DICOMweb のベース URL
DICOM_HL7_DICOMWEB_AUTHいいえnone認証タイプ:none、bearer、basic
DICOM_HL7_DICOMWEB_TOKENbearer の場合—ベアラートークン
DICOM_HL7_DICOMWEB_USERNAMEbasic の場合—ベーシック認証のユーザー名
DICOM_HL7_DICOMWEB_PASSWORDbasic の場合—ベーシック認証のパスワード
安全性
DICOM_HL7_PACS_PROTOCOLいいえautoプロトコル:auto、dimse、dicomweb
DICOM_HL7_PACS_ALLOW_RETRIEVEいいえfalseC-MOVE を有効化(有効にするには true)
DICOM_HL7_PHI_REDACTいいえfalse出力内の患者名/IDをマスキング

PHI の安全性

実際の PACS に接続すると、クエリ結果に保護対象保健情報(PHI)が含まれます。

  • ログのマスキング:すべてのログ出力から PHI フィールドが自動的に削除されます
  • 結果に関する警告:すべての PACS クエリ結果に PHI に関する警告バナーが含まれます
  • 任意のマスキング:DICOM_HL7_PHI_REDACT=true を設定すると、ツール出力内の患者名/IDが [REDACTED] に置き換えられます
  • ディスクへのキャッシュなし:PACS クエリ結果がディスクに書き込まれることはありません
  • C-MOVE はデフォルトで無効:明示的に DICOM_HL7_PACS_ALLOW_RETRIEVE=true を設定する必要があります

重要: 組織のポリシーで PHI をその LLM プロバイダーに送信することが許可されていない限り、クラウドホスト型 LLM で PACS 接続を使用しないでください。オンプレミスのデプロイやローカル LLM のセットアップでは、この点は問題になりません。

実際の使用例

「DICOM タグ (0008,0050) とは何ですか?」

AccessionNumber — SH — オーダーを識別する、RIS が生成した番号です。RIS のオーダーと PACS の検査を照合するための重要なフィールドです。

HL7 メッセージを解析する

「この HL7 メッセージを解析してください:」

MSH|^~\&|RIS|RAD|EMR|HOSP|20240315140000||ORU^R01|MSG003|P|2.5.1
PID|1||MRN12345^^^HOSP^MR||DOE^JOHN||19650315|M
OBR|1|ORD001|ACC001|CTABD^CT Abdomen^L|||20240315130000
OBX|1|FT|&GDT^Report||FINDINGS: Normal CT.||||||F

各セグメントがフィールド名、値、テーブル参照、文脈に応じた説明とともに解析されて返されます。

PACS をクエリして HL7/FHIR に自動マッピングする(プレミアム版)

「PACS でアクセッション番号 ACC12345 を検索し、HL7/FHIR のマッピングを表示してください」

以下を含む相互運用性の概要が返されます。

  1. PACS から取得した検査メタデータ(患者、日付、モダリティ、説明)
  2. すべての主要フィールドの DICOM→HL7 フィールドマッピング
  3. HL7→FHIR R4 リソースマッピング
  4. あらかじめ入力された HL7 ORM^O01 メッセージのひな形
  5. 統合パターンのコンテキスト(IHE SWF ワークフロー)
DICOM → HL7 にマッピングする(プレミアム版)

「DICOM の Accession Number は、どの HL7 フィールドにマッピングされますか?」

戻り値:OBR-3 / ORC-3(フィラオーダー番号)、データ型変換に関する注記(SH → EI)、およびマッピング時の注意点。

Mirth チャネルを生成する(プレミアム版)

「ADT メッセージを受信し、FHIR サーバーに書き込む Mirth チャネルを生成してください」

MLLP ソース、FHIR HTTP 宛先、トランスフォーマーのステップ、イベントフィルタリング、実装上の注意点を含む完全なチャネル設定が返されます。

ナレッジベース

規格の対応範囲
  • DICOM: よく使われるタグ約200件、SOP クラス、転送構文、7社のプライベートタグ範囲
  • HL7 v2.x: 15のセグメント、20以上のテーブル、メッセージタイプ(ADT、ORM、ORU、MDM、SIU、DFT、BAR)、バージョン 2.3~2.9
  • FHIR R4: Patient、Encounter、ServiceRequest、DiagnosticReport、Observation、AllergyIntolerance、Condition、RelatedPerson、Coverage のマッピング
  • 統合パターン: ADT フィード、オーダーから結果まで、放射線科ワークフロー(IHE SWF)、検査インターフェース、レポート配信、患者の統合、請求計上
ナレッジの出所

タグ、セグメント、マッピングは公開規格(DICOM PS3.6、HL7 v2.5.1、FHIR R4、HL7 v2-to-FHIR IG)に基づいています。ベンダー固有の挙動、統合のヒント、「ここに注意」といった情報は、実際の医療環境で16年間にわたりPACS/RIS/HISインターフェースを構築してきた経験に基づいています。

プレミアムライセンス

無料プランでは、DICOMタグの検索、HL7の解析、セグメントの説明を利用できます。毎日使うツールです。

プレミアムでは、規格をまたいだマッピング、Mirthの生成、検証、PACS接続、そして習得に何年もかかる高度な統合の知識を利用できます。

ライセンスの購入: nyxtools.gumroad.com

よくある質問

無料ツールの利用にライセンスは必要ですか? いいえ。5つの無料ツールをすぐにインストールして利用できます。アカウント登録もサインアップも不要です。

PACS接続は必要ですか? いいえ。リファレンスツールとマッピングツールは、PACSに接続しなくても動作します。PACS接続は任意です。実際のPACSシステムにクエリを送信したい場合にのみ、pip install dicom-hl7-mcp[pacs] を実行してインストールしてください。

対応しているHL7のバージョンは何ですか? v2.3からv2.9まで対応しており、最も広く導入されている米国の医療分野で使われるv2.5.1を重視しています。

HIPAAに準拠していますか? リファレンスツールが処理するのは規格のメタデータであり、患者データではありません。PACS接続ツールは実際の患者データにアクセスします。PHIの安全対策(ログのマスキング、任意の出力マスキング、デフォルトで無効になっているC-MOVE)は組み込まれていますが、利用が所属組織のポリシーに準拠していることを確認する責任は利用者にあります。

対応しているPACSシステムは何ですか? DICOM C-FIND/C-ECHO(ほぼすべてのPACSが対応)またはDICOMweb(QIDO-RS/WADO-RS)に対応しているPACSであれば利用できます。Orthanc、RamSoft、DCM4CHEEでテスト済みです。

開発

git clone https://github.com/NyxToolsDev/dicom-hl7-mcp-server.git
cd dicom-hl7-mcp-server
pip install -e ".[dev]"
pytest

ライセンス

MIT Licenseをご覧ください。LICENSE。


NyxToolsが開発しました

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。