MCP 3D 打印机服务器是一款用于控制和管理 3D 打印机的实用工具。它借助 RESTful API 实现交互,能对 STL 文件进行处理、生成 GCode、监控打印进度,还可进行基本的温度控制,为 3D 打印工作提供了全面的支持。
MCP 3D 打印机服务器支持通过 RESTful API 进行交互,能够处理 STL 文件、生成 GCode、监控打印进度并进行基本的温度控制。
npm install mcp-3d-printer-server
node index.js
| 动作 | 路径 | 方法 | 描述 |
|---|---|---|---|
| 获取模型列表 | /api/models |
GET | 返回所有上传的 STL 模型列表。 |
| 上传新模型 | /api/models |
POST | 上传一个新的 STL 文件。 |
| 处理模型 | /api/models/{modelId}/process |
POST | 对指定模型进行处理(如扩展基底、切片等)。 |
| 获取打印状态 | /api/printers |
GET | 返回所有连接打印机的状态信息。 |
| 控制温度 | /api/printers/{printerId}/temp |
POST | 设置打印机的温度参数。 |
请求示例:
POST /api/models
Content-Type: multipart/form-data
file=@model.stl
响应示例:
{
"status": "success",
"message": "Model uploaded successfully.",
"modelId": "12345"
}
请求示例:
POST /api/models/12345/process
Content-Type: application/json
{
"operations": ["extend_base", "slice", "check_temperatures"]
}
响应示例:
{
"status": "success",
"message": "Model processing started.",
"taskId": "abc123"
}
用于增加模型的基底高度,防止打印失败。
使用方法:
/api/models。extend_base 操作。示例:
{
"operations": ["extend_base"]
}
集成 PrusaSlicer 进行切片处理,生成打印所需的 GCode。
使用方法:
slice 操作。示例:
{
"operations": ["slice"]
}
检查模型的推荐打印温度设置。
使用方法:
在处理请求中包含 check_temperatures 操作,服务器将返回建议的温度参数。
function extendBase(model) {
// 实现扩展基底的逻辑
}
const slicer = new PrusaSlicer();
slicer.process('model.stl', 'output.gcode');
处理大模型时,需确保服务器有足够的内存。
| 名称 | 描述 |
|---|---|
| npm 版本 | 显示当前 npm 包的版本信息。 |
| 许可证 | 项目使用的开源许可证信息。 |
| TypeScript 版本 | 当前项目的 TypeScript 编译器版本。 |
const express = require('express');
const app = express();
app.get('/api/models', (req, res) => {
// 返回模型列表逻辑
});
app.post('/api/models', (req, res) => {
// 处理文件上传逻辑
});
app.listen(3000, () => {
console.log('Server running on port 3000');
});
如需进一步支持或遇到问题,请联系技术支持。