Fusion MCP para Codex
Enables AI agents to inspect and automate Autodesk Fusion 360 through tools for 3D modeling, sketching, sheet metal, CAM, mesh, assemblies, and document management.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Fusion MCP para CodexShow me the active design summary"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Fusion MCP para Codex
Este proyecto contiene un plugin local para Codex y un add-in para Fusion 360. La idea es que Codex pueda inspeccionar y automatizar Autodesk Fusion 360 a traves de MCP.
Arquitectura
server/main.py: servidor MCP local que Codex inicia porstdiofusion_addin/FusionCodexBridge/: add-in de Fusion 360 que expone un bridge HTTP local en127.0.0.1:19851.mcp.json: indica a Codex como iniciar el servidor MCP local.vscode/mcp.json: configuracion opcional para que VS Code muestre el servidor MCP en su interfaz
El servidor MCP se comunica con el add-in de Fusion por HTTP autenticado. El instalador genera un token local privado y ambos procesos lo leen desde %LOCALAPPDATA%\FusionMCP\credentials.json; el add-in rechaza requests que no presenten el token. El add-in ejecuta el trabajo autorizado en el hilo principal de Fusion usando un evento personalizado.
Related MCP server: Fusion360 LLM Assistant
Herramientas que expone el MCP
fusion_pingfusion_statusfusion_reload_bridgefusion_list_documentsfusion_active_design_summaryfusion_list_user_parametersfusion_list_all_parametersfusion_find_entitiesfusion_resolve_entity_tokenfusion_list_bodiesfusion_list_surface_bodiesfusion_list_mesh_bodiesfusion_printability_reportfusion_list_sketchesfusion_list_sketch_curvesfusion_inspect_sketchfusion_list_componentsfusion_list_construction_planesfusion_list_construction_geometryfusion_list_available_appearancesfusion_list_body_topologyfusion_upsert_user_parameterfusion_delete_user_parameterfusion_create_rectangle_sketchfusion_create_circle_sketchfusion_create_line_sketchfusion_create_arc_sketchfusion_create_polyline_sketchfusion_create_polygon_sketchfusion_create_slot_sketchfusion_offset_sketch_curvesfusion_add_sketch_constraintfusion_add_sketch_dimensionfusion_create_offset_construction_planefusion_create_midplanefusion_create_angled_construction_planefusion_create_construction_point_from_sketch_pointfusion_create_construction_axis_by_two_pointsfusion_create_construction_plane_by_three_pointsfusion_rename_construction_entityfusion_delete_construction_entityfusion_revolve_profilefusion_sweep_profilefusion_loft_profilesfusion_scale_bodiesfusion_split_bodyfusion_draft_facesfusion_thread_facesfusion_thicken_facesfusion_replace_facesfusion_patch_profilefusion_stitch_surface_bodiesfusion_unstitch_facesfusion_extend_surface_edgesfusion_create_ruled_surfacefusion_untrim_surface_facesfusion_trim_surfacesfusion_rename_mesh_bodyfusion_set_mesh_body_visibilityfusion_set_mesh_body_appearancefusion_delete_mesh_bodyfusion_import_meshfusion_convert_mesh_to_brepfusion_reduce_meshfusion_repair_meshfusion_combine_mesh_bodiesfusion_list_sheet_metal_rulesfusion_create_sheet_metal_rulefusion_activate_sheet_metal_rulefusion_create_open_hemfusion_create_sheet_metal_ripfusion_create_boxfusion_create_plate_with_holesfusion_create_cylinderfusion_extrude_profilefusion_create_holefusion_fillet_edgesfusion_chamfer_edgesfusion_combine_bodiesfusion_shell_bodyfusion_mirror_bodiesfusion_rectangular_pattern_bodiesfusion_circular_pattern_bodiesfusion_translate_bodiesfusion_rotate_bodiesfusion_rename_sketchfusion_set_sketch_visibilityfusion_delete_sketchfusion_delete_bodyfusion_set_body_appearancefusion_rename_bodyfusion_set_body_visibilityfusion_rename_construction_planefusion_delete_construction_planefusion_create_componentfusion_list_component_entitiesfusion_rename_componentfusion_set_component_visibilityfusion_activate_componentfusion_delete_componentfusion_translate_componentfusion_create_box_in_componentfusion_create_cylinder_in_componentfusion_extrude_component_profilefusion_list_assembly_treefusion_list_occurrence_entitiesfusion_create_nested_componentfusion_move_occurrence_to_componentfusion_translate_occurrencefusion_activate_manufacture_workspacefusion_manufacture_statusfusion_list_cam_setupsfusion_create_milling_setupfusion_list_cam_strategiesfusion_generate_toolpathsfusion_list_cam_parametersfusion_set_cam_parameterfusion_rename_cam_setupfusion_delete_cam_setupfusion_rename_cam_operationfusion_set_cam_operation_suppressionfusion_delete_cam_operationfusion_list_document_cam_toolsfusion_list_cam_tool_libraryfusion_create_cam_operationfusion_list_cam_post_processorsfusion_list_nc_programsfusion_create_nc_programfusion_postprocess_nc_programfusion_list_cam_machinesfusion_assign_cam_machinefusion_drawing_statusfusion_export_drawing_pdffusion_list_workspacesfusion_activate_workspacefusion_viewport_statusfusion_set_camerafusion_set_viewport_visual_stylefusion_toggle_mesh_face_groupsfusion_capture_viewportfusion_start_local_renderfusion_list_render_jobsfusion_capture_parameter_animationfusion_create_documentfusion_list_cloud_projectsfusion_save_document_asfusion_activate_documentfusion_save_documentfusion_close_documentfusion_list_timelinefusion_rename_timeline_objectfusion_set_timeline_suppressionfusion_delete_timeline_objectfusion_inspect_timeline_dependenciesfusion_export_stepfusion_export_stlfusion_import_stepfusion_export_sketch_dxffusion_import_dxffusion_import_svgfusion_export_cadfusion_import_cadfusion_run_script
Las tools de creacion de sketch pueden trabajar sobre planos de origen (xy, xz, yz) o sobre un plano de construccion personalizado usando construction_plane_index.
fusion_find_entities busca bodies, sketches, componentes y planos personalizados por nombre. Admite exact, contains y fuzzy, y devuelve el selector con el indice que esperan las demas tools.
Las respuestas de inspeccion incluyen entityToken cuando Fusion lo soporta. fusion_resolve_entity_token permite recuperar la entidad y su indice actual despues de cambios en el timeline.
Para agregar constraints o cotas, usa primero fusion_list_sketch_curves y fusion_inspect_sketch. fusion_add_sketch_constraint cubre horizontal, vertical, paralelo, perpendicular, igual, tangente, concentrico y colineal. fusion_add_sketch_dimension cubre longitud de linea, diametro y radio mediante expresiones de Fusion.
fusion_save_document guarda una nueva version de un documento previamente guardado. Para el primer guardado o para crear una copia usa fusion_list_cloud_projects y luego fusion_save_document_as con el project_id y la ruta de una carpeta existente en Fusion Team.
Las tools de timeline pueden afectar features y geometria dependiente. Conviene ejecutar fusion_list_timeline antes de suprimir o borrar un elemento.
fusion_inspect_timeline_dependencies devuelve features enlazadas y relaciones entre parametros asociados al elemento.
Los errores HTTP conservan ahora el mensaje detallado generado dentro de Fusion. Si el bridge no esta activo, Codex indica directamente como iniciar FusionCodexBridge. Despues de reinstalar cambios del add-in, fusion_reload_bridge programa un reinicio del bridge dentro de Fusion para cargar la version instalada; si Codex todavia no muestra tools nuevas, reinicia Codex o reabre el selector del plugin para refrescar el catalogo MCP.
fusion_thread_faces, fusion_thicken_faces y fusion_replace_faces trabajan con indices obtenidos desde fusion_list_body_topology. Fusion no ofrece actualmente una API publica para crear Rib/Web; RibFeatures solo permite inspeccionar features existentes.
fusion_export_cad y fusion_import_cad admiten iges, sat y smt. Para DXF se usan tools separadas porque el formato se aplica a sketches y planos 2D. fusion_import_svg importa un SVG a un sketch nuevo sobre un plano de origen o construccion, con desplazamiento y escala.
Las operaciones dentro de componentes no raiz cubren caja, cilindro y extrude de perfiles. Para ensamblajes anidados usa fusion_list_assembly_tree: devuelve fullPathName, el selector estable que consumen las tools de inspeccion, creacion, movimiento y traslacion de occurrences anidados.
Surface permite listar superficies, patch, stitch, unstitch, extend, ruled surface, trim, untrim y reutilizar fusion_thicken_faces. En fusion_trim_surfaces, usa primero selected_cell_indices=[] para obtener la vista previa de indices y luego repite la llamada con las celdas que deben eliminarse.
Mesh permite importar STL/OBJ/3MF, inspeccionar y administrar bodies, asignar apariencias, ademas de convertir, reducir, reparar y combinar. fusion_printability_report revisa condiciones geometricas basicas para impresion 3D en cuerpos raiz visibles: B-Rep solido o mesh cerrada/orientada con volumen positivo. Sirve para detectar casos visuales como mallas abiertas con volumeCm3 cero, pero la validacion final sigue siendo del slicer. Las cuatro operaciones de modificacion usan APIs preview de Autodesk y pueden no estar disponibles en todas las instalaciones; en ese caso la tool devuelve una instruccion guiada.
El mapeo inicial de Sheet Metal cubre reglas, activacion de reglas, hem abierto y rip sobre un cuerpo de chapa existente. Autodesk no expone actualmente creacion de base flange/flange en la API publica.
Manufacture permite activar el workspace, inspeccionar setups/operaciones/parametros, crear setups de fresado, editar expresiones CAM, renombrar/suprimir/borrar elementos, descubrir estrategias compatibles y generar toolpaths. Tambien permite consultar herramientas del documento o de una biblioteca por URL, crear cualquier strategy compatible con tool y expresiones, consultar/asignar maquinas, buscar posts, crear NCProgram y postprocesar.
Flujo CAM recomendado: crea o inspecciona un setup, consulta fusion_list_cam_strategies, elige una herramienta con fusion_list_document_cam_tools o fusion_list_cam_tool_library, crea la operacion con fusion_create_cam_operation y genera su toolpath. Para codigo NC, descubre una maquina/post, crea el programa con fusion_create_nc_program y ejecuta fusion_postprocess_nc_program. El directorio de salida debe existir y la validacion final de maquina, herramientas, origen y colisiones sigue siendo responsabilidad del operador.
Drawing permite inspeccionar el documento/hoja activa y exportar todas las hojas o un rango a PDF. La API publica de Drawing no expone todavia una coleccion completa para crear y editar programaticamente todas las hojas, vistas y anotaciones.
Render/Animation incluye lectura y control de camara, control de estilo visual del viewport, capturas del viewport, render local asincrono y seguimiento de jobs. fusion_toggle_mesh_face_groups permite apagar/encender la visualizacion de grupos de caras de malla cuando Fusion oculta materiales y muestra colores de face groups. fusion_capture_parameter_animation interpola expresiones de un parametro, puede orbitar la camara, escribe una secuencia PNG y restaura el parametro/camara originales; el ensamblado final de video queda fuera de Fusion.
fusion_list_workspaces y fusion_activate_workspace permiten descubrir y activar workspaces por ID. En Simulation esto solo cubre navegacion: Autodesk no publica actualmente un modelo de API para crear y resolver estudios equivalente a adsk.cam.
fusion_split_body hoy usa como herramienta de corte un plano de origen o un plano de construccion existente. Mas adelante se puede extender a perfiles, caras o cuerpos como splitting tool.
fusion_draft_faces aplica draft sobre caras de un body usando un plano neutral. Lo normal es usar fusion_list_body_topology primero para obtener los face_indices.
Pruebas locales
Para correr las pruebas unitarias y de contrato disponibles sin abrir Fusion:
python -m unittest discover -s testsPara una verificacion rapida de sintaxis en los dos entrypoints Python principales:
python -m py_compile server/main.py fusion_addin/FusionCodexBridge/FusionCodexBridge.pyRequisitos
Windows con
pythondisponible enPATHAutodesk Fusion 360
Instalacion recomendada en Windows
Si ya tienes este repositorio localmente, la forma mas rapida de instalarlo es:
powershell -ExecutionPolicy Bypass -File .\scripts\install-fusion-mcp.ps1Ese instalador hace lo siguiente:
genera o conserva una credencial aleatoria privada para autenticar MCP con Fusion
protege la carpeta de credenciales con permisos para el usuario actual
copia el plugin en
~/plugins/fusion-mcpactualiza
~/.agents/plugins/marketplace.jsoninstala las dependencias de
requirements.txtcopia el add-in de Fusion en
%APPDATA%\Autodesk\Autodesk Fusion 360\API\AddIns\FusionCodexBridgesi esa carpeta existe; si no, usa%APPDATA%\Autodesk\Autodesk Fusion\API\AddIns\FusionCodexBridge
Si solo quieres instalar la parte de Codex y todavia no copiar el add-in de Fusion, puedes usar:
powershell -ExecutionPolicy Bypass -File .\scripts\install-fusion-mcp.ps1 -SkipFusionAddInPaso a paso para dejarlo funcionando
Abre una terminal en la raiz del repositorio.
Ejecuta el instalador:
powershell -ExecutionPolicy Bypass -File .\scripts\install-fusion-mcp.ps1Abre Fusion 360.
En Fusion, entra a Utilities > Add-Ins > Scripts and Add-Ins.
Ve a la pestaña Add-Ins.
Si la lista aparece vacia, limpia los filtros antes de asumir que falta el add-in.
Busca
FusionCodexBridgey ejecutalo con Run.Si
FusionCodexBridgeno aparece en la lista, usa el boton+y apunta manualmente a una de estas carpetas:%APPDATA%\Autodesk\Autodesk Fusion 360\API\AddIns\FusionCodexBridge%APPDATA%\Autodesk\Autodesk Fusion\API\AddIns\FusionCodexBridge
Verifica que el bridge local de Fusion este corriendo:
$credential = Get-Content "$env:LOCALAPPDATA\FusionMCP\credentials.json" -Raw | ConvertFrom-Json Invoke-RestMethod http://127.0.0.1:19851/health -Headers @{ Authorization = "Bearer $($credential.token)" }Deberias recibir una respuesta JSON con
"ok": true.Reinicia Codex o recarga la ventana de VS Code si hace falta.
Si usas Codex CLI o la app de Codex, registra el servidor MCP una sola vez:
codex mcp add fusion-local -- python "$HOME\plugins\fusion-mcp\server\main.py"Comprueba que el servidor quedo registrado:
codex mcp listSi usas VS Code, abre este repositorio como workspace y ejecuta MCP: List Servers.
Deberias ver
fusion-localdesde.mcp.jsony/ofusionLocaldesde.vscode/mcp.json.Si aparece como
Stopped, inicalo desde la interfaz MCP de VS Code.Vuelve a Codex y prueba con una instruccion simple, por ejemplo:
revisa el diseño activo en Fusionhaz un fusion_statuscrea una caja de 10x6x3 cm
Instalacion manual
La instalacion manual tambien requiere que MCP y Fusion compartan un token de al menos 32 caracteres mediante FUSION_MCP_TOKEN o un archivo JSON indicado por FUSION_MCP_CREDENTIALS_FILE. Para evitar errores de permisos y configuracion se recomienda ejecutar el instalador al menos una vez.
Si no quieres usar el instalador, puedes hacer el proceso a mano:
Instala las dependencias de Python:
pip install -r requirements.txtCopia
fusion_addin/FusionCodexBridge/a una carpeta de Add-Ins de Fusion:%APPDATA%\Autodesk\Autodesk Fusion 360\API\AddIns\o
%APPDATA%\Autodesk\Autodesk Fusion\API\AddIns\
Registra el servidor MCP en Codex:
codex mcp add fusion-local -- python "$PWD\server\main.py"Abre Fusion 360 y ejecuta
FusionCodexBridgedesde Utilities > Add-Ins > Scripts and Add-Ins.
Solucion de problemas
Si Fusion muestra la lista de add-ins vacia, primero limpia los filtros de la ventana Scripts and Add-Ins.
Si VS Code muestra
No MCP Servers found, ejecuta Developer: Reload Window y luego vuelve a usar MCP: List Servers.No busques
fusion-localen el Marketplace de extensiones de VS Code. Es un servidor MCP local, no una extension del marketplace.Si Codex ve el servidor pero las acciones contra Fusion fallan, verifica que
http://127.0.0.1:19851/healthresponda con"ok": true.Si recibes
Unauthorized Fusion MCP request, vuelve a ejecutar el instalador y reinicia Codex y el add-in para que ambos usen la misma credencial.No copies ni publiques
%LOCALAPPDATA%\FusionMCP\credentials.json; el instalador nunca muestra el token.
Notas
fusion_run_scriptejecuta Python dentro de Fusion con acceso completo a la API. Usalo solo con codigo confiable.Todos los endpoints, incluido
/health, requieren el Bearer token generado durante la instalacion.La herramienta de script devuelve el valor asignado a la variable
result.Si el bridge no esta corriendo, empieza probando con
fusion_pingofusion_statusdespues de iniciar el add-in.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ffelipev2/MCP-Fusion360'
If you have feedback or need assistance with the MCP directory API, please join our Discord server