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 inventory and matching, camera snapshots, X2D support, and a Claude Desktop extension.
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 agent | Copy the setup request |
| See what my agent can do with it | What to ask your agent |
| Find the credentials for my printer | Printer backend setup |
| Configure it by hand, with Docker, or over HTTP | Installation and configuration reference |
| Slice from my agent or troubleshoot slicing | Slicing guide |
| Use open-source slicing for a Bambu Lab printer | FULU guide |
| Model or refit a part in Blender | Blender guide and Blender tools |
| See release changes or contributor credit | Changelog, 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.
| Backend | PRINTER_TYPE | Testing evidence |
|---|---|---|
| Bambu Lab | bambu | Most tested, including maintainer hardware testing shared with the Bambu-only fork |
| OctoPrint | octoprint | Community-reported |
| Klipper (Moonraker) | klipper | Community-reported, including a Creality K1 Max through Moonraker |
| PrusaLink and Prusa Connect | prusa | Community-reported |
| Duet | duet | Implemented; no hardware reports yet |
| Repetier-Server | repetier | Implemented; no hardware reports yet |
| Creality | creality | Implemented; 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), and the default slicer when PRINTER_TYPE=bambu and no slicer is configured. 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. fulu_bambu_network_rpc can probe it and send guarded RPC calls, but the server never switches a print from its local MQTT and FTPS path to BambuNetwork or the cloud on its own.
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: a human confirms every print start and positive heating command, and 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.