关于 FabTally 3D-Print Slicer, Quote & DFM
FabTally 为创客和 Agent 提供 FDM 3D 打印切片、报价和可打印性分析的 MCP 工具,帮助在生产前评估模型。它根据切片计算指标,并提供方向、打印机、材料和设置建议;下载 G-code 和预览文件需付费。
主要功能
- 01切片模型并估算打印成本
- 02检查几何结构和可打印性
- 03优化模型摆放方向
- 04比较打印机和材料
- 05提供打印设置与填充建议
适用场景
- 01打印前估算耗时、耗材和成本
- 02检查模型是否适配打印机平台
- 03选择可减少支撑材料的方向
- 04比较强度、速度或成本相关设置
MCP 相关
它向 MCP 客户端提供模型分析、切片、报价、DFM 和打印建议工具。服务器通过 stdio 或可选的 Streamable HTTP 运行,并将请求转发至 FabTally agent API。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://fabtally.com/mcpclaude mcp add --transport http com-fabtally-slicer https://fabtally.com/mcp{"mcpServers":{"com-fabtally-slicer":{"type":"http","url":"https://fabtally.com/mcp"}}}在 Cursor 中打开{"servers":{"com-fabtally-slicer":{"type":"http","url":"https://fabtally.com/mcp"}}}在 VS Code 中打开{"mcpServers":{"com-fabtally-slicer":{"type":"http","url":"https://fabtally.com/mcp"}}}{"mcpServers":{"com-fabtally-slicer":{"serverUrl":"https://fabtally.com/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
14此工具无需参数。
详细介绍
FabTally MCP 服务
首个用于真实 FDM 3D 打印切片、报价和 DFM/可打印性分析的 MCP 服务。其他所有 3D 打印 MCP 都只是驱动打印机(OctoPrint、Bambu),没有一个会进行切片、报价或执行可制造性设计检查——FabTally 可以。
它接入 FabTally Agent API(https://fabtally.com),使用**生产级切片引擎**,支持 12 种经过校准的 FDM 打印机配置和 12 种耗材材料,并将其封装为 MCP 工具,供任何支持 MCP 的 Agent(Claude Desktop、Cursor、自定义 Agent)发现和调用。
- 个人免费;Agent 按次付费。 使用键盘的用户(Claude Desktop、ChatGPT Desktop——无需加密钱包)可以免费获得真实结果,涵盖所有实用工具:切片指标(打印时间、耗材、层数、成本)、完整 DFM、方向优化,以及打印机/材料/设置顾问——但需遵守宽松的公平使用每日限额,以防免费计算资源被滥用。只有可下载的G-code 文件(和预览 PNG)这一商业交付物,才需通过 x402(Base 上的 USDC)或预付额度付费,适用于 Agent、生产环境和高用量场景。达到每日限额后,系统会友好地提示您购买预付额度(
https://fabtally.com/buy),或改用 x402 Agent 通道。 - 此服务不持有任何私钥,也不会存储模型。它会将调用转发到
https://fabtally.com/...;上传的模型会流式传输至切片器,不会存储。
工具
所有工具均可免费用于个人和交互式场景(受公平使用每日限额约束)。只有带有 include_gcode/include_preview 的 slice_model 需要付费。
| 工具 | 价格 | 功能 |
|---|---|---|
list_printers | 免费 | 实时打印机清单(id、打印平台、喷嘴)、12 种材料、定价模式。请先调用此工具。 |
get_print_quote | 免费 | 切片器精确报价:打印时间、耗材克数,以及包含批量折扣和自定义定价的报价。 |
slice_model | 指标免费/文件付费 | 切片指标(时间、耗材、层数、几何信息、成本)免费。设置 include_gcode/include_preview 后会返回可下载的 G-code/PNG——需付费(通过 x402 或预付额度 api_key)。 |
check_printability | 免费 | DFM/可打印性检查。full=false 可快速读取几何信息;full=true 可获取完整报告,其中包含切片得出的精确支撑和材料差异。 |
analyze_model | 免费 | 几何预览:包围盒(mm)、体积(cm³)、三角形数量、水密性、是否适合打印平台,以及当前是否可打印的判断。 |
optimize_orientation | 免费 | 对最多 4 种方向进行切片,推荐支撑材料用量最少的方向,并提供相较当前方向的节省量和预估价格。 |
compare_printers | 免费 | 使用您的多台打印机分别切片 → 以表格比较时间/耗材/成本/是否适合打印平台,并选出最便宜和最快的方案。 |
recommend_material | 免费 | 根据用途(功能性/装饰性/户外/柔性/耐高温/食品接触注意事项)推荐最佳耗材,并说明理由,且为每个候选材料提供报价。 |
recommend_settings | 免费 | 根据目标(强度/速度/表面效果/成本)推荐层高/填充率/壁数,并通过切片展示取舍。 |
whatif_infill | 免费 | 以表格形式比较多种填充率下的时间/耗材/成本。 |
scale_advisor | 免费 | 缩放后提供新的尺寸/时间/耗材/成本(fit-bed/percent:<n>/dim:<axis>:<mm>)。 |
validate_model | 免费 | 一次性给出是否可打印的判断:水密性、壁厚、尺寸与打印平台的比较、结论及一句话说明。 |
cost_breakdown | 免费 | 按您的货币拆分材料、机器时间、设置和利润成本(使用自定义定价)。 |
analyze_3d_model | 免费 | 通用 3D 模型分析(包围盒、体积、三角形数量、水密性、实体性)——也适用于打印以外的场景(游戏/AR-VR 资产质量检查、市场平台验证、工程检查)。 |
13 款打印机
默认值:elegoo-centauri-carbon。
| id | 打印机 | 平台 X×Y×Z(mm) | 喷嘴 |
|---|---|---|---|
elegoo-centauri-carbon | Elegoo Centauri Carbon | 256×256×257 | 0.4 |
elegoo-neptune4-max | Elegoo Neptune 4 Max | 420×420×480 | 0.4 |
bambu-a1 | Bambu Lab A1 | 256×256×256 | 0.4 |
bambu-a1-mini | Bambu Lab A1 mini | 180×180×180 | 0.4 |
bambu-p1s | Bambu Lab P1S | 256×256×250 | 0.4 |
bambu-x1c | Bambu Lab X1 Carbon | 256×256×250 | 0.4 |
prusa-mk4 | Prusa MK4 | 250×210×220 | 0.4 |
prusa-mini | Prusa MINI | 180×180×180 | 0.4 |
ender3-v3 | Creality Ender-3 V3 | 220×220×250 | 0.4 |
creality-k1 | Creality K1 | 220×220×250 | 0.4 |
creality-k1-max | Creality K1 Max | 300×300×300 | 0.4 |
voron-24-350 | Voron 2.4 350 | 350×350×325 | 0.4 |
anycubic-kobra2 | Anycubic Kobra 2 | 220×220×250 | 0.4 |
材料: pla、pla-cf、petg、petg-cf、abs、abs-cf、asa、asa-cf、
nylon、pc、pet、tpu(PLA/PETG/ABS/ASA 及其碳纤维变体、Nylon、PC、PET、TPU)。
list_printers 始终返回权威的实时列表。
提供模型文件
MCP 工具无法接收原始文件上传,因此每个使用模型的工具都支持 两种 方式提供模型——任选一种:
-
model_url(首选)——只需粘贴链接。 服务会获取文件,并在需要时解压:- 指向
STL/3MF/OBJ/PLY/STEP文件的 直接httpsURL; - 会尝试处理 Thingiverse、Printables 或 MakerWorld 模型页面,但这些网站通常会阻止服务端下载(HTTP 403)。系统会明确提示你自行下载文件并上传;
- GitHub blob URL(自动改写为 raw URL);
- Google Drive 或 Dropbox 分享链接(自动改写为直接下载链接);
.zip归档文件——会提取并使用其中第一个可打印模型(STL/3MF/OBJ/PLY/STEP),并在响应中说明选用了哪个文件。
本地文件? 将文件上传一次到 **https://fabtally.com/upload**(无需账号,拖放即可),即可获取一个短期有效的 URL(约 2 小时后自动删除,不会留存),然后将该 URL 作为
model_url粘贴。最大 64 MB。 - 指向
-
model_base64+filename— 原始文件字节、base64 编码内容以及文件名。仅作为小文件备用方案(大约 <50KB)。 MCP 客户端会截断较大的内联参数,因此以此方式发送的实际 STL 文件可能在无提示的情况下损坏。对于更大的文件,请通过上传桥接使用model_url。
工具调用示例
// 1) Discover printers/materials/pricing (free)
{ "name": "list_printers", "arguments": {} }
// 2) Free printability check on a hosted model
{ "name": "check_printability",
"arguments": { "model_url": "https://fabtally.com/sample-cube-20mm.stl" } }
// 3) Full DFM report (free for interactive use) — paste a GitHub link
{ "name": "check_printability",
"arguments": { "model_url": "https://github.com/user/repo/blob/main/bracket.stl",
"full": true, "printer": "bambu-p1s", "material": "petg" } }
// 4) Slice metrics (free) — no wallet, real print time / filament / cost
{ "name": "slice_model",
"arguments": { "model_url": "https://raw.githubusercontent.com/CreativeTools/3DBenchy/master/Single-part/3DBenchy.stl",
"printer": "prusa-mk4", "material": "pla" } }
// 5) Compare your printers (free)
{ "name": "compare_printers",
"arguments": { "model_url": "https://.../part.zip",
"printers": "bambu-a1,prusa-mk4,ender3-v3", "material": "petg" } }
// 6) The G-code FILE (PAID) — returns an x402 402 challenge unless x_payment/api_key is supplied
{ "name": "slice_model",
"arguments": { "model_url": "https://example.com/gear.stl",
"printer": "voron-24-350", "material": "abs", "include_gcode": true } }
安装
cd fabtally-mcp-server
npm install
运行(stdio — 主要方式)
node index.js
# or, after `npm install -g .`: fabtally-mcp
该服务通过 stdio 使用 MCP 协议通信。将 MCP 客户端指向该服务。
Claude Desktop / MCP 客户端配置
{
"mcpServers": {
"fabtally": {
"command": "node",
"args": ["/absolute/path/to/fabtally-mcp-server/index.js"]
}
}
}
运行(Streamable HTTP — 可选)
MCP_HTTP_PORT=8103 node http.js
# POST MCP JSON-RPC messages to http://127.0.0.1:8103/mcp (stateless)
配置
| 环境变量 | 默认值 | 用途 |
|---|---|---|
FABTALLY_BASE | https://fabtally.com | 付费 /agent(x402)通道和发现功能的基础源。 |
FABTALLY_FREE_BASE | = FABTALLY_BASE | 免费通道的基础地址。托管服务会将其指向 localhost 报价服务。 |
FABTALLY_FREE_PREFIX | /api/quote | 免费通道的路径前缀(当 FABTALLY_FREE_BASE 直接指向报价服务时为空)。 |
FABTALLY_INTERNAL_SECRET | (未设置) | 仅用于托管服务:验证转发的每位桌面用户 IP,并将其用作公平使用限额的身份标识。 |
MCP_HTTP_PORT | 8103 | 可选 HTTP 传输(http.js)的端口。 |
MCP_HTTP_HOST | 127.0.0.1 | HTTP 传输的绑定地址。 |
付费调用的工作方式(x402)
- 调用付费工具(或将
check_printability的full设为true),不要提供x_payment。 你会收到{ "payment_required": true, "http_status": 402, "challenge": { ... } },其中包含 x402accepts条目(方案为exact,网络eip155:8453= Base,资产为 USDC,原子单位的amount,以及payTo)。 - 使用你的 x402 客户端 / 钱包,根据该条目构建 x402 支付授权(通过 EIP-3009
transferWithAuthorization向payTo转账)。 - 使用生成的令牌再次调用工具,将其作为
x_payment参数传入。服务端会将其作为X-PAYMENT标头转发,并返回实际结果。
免费发现始终可通过 GET https://fabtally.com/agent/overview 获取;OpenAPI 契约位于
https://fabtally.com/openapi.json;x402 发现位于 https://fabtally.com/.well-known/x402。
测试
node smoke-test.mjs # lists tools, calls list_printers + check_printability, checks paid 402s
许可证
MIT · Sunstone Soft · https://fabtally.com
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。