DICOM MCP服务器
用于DICOM连接测试的模型上下文协议(MCP)服务器。
先决条件
- 安装UV(必需):
pip install uv确保 uv 在您的系统PATH中可用,因为Claude需要它才能正确执行服务器。
安装
有两种方法可以设置服务器:
1.传统设置
安装所需的依赖项:
uv pip install mcp[cli]2.MCP安装(推荐)
要将此服务器与Claude的模型上下文协议一起使用:
mcp install server.py这将向Claude注册服务器以进行DICOM操作。
运行服务器
直接执行
uv run server.py通过克劳德
一旦通过MCP安装,服务器将在需要时由Claude自动管理。
默认情况下,服务器将在0.0.0.0:8080启动。
节点配置
服务器使用 nodes.yaml 用于存储DICOM节点配置的文件。这使您能够:
- 列出所有已配置的DICOM节点
- 使用节点名称而不是显式AE标题、IP和端口执行C-ECHO操作
- 使用不同的本地AE标题进行C-ECHO操作
nodes.yaml格式
nodes:
# Example node configuration
main_pacs:
ae_title: DESTINATION
ip: 192.168.1.100
port: 104
description: "Main hospital PACS system"
local_ae_titles:
- name: default
ae_title: MCP_DICOM
description: "Default AE title for MCP DICOM server"
- name: pacs_gateway
ae_title: PACS_GATEWAY
description: "PACS Gateway AE title"故障排除
如果遇到“spawn uv ENUENT”错误,通常表示以下情况之一:
- UV未安装或不在您的PATH中
- MCP客户端找不到Python可执行文件
解决:
- 确保UV已正确安装,并在您的PATH中:
which uv # Should show the path to UV- 确保您使用的是系统可访问的Python环境:
- 如果使用虚拟环境,请确保其已激活 - 检查Python是否在您的PATH中
- 尝试使用显式UV路径运行服务器:
/full/path/to/uv run server.py- 通过检查日志中的stderr输出来添加更多调试
用法
服务器提供了几个可以通过MCP接口使用的DICOM工具:
列出DICOM节点
从nodes.yaml文件中列出所有已配置的DICOM节点:
list_dicom_nodes()按节点名称列出的C-ECHO
使用配置中的节点名称执行C-ECHO操作:
dicom_cecho_by_name(node_name="main_pacs", local_ae_name="default")直接C-ECHO
使用显式参数执行C-ECHO操作:
dicom_cecho(remote_ae_title="REMOTE_AE", ip="192.168.1.100", port=104, local_ae_title="MCP_DICOM")