MCP 3D Printer Server logo

MCP 3D Printer Server

by DMontgomery40

The MCP 3D Printer Server allows Model Context Protocol (MCP) users to connect with the API endpoints of various 3D printer management systems. It enables interaction with printers through systems like OctoPrint, Klipper, Bambu Labs, and more.

View on GitHub

Last updated: N/A

What is MCP 3D Printer Server?

The MCP 3D Printer Server is a Model Context Protocol (MCP) server designed to bridge the gap between Claude and various 3D printer management systems. It provides a unified interface for controlling and monitoring 3D printers from different manufacturers and using different control software.

How to use MCP 3D Printer Server?

To use the server, install it via npm or from source, configure the necessary environment variables (API keys, printer addresses, etc.), and then configure Claude Desktop to use the server. Once configured, you can use natural language commands with Claude to control your 3D printer.

Key features of MCP 3D Printer Server

  • Supports multiple printer management systems (OctoPrint, Klipper, Duet, Repetier, Bambu Labs, Prusa Connect, Creality Cloud)

  • Provides tools for STL file manipulation (scaling, rotation, translation, base extension)

  • Enables printer control (status, file listing, upload, start/cancel print, temperature control)

  • Includes Bambu-specific tools for direct .3mf printing via MQTT

  • Supports reading Bambu Studio preset files as resources

Use cases of MCP 3D Printer Server

  • Controlling a 3D printer using natural language commands through Claude.

  • Automating 3D printing workflows.

  • Modifying STL files before printing.

  • Monitoring the status of a 3D printer remotely.

  • Integrating 3D printing into other applications.

FAQ from MCP 3D Printer Server

What printer management systems are supported?

The server supports OctoPrint, Klipper (via Moonraker), Duet, Repetier, Bambu Labs, Prusa Connect, and Creality Cloud.

How do I install the server?

You can install the server using npm (npm install -g mcp-3d-printer-server) or from source by cloning the repository and running npm install.

How do I configure the server for my printer?

You need to create a .env file with the necessary environment variables, such as the API key, printer host, printer type, and other printer-specific settings.

How do I use the server with Claude Desktop?

You need to edit your Claude Desktop configuration file to add the server and its environment variables.

What are the limitations for Bambu Lab printers?

Limitations include the need for the 3MF project file path, gcode file name, print name, and MD5 hash to start prints, the lack of direct temperature control methods, and the use of potentially unsecured FTP for file operations. Also, full real-time status monitoring via MQTT needs further implementation.