返回市场
MCP切片器

MCP切片器

作者:zhaoyouj19 星标更新:2025-11-05

项目介绍

<img src="https://github.com/zhaoyouj/mcp-slicer/blob/main/docs/images/logo.jpeg?raw=true" width="160" alt="logo">

MCP-Slicer - 3D Slicer 模型上下文协议集成

English | 简体中文

Python 版本 许可证: MIT PyPI 版本 PyPI - 下载量

MCP-Slicer 将 3D Slicer 与模型客户端(如 Claude Desktop 或 Cline)通过模型上下文协议(MCP)连接起来,实现了对 3D Slicer 的直接交互和控制。这种集成允许使用自然语言进行医学图像处理、场景创建和操作。

功能

  1. list_nodes: 列出并筛选 Slicer MRML 节点,并查看它们的属性

  2. execute_python_code: 在 Slicer 环境中执行 Python 代码

  3. capture_screenshot: 捕获 Slicer 视图的实时截图

    • 整个应用程序窗口(包括模块面板)
    • 单个切片视图(红/黄/绿)
    • 3D 渲染视图
    • 支持完整的 REACT 循环,带有视觉反馈

安装

先决条件

  • 3D Slicer 5.8 或更高版本
  • Python 3.13 或更高版本
  • uv 包管理器

如果你使用的是 Mac,请安装 uv:

brew install uv

在 Windows 上:

powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

然后

set Path=C:\Users\nntra\.local\bin;%Path%

否则,请参阅其网站上的安装说明:安装 uv

⚠️ 请先安装 UV

Claude Desktop 集成

前往 Claude > 设置 > 开发者 > 编辑配置 > claude_desktop_config.json,添加以下内容:

{
  "mcpServers": {
    "slicer": {
      "command": "uvx",
      "args": ["mcp-slicer"]
    }
  }
}

Cline 集成

{
  "mcpServers": {
    "slicer": {
      "command": "uvx",
      "args": ["mcp-slicer"]
    }
  }
}

使用方法

检查 Claude 设置

<img width="1045" alt="Image" src="https://github.com/zhaoyouj/mcp-slicer/blob/main/docs/images/claude_check.png?raw=true" /> 确保你在 Claude Desktop 应用中看到已添加的 slicer 工具 <img width="300" alt="Image" src="https://gips2.baidu.com/it/u=2993368654,477663930&fm=3081&app=3081&f=PNG?w=537&h=205" /> <img width="300" alt="Image" src="https://github.com/zhaoyouj/mcp-slicer/blob/main/docs/images/tools_check.png?raw=true" />

启动 Slicer Web 服务器

  1. 打开 Slicer Web 服务器模块,
  2. 确保选中所需的接口,
  3. 然后启动服务器
<img width="1045" alt="Image" src="https://github.com/zhaoyouj/mcp-slicer/blob/main/docs/images/start_slicer_web_server.png?raw=true" />

示例

- list_nodes

当前 Slicer 场景中的 Markups 节点有哪些?列出它们的名字,如果是线,则列出其长度;如果是角度,则列出其角度。

<img width="1045" alt="Image" src="https://github.com/zhaoyouj/mcp-slicer/blob/main/docs/images/example_list_nodes_en.png?raw=true" />

- execute python code

在 Slicer 场景中绘制一个透明的绿色立方体,边长为 8 厘米,标记其顶点,然后在其内部绘制一个红色球体。

<img width="1045" alt="example_code_execute_en" src="https://github.com/zhaoyouj/mcp-slicer/blob/main/docs/images/example_code_execute_en.png?raw=true" />

- capture_screenshot

捕获当前 Slicer 状态以提供给 AI 的视觉反馈

使用示例:

  • capture_screenshot() - 捕获整个应用程序窗口
  • capture_screenshot(view_type="slice", view_name="red") - 捕获红切片视图
  • capture_screenshot(view_type="3d", camera_axis="A") - 从前方捕获 3D 视图

这支持一个完整的 REACT 循环,其中 AI 可以:

  1. 推理要做什么
  2. 行动使用 execute_python_code
  3. 观察结果使用 capture_screenshot

技术细节

利用现有的 Slicer Web 服务器接口。有关技术细节,请参阅 Slicer Web 服务器用户指南

限制及安全注意事项

  • execute_python_code 工具允许在 3D Slicer 中运行任意 Python 代码,虽然功能强大但可能存在危险。

    ⚠️ 不建议用于生产环境。

  • 复杂的操作可能需要分解为更小的步骤。

贡献

欢迎贡献!请随意提交拉取请求。

免责声明

这是一个第三方集成项目,不是由 3D Slicer 团队开发的。