README
🚀 MCP 3D 打印机服务器
MCP 3D 打印机服务器是用于管理 3D 打印任务的工具,支持 STL 文件操作、G-code 处理和打印任务启动等功能,能有效提升 3D 打印的效率和便捷性。
🚀 快速开始
安装指南
使用 npm 进行安装:
npm install mcp-3d-printer-server
启动服务
通过以下命令启动 MCP 服务:
npx mcp-3d-printer-server
访问 http://localhost:3000 查看文档。
✨ 主要特性
支持的命令
stl 操作
- 基础使用
- 加载 STL 文件:
mcp load-stl <文件路径>
- **显示加载的 STL 文件列表**:
mcp list-stl
- **保存当前 STL 文件**:
mcp save-stl --name <名称> [--output <输出目录>]
- 修改操作
- 切割模型(XY平面):
mcp cut-stl --plane XY --at Z=0.5
- **切割模型(XZ平面)**:
mcp cut-stl --plane XZ --at Y=1.5
- **切割模型(YZ平面)**:
mcp cut-stl --plane YZ --at X=2.0
- **延伸基底**:
mcp extend-base <长度>
- 可视化
- 生成 SVG 图像:
mcp visualize-svg --output <输出路径>
- **查看 STL 模型信息**:
mcp inspect-stl
gcode 处理
- 确认温度设置:
mcp confirm-temps <gcode文件> [--extruder-temp 200] [--bed-temp 60]
- 验证 G-code 文件:
mcp verify-gcode <gcode文件>
打印
- 启动打印:
mcp start-print --gcodes-dir /path/to/gcodes --file-name print.gcode --print-name MyPrint --md5 hashvalue
示例流程
- 加载 STL 文件:
mcp load-stl model.stl
- 延伸基底:
mcp extend-base 2.0
- 保存修改后的 STL 文件:
mcp save-stl --name modified-model
- 生成 G-code:
mcp generate-gcode --slicer prusaslicer --output sliced.gcode
- 确认温度设置:
mcp confirm-temps sliced.gcode --extruder-temp 200 --bed-temp 60
支持的打印机
Bambu Lab 打印机限制
由于 Bambu Lab 打印机 API 的性质,存在以下限制:
- 启动打印:需要 3MF 项目文件路径、gcode 文件名、打印名称和 MD5 哈希。当前简化的 API 尚未完全支持。
- 温度控制:Bambu API 不提供直接设置温度的方法。这需要自定义 G-code 命令。
- 文件管理:文件必须上传到打印机的“gcodes”目录。
📚 详细文档
命令详情表格
| 属性 | 详情 |
|------|------|
| 命令 | 描述 |
| load-stl | 加载 STL 文件 |
| list-stl | 列出所有加载的 STL 文件 |
| save-stl | 保存当前 STL 文件 |
| cut-stl | 切割 STL 文件 |
| extend-base | 延伸 STL 模型的基底 |
| visualize-svg | 生成 SVG 图像 |
| inspect-stl | 查看 STL 文件的信息 |
| confirm-temps | 确认 G-code 中的温度设置 |
| verify-gcode | 验证 G-code 文件的完整性 |
| start-print | 启动打印任务 |
徽章详情表格
| 属性 | 详情 |
|------|------|
| 徽章 | 描述 |
| | 获取最新版本信息 |
|
| 兼容的 Node.js 版本 |
|
| 项目许可证 |
| 链接 | |
| 点击前往 npm | |
| 查看兼容版本 | |
| 查看许可证 | |
🔧 技术细节
局限性和注意事项
内存使用
- 大型 STL 文件:处理大型或复杂的 STL 文件会消耗大量内存。
- 多步骤操作:连续执行多个 STL 操作(特别是对大文件)可能会导致内存泄漏。
- 长时间运行:长期运行服务器可能会影响系统性能。
其他注意事项
- 数据持久性:所有修改仅在内存中保留,服务器关闭后不会保存。
- 错误处理:需要添加更多的异常处理和日志记录功能。
🤝 贡献
欢迎 fork 和 pull request。请参考 CONTRIBUTING.md。
微信扫一扫