dcc-mcp-slicer
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@dcc-mcp-slicercreate a 64³ sphere phantom and render a PNG preview"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
dcc-mcp-slicer
A typed 3D Slicer adapter for DCC MCP. Create bounded mathematical volumes, material phantoms and sphere meshes, inspect and edit them, then export NRRD/STL or round-trip a native MRB scene bundle through MCP. Configure native cameras and orthogonal slices, then render bounded PNG previews.
Current candidate: trusted local synthetic workflows with exact dcc-mcp-core 0.20.41 / dcc-mcp-server 0.20.41 dependencies. Native Slicer, graphical camera/render and native MCP cancellation acceptance must be rerun for this candidate. The earlier Linux native evidence used Slicer 5.10.0 / Python 3.12.10 / Core and server 0.20.39; it does not qualify the upgraded runtime. See the runtime upgrade and rollback record. Synthetic data only; no patient data, medical interpretation, clinical claims, DICOM import or arbitrary scene-file loading.
Quick start
Install this checkout with Slicer's bundled PythonSlicer, not system Python:
/path/to/Slicer/bin/PythonSlicer -m pip install /path/to/dcc-mcp-slicerSet up a dedicated, trusted artifact directory, then run in a fresh Slicer Python console:
import os
from dcc_mcp_slicer import start_server
os.environ["DCC_MCP_SLICER_WORKSPACE"] = "/absolute/existing/synthetic-artifacts"
server = start_server() # OS-assigned loopback port; gateway disabled by default
print(server.mcp_url)Keep server alive. Call server.stop() from the same application/main thread
to shut down. A stopped server/dispatcher is terminal; call start_server() again
to create a fresh instance. See installation and removal, architecture,
and reproducible validation.
Related MCP server: rupa3d
MCP workflow
Initialize a normal MCP Streamable HTTP client at the printed URL:
search_skills({"query":"slicer synthetic"})load_skill({"skill_name":"slicer-scene"})Call the returned canonical tool slug, for example:
slicer_scene__create_phantom({"size":64})Use returned node IDs with the edit/export tools
Poll Core's
jobs_get_statuswith the returned job ID for asynchronous calls
Tool | Result |
| Bounds and supported formats without host access |
| Bounded synthetic-node metadata and native execution-thread evidence |
| 8–128³ int16 mathematical sphere volume |
| Centered 16–128³ sphere with sphere/cylinder inclusions; four scalar materials |
| Polygonal sphere with bounded radius and resolution |
| Native geometry replacement, RGB color and opacity |
| New NRRD or STL artifact; existing files rejected |
| Native synthetic-only MRB scene and integrity receipt |
| Additive import of an unchanged locally saved MRB; existing nodes retained |
| Six deterministic model-facing camera directions and bounded zoom |
| Synthetic volume, Red/Yellow/Green view, orthogonal orientation and offset |
| Native 3D/slice render buffer, 128–2048 px PNG, decoded before publication |
Prefix each local tool name with slicer_scene__. Core may advertise shortened
aliases or paginate/cap tool listings; the load_skill response contains canonical
registered slugs. This package does not implement its own MCP wire protocol.
Boundaries
MRML, VTK and Qt calls execute on the Slicer application thread
Startup rejects unsupported Slicer versions and missing workspaces. Synthetic node creation/import is capped at 100 nodes
Node readback includes a session-local revision. Pass
expected_revisionto sphere edit/export to reject stale requests; reacquire node IDs after reloadOutput paths are plain basenames in the configured workspace; traversal, symlinks and overwrite are rejected. Native writes use private staging and exclusive atomic publication; failed/cancelled exports do not publish partial files
Only adapter-marked synthetic nodes can be edited/exported; scene saves reject non-synthetic storable data, including hidden storable nodes
MRB imports have size, archive-path, member-type and external-reference checks
The workspace must be operator-controlled and trusted. A hash receipt detects accidental changes; it does not authenticate third-party content
Native save/load/export calls are asynchronous but cannot be interrupted after entering Slicer. Poll the existing job; never replay a timed-out mutation
Trusted loopback clients can also access Core administration/discovery surfaces. This adapter is not a sandbox for hostile clients or third-party skills
PNG rendering requires a working native graphics context and active graphical layout. This captures only Slicer view buffers, never the desktop or other apps
Windows/macOS and Slicer versions outside the 5.10 family are not supported by this profile. Earlier native acceptance used 5.10.0 with runtime 0.20.39; the 0.20.41 candidate still requires the same native acceptance procedure
Development
python -m pip install -e '.[dev]'
python -m ruff check src tests scripts
python -m ruff format --check src tests scripts
python -m pytest
python -m build --outdir /tmp/dcc-mcp-slicer-distCI runs source, closed input/typed output schemas, the official MCP SDK, real loopback HTTP and fake-timer tests. Real Slicer acceptance is a separate executable smoke; it is not silently replaced by mocks. No package release or automated publishing workflow is enabled.
This server cannot be deployed
Maintenance
Related MCP Connectors
Generate, edit, and deploy immersive 3D/WebGL web projects from any MCP assistant.
Create, inspect, validate, and save editable 3D building scenes with Pascal's hosted MCP server.
Create, edit, render, save, and export voxel models with interactive 3D previews.
Render, verify, describe, and safely edit Mermaid diagrams through MCP.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables AI agents and software to create, edit, inspect, validate, and export CAD geometry through MCP using backend-neutral typed operations, with FreeCAD/OpenCascade as the authoritative B-rep backend and JSCAD preview.1Apache 2.0
- AlicenseAqualityCmaintenanceEnables AI agents and MCP clients to perform 3D asset creation and verification: exact b-rep CAD, GLB validation with embedded certificates, mesh inspection, and physics scenes, with most tools running without Blender.3645 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to procedurally generate, transform, inspect, and export 3D meshes and scenes through MCP tools.MIT
- AlicenseNot gradedqualityBmaintenanceEnables people and general-purpose AI agents to inspect, model, edit, verify, and export local 3D projects through MCP tools, including print preparation, without requiring a hosted 3D service key.3MIT