Skip to main content

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:

  1. 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-api branch from source.
  2. 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.

Quickstart

  1. Install and launch the OrcaSlicer MCP build.

  2. In OrcaSlicer: Preferences → 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".)

  3. Add the server to your MCP client config (Claude Desktop claude_desktop_config.json, or a project .mcp.json for Claude Code):

    {
      "mcpServers": {
        "orcaslicer": {
          "command": "uvx",
          "args": ["orcaslicer-mcp"],
          "env": {
            "ORCA_API_TOKEN": "<token from Preferences>"
          }
        }
      }
    }
    

    ORCA_API_URL defaults to http://127.0.0.1:13130 — set it only if you changed the port, or run OrcaSlicer on another machine (with LAN access enabled there).

  4. Restart your client and ask: “Load benchy.stl, slice it with the current profile, and tell me the print time.”

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, or blocked.
  • remember(note, scope) — persist machine/user/project facts for future sessions as plain local files in ~/.orcaslicer-mcp/notes/ (relocatable via ORCA_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 binaries of the OrcaSlicer MCP build are rolling out per-platform. 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

orcaslicer_mcp-0.1.0.tar.gz (234.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

orcaslicer_mcp-0.1.0-py3-none-any.whl (135.4 kB view details)

Uploaded Python 3

File details

Details for the file orcaslicer_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: orcaslicer_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 234.6 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

Hashes for orcaslicer_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2b8e7ea65bfb5f044c7dc222102667bc8544ba5f89e6ebb39667ad7de7098a47
MD5 d3a1e78343fa1bb21f35e85886e925ed
BLAKE2b-256 5d6d3f79af8c6990ca9352672332b9785048aa04ca01bc2e64d2c40aed4bb610

See more details on using hashes here.

File details

Details for the file orcaslicer_mcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: orcaslicer_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 135.4 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

Hashes for orcaslicer_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8dcf018fc0c02bf58245ad4e8678cb51cef9802384c3e87cd9250e3da717b229
MD5 796387884ec42e21bee6c657b6208932
BLAKE2b-256 bb7cbb17acacee80b2985300bfaf630f49b9cb5f05264b917d493826eef4fbe0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page