关于 Dicom/hl7/fhir Interoperability Mcp Server
DICOM/HL7/FHIR Interoperability MCP Server 面向医疗 IT 集成工程师,提供跨 DICOM、HL7v2 与 FHIR 的查询、解析和映射工具,并可选连接 PACS。它还支持生成 Mirth Connect 通道及查询 PACS 元数据。
主要功能
- 01查询 DICOM 标签并解析厂商私有标签
- 02解析 HL7 v2 消息与字段
- 03映射 DICOM、HL7v2 和 FHIR R4
- 04生成 Mirth Connect 通道配置
- 05可选连接 PACS 查询和获取元数据
适用场景
- 01排查 DICOM 标签及厂商差异
- 02解析和验证 HL7 消息
- 03设计跨标准字段映射
- 04查询 PACS 研究并生成映射摘要
MCP 相关
该 MCP 服务通过工具提供 DICOM、HL7v2、FHIR 标准查询、解析、映射和生成能力;启用 PACS 连接后,还可查询研究、获取元数据及检索图像。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
DICOM/HL7/FHIR 互操作 MCP 服务
唯一一款将 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 映射”
返回完整的互操作性摘要:
- PACS 中的检查元数据(患者、日期、模态、描述)
- 每个关键字段的 DICOM→HL7 字段映射
- HL7→FHIR R4 资源映射
- 预填充的 HL7 ORM^O01 消息框架
- 集成模式上下文(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 构建
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。