FreeCAD MCP

🔧 AI驱动的3D建模与CAD自动化

通过MCP协议让AI直接控制FreeCAD进行3D建模与CAD自动化,支持参数化设计和智能约束求解,适合工程师与设计师的AI辅助创作

收藏
4.7k
安装
958
版本
1.0.0
CLS 安全性认证2026-08-03
点击查看完整报告 >

使用说明

核心用法

FreeCAD MCP Skill 是一座连接大语言模型与专业CAD软件的桥梁。通过Model Context Protocol (MCP) 标准协议,AI Agent能够直接操控FreeCAD的底层API,实现从自然语言描述到三维实体模型的端到端生成。

安装流程分为两步:首先通过npm安装skill本体,然后将FreeCAD插件复制到对应系统的Mod目录,最后在FreeCAD内启动RPC服务器即可完成部署。配置文件中只需指定http://localhost:9876端点即可接入。

典型工作流包括:用户用自然语言描述零件需求(如"50x50x10mm立方体带中心20mm孔")→ AI解析几何参数与约束关系 → 调用FreeCAD的Part/Sketcher模块生成2D草图 → 通过拉伸/旋转等操作生成3D实体 → 自动求解尺寸约束 → 导出STEP/STL等格式。

显著优点

  • 协议标准化:采用Anthropic主导的MCP协议,与LangChain、Google ADK等主流Agent框架无缝兼容,避免重复开发适配层
  • 完整功能暴露:不仅限于简单几何生成,可直接访问FreeCAD的Sketcher约束求解器、FEM有限元、Path数控加工等高级模块
  • 本地化优先:RPC服务器运行在本地FreeCAD进程,敏感设计数据不出境,满足制造业保密需求
  • 参数化可编辑:生成的模型保留完整的特征历史树,支持后续在FreeCAD GUI中手动调整参数

潜在局限

  • 环境依赖重:需同时维护FreeCAD 0.21+、Python 3.10+、Node.js三件套,Windows平台易出现DLL冲突
  • 实时性瓶颈:RPC调用存在序列化开销,复杂装配体的布尔运算可能出现 noticeable latency
  • 状态同步脆弱:FreeCAD崩溃或RPC超时后,AI Agent无法自动感知会话状态,需人工重启链路
  • 几何理解天花板:当前LLM对拓扑关系(如G2曲面连续性、拔模角度)的推理能力有限,复杂曲面仍需人工干预

适合人群

  • 硬件创客:快速将AI生成的概念描述转化为可3D打印的实体模型
  • 机械工程师:自动化生成系列化标准件、参数化变型设计
  • 教育场景:让学生用自然语言探索CAD操作,降低学习曲线
  • AI Agent开发者:构建具备物理世界操控能力的自动化工作流

常规风险

  • 版本碎片化:FreeCAD 0.21与1.0+版本API存在breaking changes,addon可能需跟随升级
  • 并发安全隐患:RPC服务器默认无认证,多用户共享机器时可能被恶意连接篡改设计
  • 几何验证缺失:AI可能生成"看上去正确"但存在自相交、零厚度壁等 manufacturability 缺陷的几何体
  • 许可合规:生成模型若用于商业产品,需确认未意外包含GPL传染代码(FreeCAD核心为LGPL,但部分Workbench为GPL)

安全解读

核心用法

FreeCAD MCP Skill 是一座连接 AI 智能体与开源 CAD 软件 FreeCAD 的桥梁。用户通过安装 MCP 服务器端和 FreeCAD 插件,即可用自然语言指令驱动 3D 建模——例如"创建一个带中心孔的立方体"或"将草图转换为可打印模型"。该技能支持 LangChain 和 Google ADK 等主流 Agent 框架,兼容 FreeCAD 0.21+ 版本,通过本地 RPC 通信实现毫秒级响应。

安装流程分为四步:安装 Skill 包、复制 FreeCAD 插件到系统目录、在 FreeCAD 内启动 RPC 服务器、配置 Agent 的 MCP 端点。完成后,AI 可调用包括草图绘制、约束求解、零件库集成和代码执行在内的全套 CAD 能力。

显著优点

深度集成开源生态:直接对接 FreeCAD 这一成熟的开源 CAD 平台,无需订阅商业软件,降低专业 3D 设计门槛。

自然语言驱动设计:将"设计一个带集成轴的玩具车身"这类模糊需求转化为精确参数化模型,大幅缩短从概念到原型的周期。

自动化工作流:支持批量生成零件、自动约束求解和脚本化建模,适合参数化设计和版本迭代场景。

框架无关性:同时兼容 LangChain ReAct 和 Google ADK,方便集成到现有 AI 应用架构中。

本地优先架构:所有通信局限于 localhost,不上传模型数据至云端,保护知识产权和敏感设计。

潜在缺点与局限性

外部依赖门槛:必须预先安装 FreeCAD 并手动配置插件路径,跨平台路径差异(macOS/Linux/Windows)增加了部署复杂度。

代码执行风险:核心功能依赖 Python exec() 执行 AI 生成的脚本,虽隔离在 FreeCAD 沙箱内,但仍存在恶意代码注入的理论可能。

T3 来源可信度:作者为个人开发者(neka-nat/mars720816),无企业级维护承诺,长期更新存在不确定性。

无加密通信:本地 RPC 未启用 TLS,同一机器上的其他进程理论上可嗅探或劫持通信。

学习曲线陡峭:用户需同时理解 FreeCAD 的 Part/Sketcher 工作流、MCP 协议和 Agent 配置,非技术背景用户上手困难。

适合的目标群体

  • 硬件工程师与创客:需要快速验证机械设计概念的独立开发者
  • 自动化工程师:寻求将 CAD 流程纳入 CI/CD 或批处理流水线的企业用户
  • AI 应用开发者:构建垂直领域工业设计 Agent 的技术团队
  • 教育工作者:在 STEM 课程中演示参数化设计与 AI 结合的教师

不适合:无 CAD 基础且不愿学习 FreeCAD 操作的用户;对供应链安全有极高要求的企业级生产环境。

使用风险

性能风险:复杂约束求解或高密度网格生成可能导致 FreeCAD 内存占用激增,建议设置进程资源限制。

版本兼容性:FreeCAD 的 Python API 在版本间存在破坏性变更,锁定 0.21+ 版本可降低风险。

模型数据安全:虽网络层安全,但 execute_code 可访问 FreeCAD 的完整 Python 环境,恶意指令可能读取本地配置文件或覆盖工作目录中的 .FCStd 文件。

维护中断风险:个人项目可能因作者精力转移而停滞,建议 fork 后自行维护关键补丁。

FreeCAD MCP 内容

addon文件夹
FreeCADMCP文件夹
rpc_server文件夹
examples文件夹
adk文件夹
langchain文件夹
src文件夹
freecad_mcp文件夹
手动下载zip · 16.5 kB
__init__.pytext/plain
请选择文件