Skip to main content
Glama
welingtonmatos

Bambu Studio MCP

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
BAMBU_STUDIO_EXENoPath to the Bambu Studio executable. Default: Windows `C:\Program Files\Bambu Studio\bambu-studio.exe` · macOS `/Applications/BambuStudio.app/Contents/MacOS/BambuStudio` · Linux `bambu-studio` on `PATH`.
BAMBU_STUDIO_MCP_CACHENoPer-user cache folder for the MCP server.
BAMBU_STUDIO_CONFIG_DIRNoBambu Studio configuration directory. Default: Windows `%APPDATA%\BambuStudio` · macOS `~/Library/Application Support/BambuStudio` · Linux `~/.config/BambuStudio`.

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_environmentB

Where Bambu Studio and its profiles are, profile version, cache folder, safety guarantees.

list_printersB

Installed printer presets (one per printer + nozzle): bed size, max height, forbidden zones, number of extruders, default process and filament. 'query' filters by words, e.g. 'P1S 0.4'.

list_presetsC

Process or filament presets compatible with a printer, including the user's own presets.

get_settingsA

Every valid setting key with its current value for printer+process. Filter with words ('support', 'wall', 'infill', 'brim', 'ironing', 'seam'). 'per_object' tells which keys may be set per object/part. Use the exact keys in slice_model 'settings'.

list_object_typesA

Object types and what each changes from the printer's default (functional, decorative, miniature, flat, enclosure, vase, draft, print_in_place, standard).

analyze_modelA

Geometry before slicing: size, fit on the printer, overhang share, bed contact, slenderness, flat tops and which installed layer heights hit them exactly, suggested object types, plus a preview image of the model.

slice_modelA

Build a Bambu Studio project from meshes, slice it headless and verify the result.

Writes <output_dir>/.3mf (saved by Bambu Studio itself, G-code inside) and -report.md. Returns time, grams per filament, purge, colour changes and 'problems'. object_type picks process and settings; auto_adjust adds supports/brim when the geometry needs them; 'settings' (global) always wins. Never prints.

compare_slicesB

Slice the same model several ways and compare time, grams, colour changes, support time and how far flat tops fall from the layer grid. vary='process' (values optional: the sensible layer heights for the nozzle) or any setting key with explicit values, e.g. vary='support_type', values=['tree(auto)','normal(auto)']. Nothing is saved.

slice_projectA

Slice an existing Bambu Studio project (.3mf, e.g. from MakerWorld) keeping its objects, paint and modifiers, optionally with another process, filaments, settings or even another printer (objects are then re-arranged for the new bed). The original file is never modified.

paint_modelA

Colour a single mesh by rules -- the Bambu Studio brush, automated -- then slice and verify.

Rules apply in order (later wins); each needs 'type' and usually 'filament': {"type":"height","from":3.3,"to":99,"filament":2} {"type":"facing","direction":"up","angle":20,"filament":2} {"type":"image","file":"logo.png","view":"top","colors":{"#FF0000":3},"tolerance":80} {"type":"body","index":1,"filament":3} {"type":"fill","point":[x,y,z],"angle":30,"filament":4} Any rule accepts "within":[x0,y0,z0,x1,y1,z1] and "only_from":slot. z is measured from the part's base. Returns the result and a preview image -- check it before trusting the paint.

self_testB

Slice six colour bands to prove the paint codes on this machine. Run after updating Bambu Studio.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
paint_rulesReference of the painting rules.

TDQS

A3.6/5.0

Scored across 11 tools

Disambiguation4/5

Most tools have clearly distinct purposes (analysis, painting, environment, presets). The three slicing tools (slice_model, slice_project, compare_slices) share the core 'slice' action but are differentiated by input source and whether output is saved, so confusion is limited to a single family.

Naming Consistency5/5

All eleven tools follow a consistent snake_case verb_noun pattern (list_object_types, analyze_model, slice_model, get_settings, etc.). No mixed conventions or stylistic drift.

Tool Count5/5

Eleven tools is well within the ideal 3-15 range for a headless slicer service. Each tool covers a distinct capability (discovery, analysis, slicing, comparison, painting, validation) with no filler.

Completeness4/5

The surface covers the full discover-analyze-slice-verify lifecycle: resource listing, geometry analysis, slicing (model and project), variation comparison, painting, environment introspection and self-test. Actual printing is intentionally excluded, and export/preview handling is adequate, leaving only minor gaps.

Maintenance

ActivityMaintained
ResponsivenessNo issues