Skip to main content
Glama
Kayrim

CAD to Print MCP

by Kayrim

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
MOONRAKER_URLNoMoonraker URL, such as http://printer.local:7125
FREECAD_CMD_EXENoPath to freecadcmd.exe or FreeCADCmd if it is not on PATH
ORCA_SLICER_EXENoPath to orca-slicer.exe or orca-slicer if auto-discovery fails
MOONRAKER_API_KEYNoOptional Moonraker API key; never put it in a repository
ORCA_MCP_OUTPUT_DIRNoOptional output directory; defaults to ~/OrcaSlicer-MCP/outputs
ORCA_MCP_PROFILE_DIRNoOptional user profile directory override

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
check_setupB

Check local FreeCAD, OrcaSlicer and profile locations.

inspect_freecad_documentB

List solid objects, dimensions and validity from a FreeCAD .FCStd document.

export_freecad_stlB

Export one selected FreeCAD object to STL without altering the CAD document.

list_supported_settingsA

List the validated print settings accepted by this server.

list_user_profilesB

List local machine, process, and filament JSON presets available for slicing.

find_profilesB

Find bundled or user OrcaSlicer machine, process, or filament presets by name.

read_profileB

Read a preset's settings, with credential fields redacted.

derive_profileB

Create an isolated copy with new settings; original OrcaSlicer preset is unchanged.

preview_sliceA

Validate a slice request and show inputs, settings, and hashes without slicing.

run_sliceC

Slice with stock OrcaSlicer in a unique output folder; return artifacts and logs.

prepare_print_jobC

Export one FreeCAD solid and slice it with explicit OrcaSlicer presets.

read_gcode_summaryB

Read available print time, filament, and layer metadata from G-code or sliced 3MF.

get_printer_statusA

Read Moonraker connection and current print state.

upload_print_fileA

Upload G-code to Moonraker without starting the printer; return an upload ID.

start_uploaded_printA

Start an uploaded G-code file after checking the printer is ready and idle.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.5/5.0

Scored across 15 tools

Disambiguation4/5

Most tools have clearly distinct roles (inspect vs export vs preview vs run), but prepare_print_job strongly overlaps with export_freecad_stl + run_slice, and find_profiles vs list_user_profiles could be confused at a glance.

Naming Consistency4/5

Predominantly consistent verb_noun snake_case (check_setup, inspect_freecad_document, run_slice), with only minor deviations where the verb is omitted (get_printer_status) or the pattern shifts to adjective_noun (list_supported_settings).

Tool Count5/5

15 tools is a well-scoped set for a CAD-to-print pipeline spanning discovery, inspection, slicing, and printer upload; each tool has a distinct phase in the workflow.

Completeness4/5

The surface covers the full lifecycle from CAD inspection through slicing to printer control, but lacks cancellation or print-job status/monitoring beyond a single get_printer_status, which agents would likely need in practice.

Maintenance

ActivityMaintained
ResponsivenessNo issues