bambu-cloud-mcp
bambu-cloud-mcp
从任何 MCP 客户端控制你的 Bambu Lab 3D 打印机——通过云端,随时随地,并在你的局域网上实时捕获舱内摄像头画面。
一个 MCP(模型上下文协议)服务器,让 AI 助手——Claude Code、Claude Desktop 或任何 MCP 客户端——监控和操控 Bambu Lab 打印机。它通过 MQTT 与打印机通信,既可以在你的 LAN 上,也可以通过 Bambu 云代理(us.mqtt.bambulab.com / cn.mqtt.bambulab.com),因此无需将打印机置于 LAN-Only 模式即可从任何地方进行状态查看和控制。它提供 31 个工具,涵盖状态、打印控制、温度、AMS/耗材、文件,以及实时 LAN 舱内摄像头快照。
为什么选择它而不是其他 Bambu MCP 服务器
大多数社区 Bambu MCP 服务器只支持 LAN 控制,或 只读 的云端状态。这个服务器做了两件它们通常做不到的事:
完整的云端控制——所有命令(暂停、恢复、停止、设置温度、更换耗材、原始 G-code……)都可以通过互联网工作,因为 Bambu 云 MQTT 代理接受与本地代理相同的命令主题(
device/<serial>/request)。使用你的账户登录一次,绑定的打印机就会自动连接。实时舱内摄像头——
get_camera_frame通过 LAN 从 A1 / A1 Mini / P1P / P1S 打印机获取真实的 JPEG 快照,并将其作为你的 MCP 客户端可以显示的图像返回。
摄像头仅限 LAN。 Bambu 通过专有的 P2P 系统(TUTK)隧道传输云端视频流,该系统无法在开放环境中重新实现,因此摄像头仅在你的机器与打印机处于同一网络时才能工作。状态查看和控制则可在任何地方使用。
Related MCP server: 3D Printer MCP Server
支持的打印机
控制(LAN + 云端): A1、A1 Mini、P1P、P1S、X1C、X1E、H2D 及其他当前型号。
摄像头(仅限 LAN): A1、A1 Mini、P1P、P1S,通过 6000 端口的舱内图像协议。X1/H2 系列改用 RTSP,尚未接入——欢迎提交 PR。
工具
全部 31 个工具,按领域分组:
云端
工具 | 描述 |
| 登录状态、账户、区域、令牌过期时间、已连接的云端打印机 |
| 通过云端发现并连接绑定到你账户的打印机 |
| 清除已存储的云端凭据并断开云端打印机 |
打印机管理
工具 | 描述 |
| 添加一台 LAN 打印机(IP + 访问码 + 序列号)并连接 |
| 从打印机列表中移除一台打印机 |
| 重新建立 MQTT 连接 |
| 列出已配置的打印机及连接状态 |
状态
工具 | 描述 |
| 打印进度、温度、速度、AMS、灯光、阶段等 |
| 固件 / 模块版本 |
打印控制
工具 | 描述 |
| 控制当前打印任务 |
| 启动 SD 卡上已有的 |
| 在多个打印机上并行启动同一文件 |
硬件
工具 | 描述 |
| 打印速度(配置文件名称或百分比) |
| 喷嘴 / 热床温度(带安全限制) |
| 舱内灯 / 工作灯开或关 |
| 喷嘴直径(用于切片配置文件) |
AMS / 耗材
工具 | 描述 |
| 从 AMS 槽位加载 / 切换耗材 |
| 卸载当前耗材 |
G-code
工具 | 描述 |
| 发送原始 G-code(部分危险命令已被阻止) |
| 在多对象打印中跳过对象 |
文件(LAN,FTPS)
工具 | 描述 |
| 列出打印机 SD 卡上的文件 |
| 上传文件到 SD 卡 |
| 从 SD 卡下载文件 |
| 从 SD 卡删除文件 |
摄像头(仅限 LAN)
工具 | 描述 |
| 从舱内摄像头捕获实时 JPEG,以图像形式返回 |
| 存储打印机的 LAN 访问码(以及可选的 IP)供摄像头使用 |
| 切换 SD 卡录制 |
| 切换延时摄影 |
签名
工具 | 描述 |
| 为 2025 年 1 月之后要求证书认证的固件进行 X.509 消息签名 |
环境要求
Node.js 18+
云端控制: 需要一个 Bambu Lab 账户(你的打印机所绑定到的账户)。无需开发者令牌——你可以通过电子邮件验证码、密码或 2FA 登录。
摄像头: 你的机器与打印机处于同一 LAN,并在打印机上(设置中)启用 “LAN Mode Liveview”。这与完整的 LAN-Only 模式无关,因此 Bambu Handy 应用仍可继续使用。
安装
git clone https://github.com/dylansantwani/bambu-cloud-mcp.git
cd bambu-cloud-mcp
npm install
npm run build这将 TypeScript 编译到 dist/。MCP 入口点是 dist/index.js。
配置
将服务器注册到你的 MCP 客户端
Claude Code(用户范围——在每个项目中可用):
claude mcp add bambu -s user -- node /absolute/path/to/bambu-cloud-mcp/dist/index.jsClaude Desktop——添加到 claude_desktop_config.json:
{
"mcpServers": {
"bambu": {
"command": "node",
"args": ["/absolute/path/to/bambu-cloud-mcp/dist/index.js"]
}
}
}重启客户端(或开始新会话),以便它加载该服务器。
环境变量
所有变量都是可选的:
变量 | 用途 |
| 运行时配置和凭据的目录。默认: |
| 覆盖 |
| 覆盖 |
要在客户端中设置配置目录,请向服务器条目添加一个 env 块:
{
"mcpServers": {
"bambu": {
"command": "node",
"args": ["/absolute/path/to/bambu-cloud-mcp/dist/index.js"],
"env": {
"BAMBU_MCP_CONFIG_DIR": "/absolute/path/to/config"
}
}
}
}云端登录(用于远程控制)
在你自己的终端中运行交互式登录(它需要提示你,因此无法在 MCP 客户端内运行):
npm run login选择你的区域(默认美国)。
输入你的账户电子邮件。
选择方法 1(电子邮件验证码)——无需密码;一次性验证码会通过电子邮件发送给你。也支持密码和 TOTP-2FA。
凭据写入 ~/.bambu-mcp/cloud.json(模式 0600)。如果你使用密码,它只会被发送到 Bambu 的登录端点——绝不会被存储。下次服务器启动时,你绑定的打印机将通过云端自动发现并连接;你也可以随时使用 sync_cloud_printers 工具触发此操作。
摄像头访问(可选,仅限 LAN)
摄像头需要每台打印机的 8 位 LAN 访问码(打印机屏幕 → 设置 → WLAN)。通过 set_camera_access 工具存储一次(或直接让你的助手来做)。打印机的 LAN IP 会从其状态中自动检测,因此你无需硬编码。然后 get_camera_frame 会返回实时快照。
使用方法
服务器注册并登录后,用自然语言与你的助手交流。示例:
“列出我的 Bambu 打印机并显示它们的状态。”
“我的 P1S 上的打印进度如何?”
“暂停打印机
mini-1上的打印。”“将我的 X1C 上的喷嘴温度设置为 220°C。”
“给我看 A1 的摄像头快照。”
“在我的所有打印机上启动
benchy.3mf。”“卸载耗材,然后加载 2 号槽位。”
要直接添加一台仅 LAN 的打印机(无需云端账户):“在 192.168.1.50 添加一台打印机,访问码为 12345678,序列号为 01P00A123456789。”
工作原理
打印机的 mode 决定其 MQTT 客户端的连接方式:
LAN 模式使用用户名
bblp+ 打印机的访问码连接到打印机的 IP。云端模式使用用户名
u_<uid>+ 你的账户令牌连接到us.mqtt.bambulab.com(中国为cn.)。
命令主题(device/<serial>/request 和 /report)在两种模式下完全相同,这就是为什么每个控制工具在云端和 LAN 上的工作方式都一样。文件操作使用 FTPS(basic-ftp),舱内摄像头直接使用打印机的 TLS 6000 端口图像协议(camera-client.ts)。
src/
index.ts MCP server entry; registers tools, auto-connects on startup
fleet-manager.ts Multi-printer connection manager (LAN + cloud branches)
mqtt-client.ts Bambu MQTT protocol (status + all control commands)
bambu-cloud.ts Cloud API: login, email-code/2FA, device discovery, refresh
cloud-store.ts ~/.bambu-mcp/cloud.json credential store
login-cli.ts Interactive `npm run login`
camera-client.ts LAN chamber-image capture (TLS port 6000 → JPEG)
camera-store.ts ~/.bambu-mcp/cameras.json access-code store
ftp-client.ts FTPS file operations
tools/ One file per tool group所有凭据都本地保存在 ~/.bambu-mcp/(cloud.json、cameras.json、printers.json),以 0600 权限写入并被 git 忽略。除 Bambu 自己的 API 和 MQTT 代理外,不会向任何地方发送任何内容。
故障排除
云端登录 403 — Bambu 的 API 位于 Cloudflare 之后;稍等片刻后重试。
sync_cloud_printers返回 0 台打印机 — 你登录的账户没有绑定打印机。请使用你的 Bambu Handy 应用所用的账户登录。摄像头
ECONNREFUSED— 该打印机未启用 “LAN Mode Liveview”,或打印机离线(IP 会从状态中自动检测)。摄像头超时 — 你的机器与打印机不在同一网络。摄像头仅限 LAN。
LAN 上的
connack timeout/ECONNRESET— Bambu 打印机只允许一个本地 MQTT 客户端;关闭 BambuStudio / OrcaSlicer / Home Assistant 后重试。
贡献
欢迎贡献——有关开发环境设置、构建步骤和 Conventional Commits 约定,请参阅 CONTRIBUTING.md。如果你使用 AI 编码代理,AGENTS.md 中有仓库特定的说明。
致谢
局域网控制基础: griches/bambu-mcp — 本项目派生并基于其构建的原始 MQTT 控制层和本地工具集。
云控制、免密登录和局域网摄像头采集 是本分支中新增的原创功能。
云协议细节参考了 ha-bambulab / pybambu;摄像头协议依据社区逆向工程,记录于 Bambu Lab 论坛。
许可证
MIT。上游基础(griches/bambu-mcp)未发布明确的许可证;本分支显著标注其出处,并对新增原创内容采用 MIT 许可证。如果您是上游作者,希望采用不同的处理方式,请提交 issue。
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables interaction with 3D printer management systems through an MCP server, supporting STL file manipulation, slicing, and control of printers like OctoPrint, Klipper, Duet, and more.103225GPL 2.0
- AlicenseNot gradedqualityFmaintenance3D Printing MCP By OctoEverywhere35Apache 2.0
- AlicenseAqualityBmaintenanceEnables comprehensive control and monitoring of Bambu Lab 3D printers through Claude using local MQTT, FTPS, and X.509 authentication. Users can manage print jobs, monitor real-time status, handle filament through AMS, and adjust hardware settings like temperature and lighting.243017MIT
- AlicenseBqualityCmaintenanceA Bambu Lab-focused MCP server for controlling Bambu printers, manipulating STL files, and managing end-to-end 3MF print workflows from any MCP-compatible client.37138GPL 2.0
Related MCP Connectors
Self-hosted MCP gateway: turn any API, database or MCP server into AI connectors — no code.
Security-first WordPress MCP server. 129 tools for Claude, ChatGPT, Gemini. Free on wp.org.
Connect MCP clients to 2,000+ AI models without managing provider API keys.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dylansantwani/bambu-cloud-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server