Skip to main content
Glama
JorgeAlbareda

PrusaSlicer-MCP

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PRUSASLICER_PATHNoFolder containing prusa-slicer-console. Defaults to the standard install folders.
PRUSASLICER_DATADIRNoPrusaSlicer configuration folder with your profiles. Defaults to %APPDATA%\PrusaSlicer (Windows).
PRUSASLICER_MCP_WORKDIRNoWhere G-code and intermediate files are written. Defaults to <temp>/prusaslicer-mcp.
PRUSASLICER_MCP_ALLOW_POST_PROCESSNoOff by default. Set to 1 to let profiles run their post_process scripts.
PRUSASLICER_MCP_ALLOW_PRINT_CONTROLNoOff by default. Set to 1 to enable start / pause / resume / cancel on printers.

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
get_slicer_infoA

PrusaSlicer version and paths, data directory, active engine and whether printer control is enabled.

list_printersC

Printer profiles installed in the user's PrusaSlicer (system and user).

list_compatible_profilesB

Print profiles compatible with a printer, each with its compatible filament profiles.

select_profilesB

Select the printer, print and filament profiles to slice with (by exact name).

use_config_fileA

Slice with a flat PrusaSlicer .ini config instead of named profiles (bundles are rejected).

get_settingB

Value of a setting: the session override, else the effective value of the last slice.

set_settingA

Override a PrusaSlicer setting for this session (e.g. fill_density=20%, layer_height=0.15).

reset_settingB

Remove a session override so the profile value applies again.

save_profile_asC

Save the session overrides as user profiles named name (one per affected kind), inheriting the selected ones.

import_profile_bundleC

Import a PrusaSlicer config bundle (.ini with [print:…] sections) as user profiles.

add_modelB

Add a model file (STL, 3MF, OBJ, STEP, AMF) to the bed; returns its id and size.

get_plateC

Current bed: selected profiles, setting overrides and objects with their instances.

remove_objectC

Remove an object from the bed.

clear_plateB

Remove every object from the bed.

transform_objectC

Set absolute rotation (degrees), scale (%) and number of copies of an object.

place_instanceC

Fix the centre (mm) of one copy of an object on the bed.

arrange_plateA

Automatically place every copy that the user has not fixed; returns the positions.

sliceB

Slice the bed. Returns the G-code path, metrics, warnings, placements and the configuration check.

export_3mfC

Export the bed (objects, positions and configuration) as a 3MF project.

get_gcode_metricsC

Print time, filament (mm, cm³, g), cost, layers and profiles of a PrusaSlicer G-code.

analyze_toolpathsC

Time and material per move type (perimeters, infill, bridges, travel…); optionally the slowest layers.

find_print_risksC

Possible print problems (warping, overhangs, long bridges, flow or machine limits…) with evidence.

show_in_slicerA

Open a model/3MF in the user's PrusaSlicer window, or a G-code in the G-code viewer.

set_variable_layer_heightD

Adaptive variable layer height for an object (GUI engine, v2).

add_height_range_modifierC

Different settings for a height range of an object (GUI engine, v2).

preview_layerC

Show a given layer in the live preview (GUI engine, v2).

list_print_hostsB

Networked printers configured in PrusaSlicer (OctoPrint, Moonraker/Klipper, PrusaLink). No secrets.

upload_gcodeA

Upload a G-code to a networked printer without starting it. Returns the remote path.

get_printer_statusC

State, progress, current file and temperatures of a networked printer.

start_printB

Start printing an already uploaded file. Needs the user's explicit confirmation.

pause_printA

Pause the current print. Needs the user's explicit confirmation.

resume_printA

Resume a paused print. Needs the user's explicit confirmation.

cancel_printB

Cancel the current print. Needs the user's explicit confirmation.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

C2.8/5.0

Scored across 33 tools

Disambiguation4/5

Tools cluster into clearly distinct groups (settings, profiles, plate/model editing, slicing, analysis, printer control) and descriptions give sharp boundaries (e.g. use_config_file explicitly says 'instead of named profiles'). A few near-neighbors remain — get_setting vs get_plate vs get_slicer_info as state readers, and preview_layer vs show_in_slicer as display actions — but an agent can disambiguate from the text.

Naming Consistency4/5

All names are snake_case and almost all follow verb_noun (get_setting, list_printers, add_model, cancel_print). Minor deviations: the bare verb 'slice', the trailing preposition in 'save_profile_as', and 'use_config_file' — readable but not perfectly uniform.

Tool Count3/5

33 tools is heavy for any one server, though the PrusaSlicer domain is genuinely broad (slicing, profiles, model editing, G-code analysis, GUI manipulation, network printing). The start/pause/resume/cancel quartet and the three GUI-engine v2 tools could plausibly be consolidated, so the surface feels somewhat over-expanded rather than tightly scoped.

Completeness4/5

Coverage across the lifecycle is strong: profile selection/import/save, full plate editing, slicing/export, G-code analysis and remote printer control. Gaps are minor — no delete/rename for saved user profiles, and no explicit object-listing or listing of all print/filament profiles outside a printer context.

Maintenance

ActivityMaintained
ResponsivenessNo issues