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 面向医疗 IT 集成工程师,提供跨 DICOM、HL7v2 与 FHIR 的查询、解析和映射工具,并可选连接 PACS。它还支持生成 Mirth Connect 通道及查询 PACS 元数据。

主要功能

  1. 01查询 DICOM 标签并解析厂商私有标签
  2. 02解析 HL7 v2 消息与字段
  3. 03映射 DICOM、HL7v2 和 FHIR R4
  4. 04生成 Mirth Connect 通道配置
  5. 05可选连接 PACS 查询和获取元数据

适用场景

  1. 01排查 DICOM 标签及厂商差异
  2. 02解析和验证 HL7 消息
  3. 03设计跨标准字段映射
  4. 04查询 PACS 研究并生成映射摘要

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 连接。

由一位拥有 16 年 PACS、RIS 和集成经验的医疗 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_message将 HL7 v2.x 消息解析为易读格式
explain_hl7_segment说明字段、数据类型和用法
lookup_hl7_table查询 HL7 表值(行政性别、患者类别等)
映射与生成工具(高级版)
工具功能说明
map_dicom_to_hl7将 DICOM 标签映射到 HL7 v2 字段,并提供转换说明
map_hl7_to_fhir将 HL7 v2 字段映射到 FHIR R4 资源
generate_mirth_channel生成 Mirth Connect 通道配置
validate_hl7_message根据标准验证 HL7 消息
explain_integration_pattern通过流程图说明医疗集成模式
decode_private_tags解码厂商私有 DICOM 标签(GE、Siemens、Philips 等)
generate_sample_message生成逼真的 HL7 消息样例,用于测试
PACS 连接工具(高级版)
工具功能说明
pacs_echo验证 PACS 连接(C-ECHO 或 DICOMweb ping)
pacs_query按患者、日期、模态、登记号搜索检查/序列
pacs_get_metadata从 PACS 获取详细的检查/序列元数据
pacs_retrieve将图像 C-MOVE 到目标 AE 标题
pacs_study_summary查询检查 + 自动经由 DICOM→HL7→FHIR 映射,并生成 ORM

安装

仅安装参考工具(不含 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(QIDO-RS/WADO-RS)的 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_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_TITLE适用于 DIMSE—远程 PACS AE 标题
DICOM_HL7_PACS_HOST适用于 DIMSE—远程 PACS 主机名/IP
DICOM_HL7_PACS_PORT适用于 DIMSE—远程 PACS 端口
DICOM_HL7_LOCAL_AE_TITLE否DICOM_HL7_MCP此服务的 AE 标题
DICOMweb
DICOM_HL7_DICOMWEB_URL适用于 DICOMweb—DICOMweb 基础 URL
DICOM_HL7_DICOMWEB_AUTH否none认证类型:none、bearer、basic
DICOM_HL7_DICOMWEB_TOKEN适用于 bearer—Bearer 令牌
DICOM_HL7_DICOMWEB_USERNAME适用于 basic—Basic 认证用户名
DICOM_HL7_DICOMWEB_PASSWORD适用于 basic—Basic 认证密码
安全
DICOM_HL7_PACS_PROTOCOL否auto协议:auto、dimse、dicomweb
DICOM_HL7_PACS_ALLOW_RETRIEVE否false启用 C-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,否则请勿将 PACS 连接用于托管在云端的大模型。对于本地部署或本地大模型配置,则无需担心此问题。

真实场景示例

“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 检查号映射到哪个 HL7 字段?”

返回:OBR-3 / ORC-3(填充方医嘱编号),附带数据类型转换说明(SH → EI)和映射陷阱。

生成 Mirth 通道(高级版)

“生成一个 Mirth 通道,用于接收 ADT 消息并将其写入 FHIR 服务”

返回:完整的通道配置,包含 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(几乎所有系统都兼容)或 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 构建

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。