OrcaSlicer MCP — drive OrcaSlicer from Claude or any MCP client: load models, tune settings, slice, analyze
Project description
OrcaSlicer MCP
Drive OrcaSlicer with AI. OrcaSlicer MCP is an MCP server that lets Claude (Desktop or Code — or any MCP client) operate a real, running OrcaSlicer: load models, arrange the plate, tune settings, slice, and analyze the result — live, with every change visible in the GUI.
The slicer stays authoritative and on your machine. The server contains no LLM and makes no cloud calls; it talks only to OrcaSlicer on localhost (or a host you explicitly allow).
How it works
Two pieces:
- The OrcaSlicer MCP build of OrcaSlicer — OrcaSlicer 2.3.2 with an embedded local control API (token-authenticated, localhost-only by default). Get it from the releases page; if no binary is up for your platform yet, build the
remote-apibranch from source. - This package (
orcaslicer-mcp) — the MCP server that connects your AI client to that build.
Stock OrcaSlicer does not have the control API — the MCP server requires the build above.
⚠️ Don't update from inside the app. This build is based on OrcaSlicer 2.3.2, so OrcaSlicer's own "new version available" prompt will offer to "upgrade" you — but that installs stock OrcaSlicer and removes the control API, breaking OrcaSlicer MCP. Always click Skip this Version (or Cancel) on that prompt. New MCP-enabled builds come only from the releases page.
Quickstart
You'll need uv installed (it provides the uvx command that runs the server) — one line: curl -LsSf https://astral.sh/uv/install.sh | sh on macOS/Linux, or irm https://astral.sh/uv/install.ps1 | iex in PowerShell on Windows.
-
Install and launch the OrcaSlicer MCP build, and complete the one-time first-run setup (pick your printer). On a fresh install OrcaSlicer may show a "Bambu Network Plug-in Required" dialog — click Skip for Now; that plug-in is only for Bambu cloud printing and isn't needed here. (The control API starts once first-run setup is finished.)
-
In OrcaSlicer: Preferences (Ctrl+P) → Remote API → Enable Remote API, then copy the API token shown on that page. (Access is localhost-only unless you also switch on "Allow LAN access".)
-
Add the server to your MCP client config (Claude Desktop
claude_desktop_config.json, or a project.mcp.jsonfor Claude Code):{ "mcpServers": { "orcaslicer": { "command": "uvx", "args": ["orcaslicer-mcp"], "env": { "ORCA_API_TOKEN": "<token from Preferences>" } } } }
ORCA_API_URLdefaults tohttp://127.0.0.1:13130— set it only if you changed the port, or run OrcaSlicer on another machine (with LAN access enabled there). -
Restart your client and ask: “Load benchy.stl, slice it with the current profile, and tell me the print time.”
Updating: OrcaSlicer's built-in "new version available" prompt points at stock OrcaSlicer — installing that way replaces this build and removes the control API. Skip it, and get new MCP-enabled builds from the releases page instead.
What Claude can do with it
- Plate & models:
load_model,list_objects,transform_object,duplicate_object,delete_object,arrange_plate,auto_orient,check_placement,diagnose_plate,get_job_status - Settings:
get_config,set_config,find_config_keys,describe_setting,search_settings,compare_settings,set_layer_height,set_height_range,set_object_config(per-object overrides) - Presets:
list_presets,select_preset,get_preset_config,edit_preset,save_preset,rename_preset,delete_preset - Slicing:
slice,slice_and_wait,apply_and_slice,cancel_slice,get_slice_status,get_slice_warnings,get_slice_breakdown(per-feature time/flow analysis),get_gcode - Live state & events:
get_status,watch_events
Settings intelligence
consult(query)— curated slicing knowledge plus your saved notes, composed per topic, symptom, or goal.check_profile_physics(changes?)— deterministic sanity gate: overlays proposed changes on the live config and runs flow/temperature/geometry/cooling math. Verdict:ok,warnings, orblocked.remember(note, scope)— persist machine/user/project facts for future sessions as plain local files in~/.orcaslicer-mcp/notes/(relocatable viaORCA_MCP_NOTES_DIR).
Plus an offline settings reference: authoritative label/tooltip/type/range/enum/default for ~800 OrcaSlicer settings, bundled with the package.
Security
- The control API binds 127.0.0.1 only by default; LAN access is an explicit opt-in in Preferences.
- Every request must carry the API token; OrcaSlicer generates it on first run and can regenerate it at any time.
- The MCP server is a local stdio process. No telemetry, no cloud.
Development
uv venv && uv pip install -e ".[dev]"
uv run pytest # unit tests (mock API) + a guarded live smoke test
The live smoke test is skipped unless ORCA_API_URL / ORCA_API_TOKEN point at a running OrcaSlicer MCP build.
Developer docs — protocol notes, design specs, verification results — live in docs/.
Status
Early public release (soft launch). The server is exercised by ~170 unit tests and real print workflows; prebuilt OrcaSlicer MCP builds are available for Windows, macOS, and Linux on the releases page. Issues and reports welcome.
License
AGPL-3.0 — the same license as OrcaSlicer, from whose source the bundled settings schema is derived. See LICENSE.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file orcaslicer_mcp-0.1.1.tar.gz.
File metadata
- Download URL: orcaslicer_mcp-0.1.1.tar.gz
- Upload date:
- Size: 235.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00038f24227d821a1809803eca39ec2ae3743da168e9f867665c27417fe0a70e
|
|
| MD5 |
406f9b8e124384733b628731edb7a3d1
|
|
| BLAKE2b-256 |
32f7186edfa8e1f7051c860e727bad40694885f6625a8dd40292c08915ecd19f
|
File details
Details for the file orcaslicer_mcp-0.1.1-py3-none-any.whl.
File metadata
- Download URL: orcaslicer_mcp-0.1.1-py3-none-any.whl
- Upload date:
- Size: 136.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5ab6cbcb57b7a3dbc81032b08789d02da3f44acea666042e8d9f7f8b8bdd8cc8
|
|
| MD5 |
febd2d3f16dddb953c5e1d1bdcf4f43c
|
|
| BLAKE2b-256 |
75b73fb670e2685d21f7e70c55aae2cc326581e85bd8e5f041040db490e3f74e
|