OrcaSlicer MCP (ShreddyKrueger75/claude-orcaslicer-mcp) is an MCP server listed on the M8ven Trust Index. It scores 54 out of 100, grade D. It declares 16 tools. No publisher has claimed this listing.

D
Caution
54/100

OrcaSlicer MCP

Enables headless slicing with OrcaSlicer, preset management, G-code analysis, and printer control over LAN for Klipper, OctoPrint, Prusa, Duet, Elegoo, and Bambu printers.

Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

Code Verified⚡ Live Monitored: not connected

Verified is a snapshot. Live keeps it current, and builds your track record.

⚡ Connect GitHub → continuous verification on every pushwhy connect →

Who stands behind it

ShreddyKrueger75

Source: Glama

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →

Install from

The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.

// key findings
No credential exfiltration, no sensitive file access, no obfuscation
Static analysis found nothing flowing your secrets to unexpected places.
Open source with a license and README
Anyone can audit the code, the license is declared, and the publisher documents what it does.
🔐
You'll be asked for 2 credentials: PRINTER_API_KEY, PRINTER_PASSWORD
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// tools this server exposes16 tools

These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.

list_profiles

List OrcaSlicer presets. kind: machine | process | filament | None (all). search: optional case-insensitive substring filter on the name. Returns names with their source (system or user).

get_profile

Read a preset. resolved=True merges the full inheritance chain so you see the effective settings; resolved=False shows only the preset's own overrides.

update_profile

Set values on a USER preset (system presets are read-only — copy them in the OrcaSlicer GUI first). Only pass the keys you want to change. Note: quit the OrcaSlicer GUI first or it may overwrite the edit on exit.

gui_project_state

What's open in the OrcaSlicer GUI right now: source file plus the printer/process/filament presets and key setting overrides the user chose. ALWAYS check this before choosing slicing presets yourself — if the user has the part open, their settings win.

slice_model

Slice an STL/3MF/STEP file to G-code headlessly using named OrcaSlicer presets (see list_profiles). Any preset or bed_type left unset defaults to the project currently open in the OrcaSlicer GUI (see gui_project_state) — the user's on-screen choices win over guesses. Returns G-code path(s) plus nume

analyze_gcode

Parse an Orca-sliced G-code file: print time, filament use, layer count, the actual commanded temperatures (M109/M190), bed type, and profile names.

printer_setup

Find out which printer we can talk to, and what's still needed.

configure_printer

Point the server at a printer, verify it answers, and save it.

printer_status

Live printer status: normalized state (idle/heating/printing/paused/ complete/stopped/error/busy), temps, layer progress. Works with any supported printer; `native_state` keeps the firmware's own wording.

printer_snapshot

Grab a still from the printer's camera — use it to check first-layer adhesion and mid-print health remotely. Not every printer has one.

printer_attributes

Printer identity and firmware info — useful when debugging protocol quirks or confirming the server is talking to the right machine.

printer_files

List G-code files stored on the printer. Some firmwares don't allow it (notably the Elegoo Centauri Carbon CC1).

upload_gcode

Upload a G-code file to the printer. Does NOT start printing — use start_print for that.

start_print

Start printing a file already on the printer (see upload_gcode).

print_control

Pause, resume, or stop the current print. action: pause|resume|stop. resume only acts on a paused print — never on a stopped or errored job, where the nozzle may be sitting in a failure.

watch_print

Watch a running print and return once something worth knowing happens — so you can follow a long job without spamming printer_status.

// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
configPRINTER_SNAPSHOT_URLOctoPrint webcam URL (default http://<host>:8080/?action=snapshot)
configORCASLICER_MCP_CONFIG~/.config/orcaslicer-mcp/printer.json (written 0600)
configPRINTER_TYPEread from your OrcaSlicer machine preset's host_type
configPRINTER_HOSTthe print_host saved in your OrcaSlicer machine preset
configPRINTER_PORT, PRINTER_API_KEY, PRINTER_USER, PRINTER_PASSWORD, PRINTER_SERIAL, PRINTER_ACCESS_CODE per-protocol; also readable from the preset or configure_printer
🔐 secretPRINTER_API_KEYPRINTER_PORT, , PRINTER_USER, PRINTER_PASSWORD, PRINTER_SERIAL, PRINTER_ACCESS_CODE per-protocol; also readable from the preset or configure_printer
configPRINTER_USERPRINTER_PORT, PRINTER_API_KEY, , PRINTER_PASSWORD, PRINTER_SERIAL, PRINTER_ACCESS_CODE per-protocol; also readable from the preset or configure_printer
🔐 secretPRINTER_PASSWORDPRINTER_PORT, PRINTER_API_KEY, PRINTER_USER, , PRINTER_SERIAL, PRINTER_ACCESS_CODE per-protocol; also readable from the preset or configure_printer
configPRINTER_SERIALPRINTER_PORT, PRINTER_API_KEY, PRINTER_USER, PRINTER_PASSWORD, , PRINTER_ACCESS_CODE per-protocol; also readable from the preset or configure_printer
configPRINTER_ACCESS_CODEPRINTER_PORT, PRINTER_API_KEY, PRINTER_USER, PRINTER_PASSWORD, PRINTER_SERIAL, per-protocol; also readable from the preset or configure_printer
configORCA_SLICER_BINthe standard OrcaSlicer install path for your OS
configORCA_SLICER_DATAOrcaSlicer's config dir (presets) for your OS
configDEFAULT_BED_TYPETextured PEI Plate
// quality suggestions

Tool annotations

No tools have read-only/destructive annotations

Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.

All four hints declared on every tool

16/16 tools missing one or more hints — list_profiles (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_profile (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); update_profile (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +13 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.

For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.

Destructive tools are labelled

1 tool perform destructive updates without destructiveHint — slice_model deletes at line 425 (shutil.rmtree(workdir, ignore_errors=True))

Add destructiveHint:true to any tool whose handler calls .delete(), .upsert(), .update(), unlink, rm, DELETE, DROP, REPLACE INTO, or any operation that overwrites existing data.

Tool inputs are validated

15/16 tool handlers declare input schemas (94%)

Declare an inputSchema with zod/joi/yup on every tool definition.

Tool handlers catch errors

11/16 tool handlers wrap calls in try/catch (69%)

Wrap each tool handler body in try/catch and return a structured error response.

Tests exist

No test files found

Add tests that exercise each declared tool.

Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 6 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Verified](https://m8ven.ai/badge/mcp/shreddykrueger75/claude-orcaslicer-mcp?variant=verified)](https://m8ven.ai/mcp/shreddykrueger75/claude-orcaslicer-mcp)
Shows verification status without the grade. Want the grade badge instead? Remove ?variant=verified from the URL.
commit: 2bf610da4dda87216031b30004de41acfaaadf67
code hash: 3fb3893f61a57e30ea20accb8ea78eac8c73445d823ce453aff5cd514a1e2b4c
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client