SB

synman/bambu-mcp

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

6 stars 3 forks 质量 51 趋势 34

Bambu Lab MCP server — LAN-mode control over Bambu Lab 3D printers via MQTT and FTPS

概览

An MCP (Model Context Protocol) server that lets AI agents monitor and control Bambu Lab 3D printers. It is built on bambu-printer-manager and keeps one live MQTT session per printer. The same process serves a REST API and live camera streams. No Docker or container is needed. https://synman.github.io/bambu-printer-manager/bambu-mcp/, with the full MCP tool reference and REST API reference. - MCP tools for discovery, state, print control, climate, filament and AMS, nozzles, detectors, files, camera, alerts and charts. Every tool carries a title and read-only, destructive, idempotent and open-world annotations. - Write protection: every state-changing tool refuses unless called with user_permission=True, and tools that would disturb a print refuse while the printer is printing. - A REST API over the same sessions, with a Swagger UI at /api/docs. - Live camera streams for every model through the bambu-mse-stream relay: RTSPS H.

README

以下为原文 README 节选,完整内容请查看原文。

Bambu Lab MCP Server

Version: 1.0.0 · Follows Semantic Versioning

An MCP (Model Context Protocol) server that lets AI agents monitor and control Bambu Lab 3D printers. It is built on bambu-printer-manager and keeps one live MQTT session per printer. The same process serves a REST API and live camera streams. No Docker or container is needed.

Documentation: , with the full MCP tool reference and REST API reference.


Features

  • MCP tools for discovery, state, print control, climate, filament and AMS, nozzles, detectors, files, camera, alerts and charts. Every tool carries a title and read-only, destructive, idempotent and open-world annotations.
  • Write protection: every state-changing tool refuses unless called with user_permission=True, and tools that would disturb a print refuse while the printer is printing.
  • A REST API over the same sessions, with a Swagger UI at /api/docs.
  • Live camera streams for every model through the bambu-mse-stream relay: RTSPS H.264 passed through for X1, P2S and H2 series, TLS port 6000 stills encoded once for A1 and P1, played in the browser as fragmented MP4 (Media Source Extensions).
  • Printer credentials encrypted at rest with AES-256-GCM, keychain-backed master key.
  • 4 bambu://rules/* resources, a bambu://alerts/{name} alert feed and one prompt, bambu_system_context.

Security: the REST API and camera streams listen on all network interfaces with no authentication. Run bambu-mcp only on a trusted network.


Installation

Prerequisites

  • Python 3.12+
  • LAN access to your printers

Setup

git clone https://github.com/synman/bambu-mcp.git
cd bambu-mcp
python3 make.py

make.py creates .venv/ inside the project and installs the package with all dependencies. Run it again after any upstream dependency change.

Add your first printer

  1. Discover: call discover_printers() to find printers on your network by SSDP.
  2. Get access code: on the printer touchscreen, Settings, Network, Access Code.
  3. Add: call add_printer(...) with the name, IP, serial and access code, and user_permission=True.
  4. Verify: call get_printer_state(name="myprinter").

Client Configuration

Claude Desktop

Merge the "bambu-mcp" entry from config/claude_desktop.example.json into ~/Library/Application Support/Claude/claude_desktop_config.json, replacing ``.

GitHub Copilot CLI

Merge config/copilot_mcp.example.json into your Copilot MCP configuration.

Streamable HTTP

Run .venv/bin/python3 server.py --transport streamable-http and point the client at http://127.0.0.1:25099/mcp. Running it as a supervised daemon: docs/operators-guide.md.


Tools

在 GitHub 查看完整 README

安装

This server does not publish a one-line install command.

Open the repository installation guide 新手?先看 mcpskill.org 教程 →