trackmcp
Back to directory
zhaoyouj

mcp-slicer

View on GitHub

A Model Context Protocol server for 3D Slicer integration

38 stars PythonOthers Updated Aug 13, 2026

Documentation

MCP-Slicer - 3D Slicer Model Context Protocol Integration

English | 简体中文

Python Version
License: MIT
PyPI version
PyPI - Downloads

MCP-Slicer connects 3D Slicer with model clients like Claude Desktop or Cline through the Model Context Protocol (MCP), enabling direct interaction and control of 3D Slicer. This integration allows for medical image processing, scene creation, and manipulation using natural language.

Features

1. list_nodes: List and filter Slicer MRML nodes and view their properties

2. execute_python_code: Execute Python code in the Slicer environment

3. capture_screenshot: Capture real-time screenshots of Slicer views

    Installation

    Prerequisites

    • 3D Slicer 5.8 or newer
    • Python 3.13 or newer
    • uv package manager

    If you're on Mac, please install uv as

    bash
    brew install uv

    On Windows

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

    and then

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

    Otherwise installation instructions are on their website: Install uv

    ⚠️ Please install UV first

    Claude for Desktop Integration

    Go to Claude > Settings > Developer > Edit Config > claude_desktop_config.json to include the following:

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

    Cline Intergration

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

    Usage

    Check Claude Settings

    Make sure you see the corresponding slicer tools added to the Claude Desktop App

    Open Slicer Web Server

    1. Open the Slicer Web Server module,

    2. ensure the required interfaces are checked,

    3. then start the server

    Examples

    - list_nodes

    > What Markups nodes are in the Slicer scene now, list their names, what is their length if it is a line, and what is its angle if it is an angle

    - execute python code

    > Draw a translucent green cube of 8 cm in the Slicer scene, mark its vertices, and then draw a red sphere inscribed in it.

    - capture_screenshot

    > Capture the current state of Slicer to provide visual feedback to AI

    Usage examples:

    • `capture_screenshot()` - Capture full application window
    • `capture_screenshot(view_type="slice", view_name="red")` - Capture Red slice view
    • `capture_screenshot(view_type="3d", camera_axis="A")` - Capture 3D view from anterior

    This enables a complete REACT loop where AI can:

    1. Reason about what to do

    2. Act using `execute_python_code`

    3. Observe the result using `capture_screenshot`

    Technical Details

    Utilizes existing Slicer Web Server interfaces. For technical details, please see Slicer web server user guide

    Limitations & Security Considerations

    • The `execute_python_code` tool allows running arbitrary Python code in 3D Slicer, which is powerful but potentially dangerous.

    ⚠️ Not recommended for production use.

    • Complex operations may need to be broken down into smaller steps.

    Contributing

    Contributions are welcome! Feel free to submit Pull Requests.

    Disclaimer

    This is a third-party integration project, not developed by the 3D Slicer team.

    Frequently asked questions

    What is mcp-slicer?

    mcp-slicer is A Model Context Protocol server for 3D Slicer integration

    How do I install mcp-slicer?

    Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

    Is mcp-slicer open source?

    Yes — it is hosted on GitHub at https://github.com/zhaoyouj/mcp-slicer and has 38 stars.

    Related MCP tools

    Run your own MCP server? See who uses it and what to fix.

    Measure it with TrackMCP