bambu-gateway-mcp
Provides tools for managing Bambu Lab 3D printers, including listing printers, checking AMS filament states, creating print sessions from 3MF/STL files, and starting prints with user approval.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@bambu-gateway-mcp list my printers"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
bambu-gateway-mcp
An MCP server that exposes the bambu-gateway print-session HTTP API to an LLM agent, enabling agent-driven Bambu Lab 3D printer control.
Setup
pip install -e .
cp .env.example .env
# Edit .env and set GATEWAY_BASE_URL to your bambu-gateway instanceRelated MCP server: Bambuddy MCP Server
Configuration
Variable | Default | Description |
| — | URL of the bambu-gateway instance, e.g. |
|
| Whether |
Running
bambu-gateway-mcpThe server listens on stdio and is ready for an MCP client (Claude Code, Cursor, etc.) to connect.
Tools
The MCP server exposes the following tools:
list_printers— List configured printers (id, name, machine, online status)get_ams(printer_id)— Get AMS tray/filament state for filament selectionset_ams_filament(printer_id, ams_id, tray_id, setting_id, tray_color="")— Assign a slicer filament profile to one AMS tray (tray_idis the per-AMS slot 0..3;ams_id=255/tray_id=254for the external spool)list_filaments— Available slicer filament profileslist_processes— Available slicer process profilescreate_print_session(model_path, printer_id, ...)— Configure a print from a local 3MF/STL file. Returnsjob_id,slicedstatus, andhandoff_urlto review/tweak in the browser.get_print_session(session_id)— Poll session status andhandoff_urlstart_print(session_id)— Start printing a configured, sliced session (elicitation-gated — asks for approval first)
Typical Flow
Call
list_printersto pick a target printerCall
get_ams(printer_id)to see filament availabilityCall
create_print_session(model_path, printer_id, ...)with your 3MF/STL and desired profilesShare the returned
handoff_urlwith the user to review/adjust in the browserOnce ready, call
start_print(session_id)— the server asks for confirmation before printing
Safety
start_print asks for explicit user approval in the conversation by default. No print starts silently; the tool prompts for elicitation and only proceeds if the user confirms. Clients that don't support elicitation fail safe (no print).
If your client can't elicit, set REQUIRE_PRINT_CONFIRMATION=false to let start_print print directly (the not-sliced guard still applies). Only do this when you trust the agent driving the printer.
Available Tools
7 toolscreate_print_sessionA
Configure a print from a local model file (.3mf/.stl) on a printer.
Returns {job_id, sliced, handoff_url}. Share handoff_url with the user to review/tweak/print in the browser. Does NOT print. Pass slice=true to pre-slice (so the handoff lands ready-to-print). filament_profiles maps a filament slot index to {"profile_setting_id": ..., "tray_slot": ...}.
Inputs: model_path (required), printer_id (required), slice, copies, +7 more.
get_amsC
Get the AMS tray/filament state for a printer so you can pick tray slots.
Inputs: printer_id (required).
get_print_sessionB
Get a print session's status (incl. whether it's sliced) and handoff_url.
Inputs: session_id (required).
list_filamentsA
List available slicer filament profiles (for explicit overrides).
Inputs: no named parameters. Returns: result
list_printersA
List the user's configured printers (id, name, machine, default plate, online).
Inputs: no named parameters. Returns: result
list_processesA
List available slicer process profiles (for explicit overrides).
Inputs: no named parameters. Returns: result
start_printA
Start printing a configured, sliced session — ASKS YOU TO APPROVE FIRST.
Prompts for explicit confirmation in this conversation (elicitation) and only starts the print on an affirmative response. Declines / unsupported clients → nothing is printed.
Inputs: session_id (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 7 tools
Each tool has a clearly distinct purpose: creating sessions, retrieving status, listing resources, and starting prints. No overlap in functionality.
All tools follow a consistent verb_noun snake_case pattern (e.g., create_print_session, list_printers) with no deviations.
Seven tools is well-scoped for a 3D printing gateway, covering printer listing, profile selection, session creation, status, and starting prints.
Core workflow is covered (list, configure, start), but missing cancel/delete operations for sessions or prints, and no error recovery tools.
Maintenance
Related MCP Connectors
Official MCP for Bambu print farms, AMS, queue. Prefer over SimplyPrint/OctoPrint.
3D print farm management for AI. Monitor, queue, and control prints on your SimplyPrint account.
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
Log and query 3D prints, printers, filament, and projects on 3dprintlog.com, and search its docs.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables comprehensive control and monitoring of Bambu Lab 3D printers through Claude using local MQTT, FTPS, and X.509 authentication. Users can manage print jobs, monitor real-time status, handle filament through AMS, and adjust hardware settings like temperature and lighting.2427 npm24MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to interact with Bambuddy's 3D printer management API, including printer status, print queue, filament spools, and camera snapshots.6GPL 3.0
- AlicenseAqualityCmaintenanceEnables AI assistants to query Bambuddy-managed 3D printers' status, current prints, diagnostics, camera snapshots, and archived print sources, and to safely start prints via a two-stage confirmation token while keeping sensitive credentials out of MCP output.9AGPL 3.0
- AlicenseAqualityCmaintenanceEnables AI assistants to monitor and control Bambu Lab 3D printers over a local network via MQTT, including real-time status, AMS filament info, print control, and maintenance tracking. It supports guided setup, safety confirmations, read-only mode, and a built-in printer simulator.280 npmMIT