Bambu Lab MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BAMBU_LAB_COOKIES | No | Session cookies for cloud API (Required for cloud-based tools) | |
| BAMBU_LAB_BASE_URL | No | Cloud API base URL | |
| BAMBU_LAB_DEVICE_ID | Yes | Printer serial number (Required for local MQTT control) | |
| BAMBU_LAB_MQTT_HOST | Yes | Printer IP address (Required for local MQTT control) | |
| BAMBU_LAB_MQTT_PORT | No | MQTT port | 8883 |
| BAMBU_APP_CERTIFICATE | No | Override the built-in X.509 certificate | |
| BAMBU_APP_PRIVATE_KEY | No | Override the built-in X.509 private key | |
| BAMBU_LAB_MQTT_PASSWORD | Yes | LAN access code (Required for local MQTT control) | |
| BAMBU_LAB_MQTT_USERNAME | No | MQTT username | bblp |
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 | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_user_profileB | Get Bambu Lab cloud account profile |
| list_printersA | List all printers registered to the cloud account |
| get_printer_statusB | Get printer status via cloud API (requires cloud cookies) |
| sign_messageA | Sign a message with X.509 certificate for authenticated printer communication. Uses the extracted Bambu Connect certificate to bypass firmware auth restrictions. |
| mqtt_connectA | Connect to a Bambu Lab printer via local MQTT over TLS. Required before any printer control commands. |
| mqtt_disconnectB | Disconnect from the MQTT printer connection |
| printer_stopB | Stop the current print job immediately |
| printer_pauseB | Pause the current print job |
| printer_resumeA | Resume a paused print job |
| printer_set_speedB | Set print speed. Use a named profile (silent/standard/sport/ludicrous) or a percentage (1-166). |
| printer_send_gcodeA | Send a single G-code command to the printer (e.g., "G28" for home). Dangerous commands are blocked for safety. |
| printer_print_fileA | Start printing a file already on the printer SD card (uploaded via ftp_upload_file) |
| printer_get_statusA | Request a full status push from the printer and return it. Includes temperatures, print progress, AMS state, fan speeds, and more. Note: pushall should not be called more than once every 5 minutes on P1P. |
| printer_get_cached_statusA | Return the last cached printer status without requesting a new push. Faster and lighter than printer_get_status — use this for frequent polling. |
| printer_get_versionB | Get firmware and module version information for the connected printer |
| skip_objectsA | Skip specific objects during a multi-object print. Useful for excluding failed parts without stopping the entire print. |
| ams_change_filamentC | Change to a different AMS filament tray (0-3) |
| ams_unload_filamentB | Unload the current filament from the extruder |
| camera_recordC | Enable or disable camera recording on the printer |
| camera_timelapseC | Enable or disable timelapse recording for the current print |
| led_controlC | Control the printer chamber or logo LED lights |
| set_nozzleB | Set the nozzle diameter (for printing profile selection) |
| set_temperatureB | Set nozzle or bed temperature via G-code. Validates against safe limits. |
| ftp_upload_fileA | Upload a .gcode, .3mf, or .stl file to the printer SD card via FTPS (port 990). Use printer_print_file to start the print after upload. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/schwarztim/bambu-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server