Token导航 LogoToken导航TokenDH.com
Dicom MCP logo
运维云端stdio官方级别未说明来源级核验

Dicom MCP

MCP Server

DICOM MCP服务器是一个基于标准模型上下文协议(MCP)的医学影像AI集成平台,支持DICOM查询、FHIR集成和放射学报告生成,适用于医学影像开发与测试场景。

工具数

29

提示词数

0

GitHub Stars

3

资源数

0
PythonCursor云端部署Cursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

sscotti

提供方

sscotti

最后核验

2026/5/17 20:35

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python3 -m venv venv

详细介绍

DICOM MCP服务器-医学成像AI集成🏥

![License: MIT](https://opensource.org/licenses/MIT) ![MCP Python SDK](https://github.com/modelcontextprotocol/python-sdk) ![FastMCP](https://github.com/jlowin/fastmcp) ![MCP JAM](https://www.mcpjam.com)

此版本使用 MCP堵塞 专门用于开发、测试和LLM集成。请注意,如果您使用的是Cursor IDE或其他IDE,则可以在某些情况下配置IDE以访问服务器,例如 ~/.cursor/mcp.json等等。看 了解详情。

使AI助手能够使用标准模型上下文协议(MCP)在PACS上查询、读取和移动数据,Orthanc作为参考实现。您可以使用自己的APIKEY(例如用于ChatGPT),并在本地运行它,以使用ChatGPT作为LLM进行开发。还集成了kubectl和迷你RIS数据库。

✨ 核心能力

dicom-mcp 提供工具以:

  • 🔍 查询DICOM:使用各种标准搜索患者、研究、系列和实例
  • 📄 阅读DICOM报告(PDF):检索包含封装PDF的DICOM实例(如临床报告)并提取文本内容
  • 📄 创建放射学报告:生成PDF格式的放射学报告并附加到PACS
  • ➡️ 发送DICOM图像:将系列或研究发送到其他DICOM目的地,例如用于图像分割、分类等的AI端点。
  • ⚙️ Contoso集成:查询和管理Contoso资源(患者、影像研究、服务请求等)
  • ⚙️ 迷你RIS:管理放射科医嘱、工作列表和报告工作流
  • ⚙️ MWL/MPPS:模态工作表和模态执行程序步骤服务
  • ⚙️ 公用事业:管理连接、切换服务器并了解查询选项

🚀 快速开始

📥 安装

通过克隆存储库使用pip进行安装:

# Clone and set up development environment
gh repo clone sscotti/dicom-mcp
cd dicom-mcp

# Create and activate virtual environment
python3 -m venv venv
source venv/bin/activate

# Install with dependencies
pip install -e ".[dev]"

⚙️ 配置

dicom-mcp 需要一个YAML配置文件(configuration.yaml 或类似)定义DICOM节点并调用AE标题。调整配置或保持原样,以与示例Orthanc服务器兼容。

# DICOM nodes configuration
nodes:
  main:
    host: "localhost"
    port: 4242
    ae_title: "ORTHANC"
    description: "Local Orthanc DICOM server (Primary)"
  
  secondary:
    host: "localhost"
    port: 4243
    ae_title: "ORTHANC2"
    description: "Local Orthanc DICOM server (Secondary)"

current_node: "main"
calling_aet: "MCPSCU"

# FHIR server configuration (optional)
# You can configure multiple FHIR servers and switch between them
fhir_servers:
  firely:
    base_url: "https://server.fire.ly"
    description: "Firely FHIR Test Server (public, no API key needed)"
  
  siim:
    base_url: "https://hackathon.siim.org/fhir"
    api_key: "${SIIM_API_KEY}"  # Set in .env file
    description: "SIIM Hackathon FHIR server"
  
  # Uncomment to use a local HAPI FHIR server
  hapi_local:
    base_url: "http://localhost:8080/fhir"
    description: "Local HAPI FHIR server"

current_fhir: "hapi_local"  # Active FHIR server: firely, siim, or hapi_local, make sure to start the local hapi fhir server before starting the MCP server

# The server will expose all DICOM tools and FHIR tools via standard MCP protocol

# Mini-RIS MySQL database configuration (optional)
mini_ris:
  host: "localhost"
  port: 3306
  user: "orthanc_ris_app"
  password: "${MINI_RIS_DB_PASSWORD}"
  database: "orthanc_ris"
  pool_size: 5
\[!警告\] DICOM-MCP不适用于临床使用,也不应与实时医院数据库或包含患者敏感数据的数据库连接。这样做可能会导致患者数据丢失,以及患者数据泄露到互联网上。DICOM-MCP可以与本地托管的开放权重LLM一起使用,以实现完全的数据隐私。 \[!注意\] 此项目使用 MCP堵塞 用于开发、测试和LLM集成需求。这 mcp-config.example.json 文件以模板的形式提供,其中包含可以根据设置进行调整的相对路径。可以将其作为JSON导入MCPJAM以配置接口。

Docker容器设置(Orthancs、kubectl、PostGres和MySQL)

docker-compose up -d
dotenv run -- pytest # uploads dummy pdf data to ORTHANC server

UI位于 https://localhost:8042https://localhost:8043,请注意,仓库配置了TLS证书,因此是https。

HAPI kubectl将在 http://localhost:8080/fhir

Contoso服务器指南 详细的配置选项,包括Firely测试服务器和SIIM集成。

🔌 与MCP Jam一起使用(推荐)

MCP堵塞 是测试和探索DICOM MCP服务器的替代工具。它提供了一个web界面 访客模式 无需任何设置即可立即进行测试。对于自包含的解决方案,请使用上面的自定义Web UI!

备注:MCP Jam Guest Mode可能对某些功能(如资源面板)有限制。资源仍然可以通过 list_saved_resourcesget_saved_resource 在访客模式下工作的工具。要获得完整的资源面板支持,您可能需要使用一个帐户。

启动MCP堵塞:

# Navigate to your dicom-mcp directory
cd /path/to/dicom-mcp

# Activate your virtual environment
source venv/bin/activate

# Start MCP Jam (use latest or beta)
npx -y @mcpjam/inspector@latest
# or
npx -y @mcpjam/inspector@beta

在MCP Jam中设置服务器:

  1. 点击“访客模式” 在MCP Jam界面中(无需帐户)
  2. 手动添加服务器 使用这些设置,或导入 mcp-config.example.json 作为模板:

- 服务器名称: DICOM MCP - 命令: {path_to_venv}/bin/python (例如。, venv/bin/python 或绝对路径) - 参数: -m dicom_mcp configuration.yaml --transport stdio - 环境变量: - 姓名: PYTHONPATH - 价值: src (相对)或绝对路径 src 目录 - 工作目录:指向dicom mcp项目根目录的路径

示例配置(macOS/Linux):

  • 命令: /absolute/path/to/dicom-mcp/venv/bin/python
  • 参数: -m dicom_mcp configuration.yaml --transport stdio
  • 环境变量: PYTHONPATH = /absolute/path/to/dicom-mcp/src

MCP干扰接口:

MCP JAM Interface

在MCP Jam中配置LLM:

  1. 设置 标签
  2. 为LLM提供程序添加API密钥:

- 开放人工智能 -适用于GPT-4、GPT-4o、o1等。 - Anthropic -克劳德3.5十四行诗、克劳德·奥普等。 - 谷歌双子座 -适用于Gemini 2.5 Pro、Flash等。 - 深度求索 -对于Deepseek聊天,Reasoner - 奥拉玛 -自动检测本地模型(不需要API密钥)

  1. 操场 选项卡开始与DICOM服务器聊天

在光标IDE中使用OpenAI API键:

备注:对于MCP服务器的开发和测试, 建议使用MCP堵塞Cursor更适合使用上下文中可用的MCP工具进行通用代码开发。

如果您想将Cursor IDE与ChatGPT一起用于编码任务:

  1. 从获取API密钥 .env (如果存储在那里):
   grep OPENAI_API_KEY .env
  1. 在游标中配置:

- 打开光标设置(Cmd+Shift+J/Ctrl+Shift+J) - 引导到 模型 部分 - 粘贴您的OpenAI API密钥并验证 - 选择您喜欢的GPT型号(GPT-4、GPT-4 Turbo等)

备注:Cursor要求在其设置UI中输入API键-它不会自动从 .env 文件夹。从您的 .env 文件并将其粘贴到Cursor的设置中。

这为Cursor中的ChatGPT驱动的AI提供了持久的系统提示和完整的代码库集成。看 CURSOR_SETUP.md 有关完整的设置说明。

系统提示:

为了更好的LLM交互,您可以配置系统提示:

  • 在MCP堵塞中:从以下位置复制内容 system_prompt.txt 在启动新会话时,将其添加到Playground选项卡中的系统提示字段中。
  • 在游标IDE中:在Cursor的设置中设置系统提示(在会话之间持续)-请参阅 CURSOR_SETUP.md 了解详情。
  • 通过工具:使用 get_system_prompt 工具在任一界面中自动检索提示文本。
备注:MCP Jam Guest模式可能无法在会话之间持续显示系统提示。游标IDE设置保持不变。保持 system_prompt.txt 方便或使用 get_system_prompt 快速访问工具。

MCP堵塞特征:

  • 访客模式:无需帐户-立即开始测试
  • 漂亮的UI:带有AI提供商徽标的现代界面
  • 轻松设置:简单的服务器配置,表单清晰
  • 实时测试:交互式工具执行,立即见效
  • 全部功能:访问所有DICOM、Contoso、RIS和报告工具
  • LLM 游乐场:使用各种LLM测试DICOM服务器
  • 社区驱动:积极开发,定期更新

资源说明:资源已在FastMCP注册,可通过以下方式访问:

  • 工具 (在访客模式下工作):使用 list_saved_resourcesget_saved_resource 访问资源的工具
  • 资源面板 (可能需要帐户):本机MCP资源协议-如果您的MCP Jam模式支持,则在资源选项卡中可见

MCP堵塞选项卡:

  • 服务器选项卡:管理并连接到DICOM MCP服务器
  • 工具选项卡:以交互方式浏览和测试所有可用工具
  • 游乐场选项卡:使用配置的LLM与DICOM服务器聊天
  • 设置标签:配置API密钥和LLM提供程序

可用的DICOM工具:

  • verify_connection -测试DICOM连接
  • list_dicom_nodes -显示已配置的服务器
  • query_patients -寻找患者
  • query_studies -按标准查找研究
  • query_series -在研究中查找系列
  • query_instances -查找单个DICOM图像
  • extract_pdf_text_from_dicom -从DICOM PDF中提取文本
  • move_series / move_study -传输DICOM数据
  • switch_dicom_node -更改活动服务器
  • get_attribute_presets -显示查询详细级别

可用的kubectl工具(当配置了kubectl时):

  • verify_fhir_connection -测试Contoso服务器连接
  • list_fhir_servers -列出已配置的Contoso服务器
  • switch_fhir_server -在不重新启动的情况下切换到不同的Contoso服务器
  • fhir_search_patient -搜索患者资源
  • fhir_search_imaging_study -搜索Imaging学习资源
  • fhir_read_resource -按类型和ID读取任何Contoso资源
  • fhir_create_resource -创建新的Contoso资源(患者、想象研究、服务请求等)
  • fhir_update_resource -更新现有的Contoso资源

FHIR_SERVERS.md 有关配置详细信息。

迷你RIS工具(配置MySQL时):

  • list_mini_ris_patients -浏览存储在迷你RIS模式中的患者人口统计信息(按MRN或姓名过滤)
  • create_mwl_from_order -从现有的迷你RIS订单创建DICOM模态工作表条目
  • create_synthetic_cr_study -生成合成CR DICOM图像并发送到PACS(虚拟模态)

放射科报告工具(配置MySQL时):

  • get_study_for_report -检索放射学报告的完整研究信息
  • list_radiologists -列出有资质的放射科医生
  • create_radiology_report -创建包含发现和印象的结构化放射学报告
  • generate_report_pdf -从报告生成专业PDF(base64编码)
  • attach_report_to_pacs -将报告PDF作为DICOM封装PDF上传到PACS

迷你RIS数据库架构:

mini_ris.sql schema提供了一个完整的放射学信息系统,包括:

  • 核心实体:患者、提供者、遭遇、订单、影像学研究、报告
  • 参考表格:

- dicom_tags -用于MWL/MPPS验证的50个基本DICOM标签定义 - procedures -14个CR/XR程序代码,带有典型视图和图像计数 - modalities -标准DICOM模态代码 - body_parts -用于成像的解剖区域

  • MWL/MPPS支持:模态工作表和模态执行程序步骤跟踪表

MCP命名方案:

迷你RIS中的所有数据都使用一致的“MCP-”前缀/后缀命名方案,以清楚地将其标记为 开发/合成数据:

  • MRN: MCP-MRN-0001
  • 登录号: MCP-ACC-2025-0001
  • 患者姓名: Johnson-MCP^Alex (DICOM格式)
  • 医生姓名: MCP-Emily^Chen (DICOM格式)

MCP_NAMING_SCHEME.md 了解完整细节。

设置:

  1. 启动MySQL服务:
   docker compose up -d mysql
  1. 初始化数据库(首次启动时自动或手动):
   docker exec -i dicom-mcp-mysql-1 mysql -uorthanc_ris_app -porthanc_ris_app orthanc_ris **

**特征:**

- ✅ **LLM技术聊天** -与OpenAI集成的智能聊天,用于自然语言查询
- ✅ **工具浏览器** -浏览并探索所有28个可用的DICOM/QUIPL/RIS工具
- ✅ **及时管理** -编辑并保存针对医学成像优化的系统提示
- ✅ **工具执行** -直接从聊天或UI执行工具
- ✅ **医学影像焦点** -为DICOM和Contoso工作流程定制
- ✅ **独立** -存储库中的所有内容,无需外部服务
- ✅ **深色主题** -美观、现代的深色用户界面
- ✅ **节省的资源** -整理好的参考文件(例如Orthanc OpenAPI)位于 `resources/manifest.yaml`,可通过资源面板访问或新建 `list_saved_resources` / `get_saved_resource` MCP工具。

**LLM集成:**

通过设置API密钥启用OpenAI支持的聊天:

export OPENAI_API_KEY="your-api-key-here"


法学硕士将:

- 了解有关医学影像的自然语言查询
- 自动选择并执行适当的DICOM/QUE工具
- 将结果格式化为临床可读格式
- 使用医学成像系统提示进行上下文感知响应

**查询示例:**

- “列出所有可用的DICOM节点”
- “找到姓史密斯的病人”
- “给我看看上周的学习”
- “验证与PACS的连接”
- “有哪些工具可用于Contoso?”

## 🙏 致谢

- 使用 [FastMCP](https://github.com/jlowin/fastmcp) -构建MCP服务器的快速Python方法
- 使用 [Pynetdicom](https://github.com/pydicom/pynetdicom) 用于DICOM网络通信
- 用途 [pypdf](https://pypi.org/project/pypdf/) 用于PDF文本提取

目录标签

目录标签

PythonCursor云端部署医学影像本地部署AI集成DICOMFHIR放射学报告

支持客户端

Cursor

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

api-key

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

29

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdioapi-key部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP