developer-tools

3D Printer Manager

by dmontgomery40

3D Printer Manager enables remote control, file handling, and advanced STL editing with seamless integration for better

Integrates with multiple 3D printer management systems to enable remote control, file handling, and advanced STL manipulation for automated print job management and custom model modifications.

github stars

160

Supports OctoPrint and Bambu printer systemsBuilt-in STL manipulation toolsBlender integration for model editing

best for

  • / 3D printing enthusiasts managing multiple printers
  • / Automated print farm operations
  • / Developers building 3D printing workflows
  • / Remote monitoring of long print jobs

capabilities

  • / Control 3D printers remotely via OctoPrint and Bambu systems
  • / Upload and manage STL/3MF print files
  • / Monitor print job status and temperatures
  • / Manipulate STL models with scaling and rotation
  • / Start and stop print jobs automatically
  • / Edit models through Blender integration

what it does

Remotely control 3D printers, manage print files, and manipulate STL models through multiple printer management systems. Supports automated print job scheduling and custom model modifications.

about

3D Printer Manager is a community-built MCP server published by dmontgomery40 that provides AI assistants with tools and capabilities via the Model Context Protocol. 3D Printer Manager enables remote control, file handling, and advanced STL editing with seamless integration for better It is categorized under developer tools.

how to install

You can install 3D Printer Manager in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

license

GPL-2.0

3D Printer Manager is released under the GPL-2.0 license.

readme

MCP 3D Printer Server

npm version License: GPL-2.0 TypeScript Maintenance PRs Welcome Node.js Version Downloads GitHub stars

<a href="https://glama.ai/mcp/servers/7f6v2enbgk"> <img width="380" height="200" src="https://glama.ai/mcp/servers/7f6v2enbgk/badge" alt="3D Printer Server MCP server" /> </a> <details> <summary><strong>✨ What's New / Significant Updates (as of last session)</strong></summary>
  • Dual Local Transports: Added explicit stdio and streamable-http runtime modes with environment-based transport selection.
  • Bambu Reliability Pass: Fixed Bambu argument wiring bugs, added FTP-backed file operations, improved status refresh behavior, and implemented practical command paths for startJob, setTemperature, and print_3mf.
  • Blender Bridge Tooling: Added blender_mcp_edit_model with optional execution mode for model-edit collaboration workflows.
  • Transport Behavior Tests: Added real behavior tests for both transports (initialize, tools/list, success + failing tools/call, origin rejection).
  • Docker Modernization: Updated Docker build flow to work without BuildKit-specific features and verified streamable HTTP initialization in container smoke testing.
</details> <details> <summary><strong>🗺️ Roadmap / TODO</strong></summary>
  • Achieve Feature Parity: Bring functionality (status detail, file operations, direct printing where possible, preset handling) for OctoPrint, Klipper, Duet, Repetier, Prusa Connect, and Creality Cloud up to the level of robustness planned for the Bambu implementation.
  • Implement Full Bambu MQTT Status: Refactor getStatus for Bambu to subscribe to MQTT reports and maintain real-time state.
  • Implement Robust AMS Mapping: Replace placeholder logic; correctly parse and use AMS mapping from .3mf slicer config or user overrides for the MQTT print command.
  • Implement .3mf Print Overrides: Add logic to the print_3mf tool to handle user-provided overrides (e.g., calibration flags) and potentially common slicer settings if feasible via MQTT/G-code.
  • Calculate MD5 Hash: Add logic to calculate and include the MD5 hash of the .3mf file in the MQTT print command (optional but recommended by protocol).
  • Refactor Bambu File Ops: Investigate replacing bambu-js FTP operations (getFiles, uploadFile) with direct MQTT methods if possible/stable, or contribute FTPS support to bambu-js.
  • Add Preset Discovery Logic: Improve preset resource listing (currently lists based on potential filenames, could parse index files if they exist).
  • Expand .3mf Support: Add .3mf printing support for other printer types where applicable.
  • Error Handling & Reporting: Enhance MQTT error handling and reporting of print progress/completion.
  • Testing: Conduct thorough runtime testing of all new Bambu features.
</details> <details> <summary>Click to expand Table of Contents</summary>

Table of Contents

</details>

Description

This is a server that allows MCP users to connect with the API endpoints of these 3D Printers:

  • OctoPrint
  • Klipper (Moonraker)
  • Duet
  • Repetier
  • Bambu Labs
  • Prusa Connect
  • Creality/Ender

This server is a Model Context Protocol (MCP) server for connecting Claude with 3D printer management systems. It allows MCP to interact with 3D printers through the APIs of various printer management systems such as OctoPrint, Klipper (via Moonraker), Duet, Repetier, and Bambu Labs printers.

Note on Resource Usage: This MCP server includes advanced 3D model manipulation features that can be memory-intensive when working with large STL files. Please see the "Limitations and Considerations" section for important information about memory usage and performance.

Features

  • Get printer status (temperatures, print progress, etc.)
  • List files on the printer
  • Upload G-code files to the printer
  • Start, cancel, and monitor print jobs
  • Set printer temperatures
  • Advanced STL file manipulation:
    • Extend base for better adhesion
    • Scale models uniformly or along specific axes
    • Rotate models around any axis
    • Translate (move) models
    • Modify specific sections of STL files (top, bottom, center, or custom)
  • Comprehensive STL analysis with detailed model information
  • Generate multi-angle SVG visualizations of STL files
  • Real-time progress reporting for long operations
  • Error handling with detailed diagnostics
  • Slice STL files to generate G-code
  • Confirm temperature settings in G-code files
  • Complete end-to-end workflow from STL modification to printing
  • Print .3mf files directly on Bambu Lab printers (via MQTT command)
  • Read Bambu Studio preset files (printer, filament, process) as resources

Installation

Prerequisites

  • Node.js 18 or higher
  • npm or yarn

Install from npm

npm install -g mcp-3d-printer-server

Install from source

git clone https://github.com/dmontgomery40/mcp-3d-printer-server.git
cd mcp-3d-printer-server
npm install
npm link  # Makes the command available globally

Running with Docker

You can also run the server using Docker and Docker Compose for a containerized environment.

  1. Ensure you have Docker and Docker Compose installed.
  2. Copy .env.example to .env and configure your settings.
  3. Build and run the container:
    docker-compose up --build -d
    

Using Slicers with Docker

Please note that the default Docker setup cannot directly use a slicer installed on your host machine. Mounting the slicer executable directly from the host into the container is unreliable due to operating system and library differences between your host and the container.

The recommended approach is to install your preferred slicer inside the Docker image. This makes the container self-sufficient.

To do this, you will need to modify the Dockerfile. Here's a conceptual example of how you might add PrusaSlicer or OrcaSlicer (specific commands may vary depending on the slicer, its dependencies, and current Alpine packages):

# ... other Dockerfile commands ...

# Example: Install PrusaSlicer or OrcaSlicer (adjust command as needed)
# Check Alpine package repositories first (e.g., apk add prusaslicer or apk add orcaslicer)
# If not available, download and install manually (e.g., AppImage):
# RUN apk add --no-cache fuse # FUSE might be needed for AppImages
# RUN wget https://example.com/path/to/OrcaSlicer_Linux_Vxxxx.AppImage -O /usr/local/bin/orcaslicer && \
#     chmod +x /usr/local/bin/orcaslicer

# Set the SLICER_PATH env var accordingly in docker-compose.yml or when running
# Example for installed executable:
ENV SLICER_PATH=/usr/local/bin/orcaslicer 

# ... rest of Dockerfile ...

After modifying the Dockerfile, rebuild your image (docker-compose build). You'll also need to ensure the SLICER_PATH environment variable in your .env file or docker-compose.yml points to the correct path inside the container (e.g., `/usr/local/bin/orcasl


FAQ

What is the 3D Printer Manager MCP server?
3D Printer Manager is a Model Context Protocol (MCP) server profile on explainx.ai. MCP lets AI hosts (e.g. Claude Desktop, Cursor) call tools and resources through a standard interface; this page summarizes categories, install hints, and community ratings.
How do MCP servers relate to agent skills?
Skills are reusable instruction packages (often SKILL.md); MCP servers expose live capabilities. Teams frequently combine both—skills for workflows, MCP for APIs and data. See explainx.ai/skills and explainx.ai/mcp-servers for parallel directories.
How are reviews shown for 3D Printer Manager?
This profile displays 10 aggregated ratings (sample rows for discoverability plus signed-in user reviews). Average score is about 4.5 out of 5—verify behavior in your own environment before production use.
MCP server reviews

Ratings

4.510 reviews
  • Shikha Mishra· Oct 10, 2024

    3D Printer Manager is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.

  • Piyush G· Sep 9, 2024

    We evaluated 3D Printer Manager against two servers with overlapping tools; this profile had the clearer scope statement.

  • Chaitanya Patil· Aug 8, 2024

    Useful MCP listing: 3D Printer Manager is the kind of server we cite when onboarding engineers to host + tool permissions.

  • Sakshi Patil· Jul 7, 2024

    3D Printer Manager reduced integration guesswork — categories and install configs on the listing matched the upstream repo.

  • Ganesh Mohane· Jun 6, 2024

    I recommend 3D Printer Manager for teams standardizing on MCP; the explainx.ai page compares cleanly with sibling servers.

  • Oshnikdeep· May 5, 2024

    Strong directory entry: 3D Printer Manager surfaces stars and publisher context so we could sanity-check maintenance before adopting.

  • Dhruvi Jain· Apr 4, 2024

    3D Printer Manager has been reliable for tool-calling workflows; the MCP profile page is a good permalink for internal docs.

  • Rahul Santra· Mar 3, 2024

    According to our notes, 3D Printer Manager benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.

  • Pratham Ware· Feb 2, 2024

    We wired 3D Printer Manager into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.

  • Yash Thakker· Jan 1, 2024

    3D Printer Manager is a well-scoped MCP server in the explainx.ai directory — install snippets and categories matched our Claude Code setup.