bambu-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BAMBU_IP | Yes | Printer LAN IPv4 address | |
| BAMBU_MOCK | No | Set to '1' to use an in-memory mock printer (no network). | |
| SLICER_BIN | No | Path to OrcaSlicer or Bambu Studio CLI, needed for the slice_hook tool. | |
| BAMBU_MODEL | No | Printer model dialect. Use P1S for P2S hardware; alternatively H2D. | P1S |
| BAMBU_SERIAL | Yes | Device serial number | |
| BAMBU_ACCESS_CODE | Yes | 8-digit LAN access code |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| statusA | Read Bambu LAN print state: gcode_state, progress %, remaining minutes, layer, job name. |
| tempsA | Read nozzle / bed / chamber temperatures (°C, current + target). |
| amsA | Read AMS units and per-slot filament type, color, nozzle range, and active slot. |
| list_filesA | List files on the printer FTPS cache (implicit TLS :990). |
| uploadA | Upload a sliced Imagine artifact over FTPS. File must be {part}-{variant}-{rev}.gcode.3mf. Does not start a print. |
| printA | Start printing a {part}-{variant}-{rev}.gcode.3mf. Refuses bare STL, wip-*, and scratch/. Requires confirm: true after the operator agrees. Optional sibling .print.json supplies plate/AMS defaults. |
| pauseB | Pause the running print. Requires confirm: true. |
| resumeC | Resume a paused print. Requires confirm: true. |
| stopA | Cancel the running print (not resumable). Requires confirm: true. |
| slice_hookA | Slice an STL or mesh-only 3MF into {part}-{variant}-{rev}.gcode.3mf via OrcaSlicer / Bambu Studio CLI. Does not upload or print. Bare STL is allowed here only. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 10 tools
Each tool targets a distinct resource or action: slicing, file management, upload, print control, and separate read-only status queries. Even pause and stop are clearly differentiated by resumability.
Tool names are readable and all lowercase, but they mix bare verbs (stop, upload, print), noun-style readouts (status, temps, ams), and compound snake_case names (slice_hook, list_files). The pattern is understandable but not uniform.
Ten tools is a well-scoped count for a printer control server. Each tool covers a meaningful part of the workflow without redundancy or unnecessary surface area.
The core workflow of slicing, uploading, listing, printing, and controlling prints is well covered. Minor gaps like file deletion or temperature setting exist, but agents can complete the primary intended tasks.