3D printing tools for Bambu Lab printers. Exposes slicing, profile discovery, and spool inventory as MCP tools for Claude Desktop and other MCP-compatible clients.
BambuStudio exposes 12 tools with complete input schemas and descriptions. Naming follows verb_noun convention (slice_stl, spool_add, discover_projects). Descriptions are substantive (100-250 chars typical), explaining WHAT and WHEN. However, output schemas are undocumented, callers cannot predict response structure. Parameters lack enums for constrained values (e.g., 'quality' accepts 'draft|standard|fine|extra-fine' but no enum constraint). Error handling is minimal, no recovery guidance or actionable error messages visible. Composition is sound: tools are single-responsibility and chainable (discover_projects → slice_stl → open_in_studio). Security: no credentials in params (good), but no permission gates or audit logging visible.
List filament materials compatible with a printer.
List all available 3D printers with nozzle options.
Check if BambuStudio binary and profiles are working correctly. Returns binary path, version, known issues, and profile directory status.
Find recent 3MF and STL files on this machine. Scans Downloads, Desktop, and Documents for 3D print files, sorted by most recently modified. Use this when the user mentions a file but doesn't provide the full path.
Open a sliced project in BambuStudio for visual preview and printing. After opening, click 'Send to Printer' in BambuStudio to start printing.
Review an existing 3MF project and suggest improvements.
Output schemas undocumented. Tools return dict[str, Any] with no documented field structure. LLMs cannot predict response shape, forcing trial-and-error parsing and wasting tokens.
Constrained parameters lack enum declarations. 'quality' accepts 'draft|standard|fine|extra-fine', 'material' accepts 'PLA|PETG|ABS|TPU', 'slot' accepts 'AMS:1|AMS:2|AMS:3|AMS:4|EXT:1', all free-form strings. LLMs will hallucinate invalid values.
No error handling guidance. Tools return generic dicts with 'ok' and 'result' fields, but no documented error structure, recovery hints, or actionable messages. LLMs cannot distinguish retryable from fatal failures.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
Slice a 3MF project for 3D printing. Handles both BambuStudio-native and third-party 3MF files. For third-party files that crash the slicer, automatically extracts geometry and applies the specified printer/material/quality settings.
Slice an STL file for 3D printing. Takes an STL file path and returns print time estimate, filament usage, and the output 3MF project path.
Register a new filament spool.
Load a spool into a printer slot. Auto-unloads any occupant.
Show filament inventory: all spools, loaded slots, and remaining weights.
Unload a spool from a slot (moves to storage, remembers remaining weight).
Destructive operations lack confirmation. spool_load auto-unloads occupants, slice_stl/slice_project modify state, open_in_studio launches external app, no dry-run or confirmation step to prevent accidental execution.
No audit logging or permission gates visible. Tools modify filament inventory and trigger external processes without documented access control or call tracing for compliance.