使用说明
FusionMCP
Autodesk Fusion 360的MCP(模型上下文协议)桥。作为Fusion 360插件运行,在上公开HTTP API localhost:7432 MCP客户端(Claude Code等)可用于以编程方式控制Fusion 360。
特性
- 素描:矩形、圆形、直线、圆弧、多边形、椭圆、样条曲线、槽、文本、约束、尺寸
- 三维建模:拉伸、旋转、放样、扫掠、螺旋、管道、孔、壳、圆角、倒角、拔模斜度、螺纹
- 车身操作:移动、旋转、缩放、镜像、复制、组合、图案(矩形/圆形)
- 组件和装配:重命名、删除、切换可见性、激活(就地编辑)、列出引用树、创建关节
- 文档管理:列出打开的文档,在文档之间切换
- 参数:创建、更新、列出用户/模型参数
- 外观:列出/应用外观,设置车身颜色
- 出口:STL、STEP、3MF、F3D、截图
- 取消/重做:基于时间线的撤消/重做,具有自动操作分组功能
- 脚本编写:在Fusion 360中执行任意Python代码(可选通过
FUSION_MCP_TOKEN)
安装
- 复制
FusionMCP文件夹到Fusion 360加载项目录:- 视窗:
%APPDATA%\Autodesk\Autodesk Fusion 360\API\AddIns\ - macOS:
~/Library/Application Support/Autodesk/Autodesk Fusion 360/API/AddIns/
- 视窗:
- 在Fusion 360中,转到 工具>加载项>脚本和加载项
- 启用 FusionMCP 并选中“启动时运行”
- 配置您的MCP客户端以连接到
http://localhost:7432
MCP客户端配置
添加到MCP客户端配置中(例如,Claude Code settings.json):
{
"mcpServers": {
"fusion360": {
"url": "http://localhost:7432"
}
}
}
安全
服务器只监听 127.0.0.1 (本地主机)。为了增强安全性 execute_script,设置 FUSION_MCP_TOKEN 启动Fusion 360之前的环境变量。设置后,所有 execute_script 调用必须包含匹配项 token 参数。
API
所有命令都通过POST发送到 http://localhost:7432 使用JSON正文:
{
"command": "command_name",
"params": { ... }
}
可用命令(~80)
| 类别 | 命令 |
|---|---|
| 资讯 | fusion_status, get_info, get_bodies_info, get_face_info, get_edge_info, get_sketch_info, get_timeline_info, measure_body, measure_between |
| 草图 | create_sketch, create_sketch_on_face, finish_sketch, delete_sketch, draw_rectangle, draw_center_rectangle, draw_circle, draw_line, draw_arc, draw_polygon, draw_ellipse, draw_spline, draw_slot, draw_text, add_sketch_fillet, offset_sketch, mirror_sketch, rectangular_pattern_sketch, add_constraint, add_sketch_dimension |
| 3D功能 | extrude, revolve, loft, sweep, helix, create_pipe, create_hole, shell, fillet, chamfer, press_pull, thicken, draft_face, add_thread |
| 尸体 | delete_body, rename_body, copy_body, move_body, rotate_body, scale_body, mirror_body, combine_bodies, toggle_body_visibility, rectangular_pattern_body, circular_pattern_body |
| 组件 | rename_component, delete_occurrence, toggle_component_visibility, list_occurrences_tree, activate_component, get_component_info, create_component, move_body_to_component |
| 组装 | create_joint, create_as_built_joint |
| 文件 | list_documents, switch_document, create_new_document, clear_design, save, save_as |
| 参数 | add_parameter, update_parameter, list_parameters |
| 外观 | list_appearances, apply_appearance, set_body_color |
| 建筑业 | add_construction_plane, add_construction_axis |
| 出口 | export_stl, export_step, export_3mf, export_f3d, capture_screenshot |
| 历史 | undo, redo |
| 脚本 | execute_script |
事务管理
所有变异命令都会自动包装在时间线组中,以便进行原子撤消/重做。只读命令(查询、列表)跳过分组以提高性能。这 undo 命令使用 timeline.markerPosition 以实现可靠的回滚。
超时
- 导出和脚本命令:120秒
- 所有其他命令:30秒
建筑
Claude Code / MCP Client
|
| HTTP POST (JSON)
v
ThreadingHTTPServer (:7432) [worker thread]
|
| queue + custom event
v
MCPEventHandler.notify() [Fusion main thread]
|
| _process_command() -> dispatch table
v
Fusion 360 API (adsk.fusion)
关键设计决策(记录为swarm kb中的ADR):
- ADR-e7d6450a:用于组件管理的通用CRUD上的平面命令
- ADR-a9033d5e:事务手动开始/提交的上下文管理器
- ADR-03e47f13:基于即时模块拆分的三阶段实用重构
路线图
- [x] 组件/事件管理(重命名、删除、可见性、激活)
- [x] 带有层次结构的完整组装树列表
- [x] 文档管理(列表、切换)
- [x] 通过时间线标记改进撤消/重做
- [x] 自动交易分组
- [x] 线程安全(锁、ThreadingHTTPServer)
- []基于路径的寻址(
Component/SubComp/Body语法) - []CAM工作空间集成
- []二维图形生成
- []干扰检测和质量特性
- []草图修剪/延伸/投影
- []批量操作
许可证
麻省理工学院