Skip to content

Overview ​

Thank you, FULU Foundation, Louis Rossmann, and the OrcaSlicer-bambulab contributors. Thank you for standing up for consumer ownership, open-source developers, repair rights, and owners whose working hardware should not be made worse by locked-down software.

This server treats the FULU OrcaSlicer-bambulab fork as a first-class slicer for Bambu Lab projects. See the FULU guide for setup and current status.

An MCP server that connects Claude, Codex, and other MCP clients to 3D printers running OctoPrint, Klipper (Moonraker), Duet, Repetier-Server, Bambu Lab, PrusaLink or Prusa Connect, and Creality. Your agent can check status, upload and start jobs, cancel prints, edit STL meshes, run your slicer, and hand models to Blender through an optional Blender MCP bridge.

Only print on Bambu Lab printers? bambu-printer-mcp is a Bambu-focused fork of this project with more Bambu features, including AMS auto-matching, Bambu camera snapshots and streams, X2D native printing, Bambu Connect, and a Claude Desktop extension. Both servers read the AMS, choose trays, pause, resume, stop, and print through FULU's authenticated BambuNetwork route.

Camera tools also include camera_stream_start, camera_frame, and camera_stream_stop from version 1.2.26. They reuse configured MJPEG or snapshot sources, send only changed frames, and close when idle. See camera stream configuration and limits.

Built with help from our contributors. Thank you to everyone sharing fixes, careful bug reports, and real printer testing!


Start here ​

I want to…Read next
Connect this MCP to my agentCopy the setup request
See what my agent can do with itWhat to ask your agent
Find the credentials for my printerPrinter backend setup
Configure it by hand, with Docker, or over HTTPInstallation and configuration reference
Slice from my agent or troubleshoot slicingSlicing guide
Use open-source slicing for a Bambu Lab printerFULU guide
Model or refit a part in BlenderBlender guide and Blender tools
See release changes or contributor creditChangelog, releases, and contributors

Description ​

mcp-3d-printer-server is a Model Context Protocol server for 3D printers. It gives an agent printer control (status, files, upload, start, cancel, and temperatures), STL mesh tools, slicer automation, Bambu Lab project printing, and an optional bridge to a Blender MCP server. One PRINTER_TYPE selects the default backend, and every printer tool accepts a per-call type and host, so one server can reach more than one printer.

BackendPRINTER_TYPETesting evidence
Bambu LabbambuMost tested, including maintainer hardware testing shared with the Bambu-only fork
OctoPrintoctoprintCommunity-reported; checked with OctoPrint 1.11.8 and 2.1-dev Virtual Printers
Klipper (Moonraker)klipperCommunity-reported, including a Creality K1 Max through Moonraker
PrusaLink and Prusa ConnectprusaCommunity-reported
DuetduetImplemented; no hardware reports yet
Repetier-ServerrepetierImplemented; no hardware reports yet
CrealitycrealityImplemented; no hardware reports yet

What each backend reads and sends differs. See printer backend setup for the exact API calls, credentials, and linked reports.

Note on resource usage. The STL tools load the entire mesh into memory. Large or complex files (over about 10 MB) can use a lot of memory. See General Limitations and Considerations.

FULU and open-source printing ​

FULU OrcaSlicer-bambulab is a first-class slicer target for Bambu Lab projects (SLICER_TYPE=orcaslicer-bambulab; aliases include fulu-orca and orca-studio). Choose it with SLICER_TYPE=orcaslicer-bambulab: Bambu printers default to Bambu Studio, because FULU v1.0.0's command line segfaults on every slice until FULU #56 and #57 are released. slice_stl and print_3mf auto-slicing use its project command line, and check_fulu_orca_setup inspects the install and runtime payload.

The optional FULU BambuNetwork bridge is a separate runtime. With BAMBU_DEFAULT_CONNECTION_MODE=bambu_network (or connection_mode: "bambu_network"), print_3mf, cancel_print, pause_print and resume_print go through it: the plug-in's authenticated local-network session (connection_type: "lan"), which a P1S on authorization firmware accepts without Developer Mode, or Bambu Cloud ("cloud"). Every print still passes the same inspection and fresh-state checks first. counterpart_print_route reads and changes the route. The server never switches routes on its own; fulu_bambu_network_rpc probes the bridge and refuses raw print methods.

Follow the FULU guide for platform runtime setup, bridge probes, and the current macOS and Windows testing status.

What's new ​

See the changelog for versioned changes. The next release brings the print safety gate to every printer backend: the server checks the exact G-code against hardware and material ceilings. It also adds Bambu-compatible CLI slicing with resolved machine presets and a template registry, blender_mcp_export_stl for verified STL export from Blender, and this documentation site. Release 1.2.9 fixes Bambu FTPS uploads that failed with "Premature close" (#22), adds standard Blender MCP discovery, forwarding, and verified STL edits, requires the Bambu printer model for raw print starts, and isolates each server's scratch files. Separately, #20 and #21 made per-call executable selectors, such as a slicer path or bridge command, require an explicit opt-in.

Released under the GPL-2.0 license. An independent open-source project, not affiliated with any printer manufacturer or host software.