Skip to main content
Glama
ffelipev2

Fusion MCP para Codex

by ffelipev2

Fusion MCP für Codex

Dieses Projekt enthält ein lokales Plugin für Codex und ein Add-in für Fusion 360. Die Idee ist, dass Codex Autodesk Fusion 360 über MCP inspizieren und automatisieren kann.

Architektur

  • server/main.py: lokaler MCP-Server, den Codex über stdio startet

  • fusion_addin/FusionCodexBridge/: Fusion-360-Add-in, das einen lokalen HTTP-Bridge unter 127.0.0.1:19851 bereitstellt

  • .mcp.json: teilt Codex mit, wie der lokale MCP-Server gestartet wird

Der MCP-Server kommuniziert über authentifiziertes HTTP mit dem Fusion-Add-in. Der Installer generiert ein privates lokales Token, und beide Prozesse lesen es aus %LOCALAPPDATA%\FusionMCP\credentials.json; das Add-in lehnt Anfragen ab, die das Token nicht enthalten. Das Add-in führt die autorisierte Arbeit im Hauptthread von Fusion mithilfe eines benutzerdefinierten Ereignisses aus. Das Manifest installiert FusionCodexBridge mit runOnStartup=true, sodass der Bridge beim Öffnen von Fusion automatisch startet. Die JSON-Körper von POST-Anfragen haben ein Standardlimit von 1 MiB, und fusion_run_script bleibt deaktiviert, sofern nicht explizit opt-in.

Der Endpunkt /health gibt die Version des Bridges und protocolVersion zurück. Der MCP-Client führt vor der Ausführung normaler Tools eine Kompatibilitätsprüfung durch und liefert eine geführte Fehlermeldung, wenn Fusion noch ein altes Add-in ausführt; fusion_ping und fusion_reload_bridge stehen zur Diagnose und zum Neuladen zur Verfügung.

Related MCP server: fusion360-mcp-server

Vom MCP bereitgestellte Tools

  • fusion_ping

  • fusion_status

  • fusion_reload_bridge

  • fusion_list_documents

  • fusion_active_design_summary

  • fusion_list_user_parameters

  • fusion_list_all_parameters

  • fusion_find_entities

  • fusion_resolve_entity_token

  • fusion_list_bodies

  • fusion_list_surface_bodies

  • fusion_list_mesh_bodies

  • fusion_printability_report

  • fusion_list_sketches

  • fusion_list_sketch_curves

  • fusion_list_sketch_profiles

  • fusion_inspect_sketch

  • fusion_list_components

  • fusion_list_construction_planes

  • fusion_list_construction_geometry

  • fusion_list_available_appearances

  • fusion_list_available_materials

  • fusion_list_body_topology

  • fusion_inspect_body_physical_properties

  • fusion_upsert_user_parameter

  • fusion_delete_user_parameter

  • fusion_create_rectangle_sketch

  • fusion_create_circle_sketch

  • fusion_create_line_sketch

  • fusion_create_arc_sketch

  • fusion_create_ellipse_sketch

  • fusion_create_fitted_spline_sketch

  • fusion_create_text_sketch

  • fusion_create_conic_sketch

  • fusion_create_polyline_sketch

  • fusion_create_polygon_sketch

  • fusion_create_slot_sketch

  • fusion_offset_sketch_curves

  • fusion_trim_sketch_curve

  • fusion_extend_sketch_curve

  • fusion_fillet_sketch_curves

  • fusion_chamfer_sketch_lines

  • fusion_project_entities_to_sketch

  • fusion_intersect_entities_with_sketch_plane

  • fusion_project_curves_to_surface

  • fusion_move_sketch_entities

  • fusion_copy_sketch_entities

  • fusion_mirror_sketch_entities

  • fusion_rectangular_pattern_sketch_entities

  • fusion_circular_pattern_sketch_entities

  • fusion_add_sketch_constraint

  • fusion_add_sketch_dimension

  • fusion_set_sketch_dimension_expression

  • fusion_delete_sketch_constraint

  • fusion_delete_sketch_dimension

  • fusion_create_offset_construction_plane

  • fusion_create_midplane

  • fusion_create_angled_construction_plane

  • fusion_create_construction_point_from_sketch_point

  • fusion_create_construction_axis_by_two_points

  • fusion_create_construction_plane_by_three_points

  • fusion_rename_construction_entity

  • fusion_delete_construction_entity

  • fusion_revolve_profile

  • fusion_sweep_profile

  • fusion_loft_profiles

  • fusion_scale_bodies

  • fusion_split_body

  • fusion_preview_boundary_fill_cells

  • fusion_create_boundary_fill

  • fusion_create_silhouette_split

  • fusion_merge_faces

  • fusion_create_emboss

  • fusion_create_derive

  • fusion_split_faces

  • fusion_delete_faces

  • fusion_draft_faces

  • fusion_thread_faces

  • fusion_thicken_faces

  • fusion_replace_faces

  • fusion_patch_profile

  • fusion_stitch_surface_bodies

  • fusion_unstitch_faces

  • fusion_extend_surface_edges

  • fusion_create_ruled_surface

  • fusion_untrim_surface_faces

  • fusion_trim_surfaces

  • fusion_rename_mesh_body

  • fusion_set_mesh_body_visibility

  • fusion_set_mesh_body_appearance

  • fusion_delete_mesh_body

  • fusion_import_mesh

  • fusion_convert_mesh_to_brep

  • fusion_reduce_mesh

  • fusion_repair_mesh

  • fusion_combine_mesh_bodies

  • fusion_list_sheet_metal_rules

  • fusion_create_sheet_metal_rule

  • fusion_activate_sheet_metal_rule

  • fusion_create_open_hem

  • fusion_create_sheet_metal_rip

  • fusion_create_box

  • fusion_create_plate_with_holes

  • fusion_create_printable_svg_plate

  • fusion_create_cylinder

  • fusion_extrude_profile

  • fusion_create_hole

  • fusion_fillet_edges

  • fusion_chamfer_edges

  • fusion_combine_bodies

  • fusion_shell_body

  • fusion_mirror_bodies

  • fusion_rectangular_pattern_bodies

  • fusion_circular_pattern_bodies

  • fusion_translate_bodies

  • fusion_rotate_bodies

  • fusion_rename_sketch

  • fusion_set_sketch_visibility

  • fusion_delete_sketch

  • fusion_delete_body

  • fusion_set_body_appearance

  • fusion_set_face_appearance

  • fusion_set_body_material

  • fusion_rename_body

  • fusion_set_body_visibility

  • fusion_rename_construction_plane

  • fusion_delete_construction_plane

  • fusion_create_component

  • fusion_list_component_entities

  • fusion_rename_component

  • fusion_set_component_visibility

  • fusion_activate_component

  • fusion_delete_component

  • fusion_translate_component

  • fusion_create_box_in_component

  • fusion_create_cylinder_in_component

  • fusion_extrude_component_profile

  • fusion_list_assembly_tree

  • fusion_list_occurrence_entities

  • fusion_list_occurrence_topology

  • fusion_create_nested_component

  • fusion_move_occurrence_to_component

  • fusion_copy_paste_bodies

  • fusion_cut_paste_bodies

  • fusion_translate_occurrence

  • fusion_set_occurrence_grounded

  • fusion_create_rigid_group

  • fusion_analyze_assembly_interference

  • fusion_create_joint

  • fusion_create_joint_origin

  • fusion_list_joint_origins

  • fusion_activate_manufacture_workspace

  • fusion_manufacture_status

  • fusion_list_cam_setups

  • fusion_create_milling_setup

  • fusion_list_cam_strategies

  • fusion_generate_toolpaths

  • fusion_list_cam_parameters

  • fusion_set_cam_parameter

  • fusion_rename_cam_setup

  • fusion_delete_cam_setup

  • fusion_rename_cam_operation

  • fusion_set_cam_operation_suppression

  • fusion_delete_cam_operation

  • fusion_list_document_cam_tools

  • fusion_list_cam_tool_library

  • fusion_create_cam_operation

  • fusion_list_cam_post_processors

  • fusion_list_nc_programs

  • fusion_create_nc_program

  • fusion_postprocess_nc_program

  • fusion_list_cam_machines

  • fusion_assign_cam_machine

  • fusion_drawing_status

  • fusion_export_drawing_pdf

  • fusion_list_workspaces

  • fusion_activate_workspace

  • fusion_viewport_status

  • fusion_set_camera

  • fusion_set_viewport_visual_style

  • fusion_toggle_mesh_face_groups

  • fusion_capture_viewport

  • fusion_start_local_render

  • fusion_list_render_jobs

  • fusion_capture_parameter_animation

  • fusion_create_document

  • fusion_list_cloud_projects

  • fusion_save_document_as

  • fusion_activate_document

  • fusion_save_document

  • fusion_close_document

  • fusion_list_timeline

  • fusion_rename_timeline_object

  • fusion_set_timeline_suppression

  • fusion_delete_timeline_object

  • fusion_inspect_timeline_dependencies

  • fusion_export_step

  • fusion_export_stl

  • fusion_export_printable_stl

  • fusion_import_step

  • fusion_export_sketch_dxf

  • fusion_import_dxf

  • fusion_import_svg

  • fusion_export_cad

  • fusion_import_cad

  • fusion_run_script

Die Sketch-Erstellungstools können auf Ursprungsebenen (xy, xz, yz) oder auf einer benutzerdefinierten Konstruktionsebene mithilfe von construction_plane_index arbeiten.

fusion_find_entities sucht Bodies, Sketches, Komponenten und benutzerdefinierte Ebenen nach Namen. Es unterstützt exact, contains und fuzzy und gibt den Selektor mit dem Index zurück, den die anderen Tools erwarten.

Die Inspektionsantworten enthalten entityToken, wenn Fusion dies unterstützt. fusion_resolve_entity_token ermöglicht es, die Entität und ihren aktuellen Index nach Änderungen in der Timeline abzurufen.

Um Constraints oder Bemaßungen hinzuzufügen, verwende zuerst fusion_list_sketch_curves und fusion_inspect_sketch; ihre Indizes können sich nach einer Bearbeitung ändern. fusion_list_sketch_profiles listet extrudierbare Profile mit Fläche, Schwerpunkt, Bounding Box und Loops auf; verwende es, um profile_indices auszuwählen, wenn ein komplexes SVG oder Logo viele Regionen erzeugt. fusion_add_sketch_constraint deckt horizontal, vertikal, parallel, senkrecht, gleich, tangential, konzentrisch, kollinear, deckungsgleich, Mittelpunkt, Symmetrie, glatt, fixieren und lösen ab. fusion_add_sketch_dimension deckt Länge, horizontal, vertikal, ausgerichtet, winklig, Durchmesser und Radius über Fusion-Ausdrücke ab; lineare Bemaßungen akzeptieren eine Linie oder zwei Punkte, und die winklige erfordert zwei Linien. Verwende fusion_set_sketch_dimension_expression, um eine Bemaßung zu bearbeiten, und die Tools fusion_delete_sketch_*, um die ausgewählte Bemaßung oder den ausgewählten Constraint zu löschen.

fusion_save_document speichert eine neue Version eines zuvor gespeicherten Dokuments. Für das erste Speichern oder zum Erstellen einer Kopie verwende fusion_list_cloud_projects und dann fusion_save_document_as mit der project_id und dem Pfad eines vorhandenen Ordners in Fusion Team.

Die Timeline-Tools können Features und abhängige Geometrie beeinflussen. Es ist ratsam, fusion_list_timeline auszuführen, bevor ein Element unterdrückt oder gelöscht wird.

fusion_inspect_body_physical_properties gibt Masse, Dichte, Massenschwerpunkt und Trägheitsmomente eines Root-Bodies zurück. Die Genauigkeit kann low (±1%), medium (±0,5%), high (±0,1%) oder very_high (±0,01%) sein; eine höhere Genauigkeit dauert länger. fusion_inspect_timeline_dependencies gibt verknüpfte Features und Beziehungen zwischen Parametern zurück, die dem Element zugeordnet sind.

Die HTTP-Fehler behalten jetzt die detaillierte Meldung, die innerhalb von Fusion generiert wurde. Wenn der Bridge nicht aktiv ist, zeigt Codex direkt an, wie FusionCodexBridge gestartet wird. Nach der Neuinstallation von Add-in-Änderungen plant fusion_reload_bridge einen Neustart des Bridges innerhalb von Fusion, um die installierte Version zu laden; wenn Codex noch keine neuen Tools anzeigt, starte Codex neu oder öffne den Plugin-Selektor erneut, um den MCP-Katalog zu aktualisieren.

fusion_thread_faces, fusion_thicken_faces und fusion_replace_faces arbeiten mit Indizes, die von fusion_list_body_topology abgerufen werden. Fusion bietet derzeit keine öffentliche API zum Erstellen von Rippen/Stegen; RibFeatures erlaubt nur die Inspektion vorhandener Features.

fusion_export_cad und fusion_import_cad unterstützen iges, sat und smt. Für DXF werden separate Tools verwendet, da das Format auf Sketches und 2D-Ebenen angewendet wird. fusion_export_printable_stl führt grundlegende Druckbarkeitsprüfungen durch, bevor STL des Root-Komponenten oder eines bestimmten Bodies exportiert wird, und gibt den Bericht zusammen mit der generierten Datei zurück. fusion_import_svg importiert ein SVG in einen neuen Sketch auf einer Ursprungs- oder Konstruktionsebene, mit Versatz und Skalierung. Für eine direkt druckbare Platte erstellt fusion_create_printable_svg_plate eine rechteckige solide Basis, importiert das SVG auf die obere Fläche und extrudiert seine Profile als verbundenes Relief, getrenntes Relief oder Schnitt. Bei komplexen SVGs kannst du profile_selection (all, largest, area_desc, outer_only) und min_profile_area_cm2 verwenden, um Rauschen zu verwerfen; profile_indices bleibt für die genaue manuelle Auswahl verfügbar.

Die Operationen in Nicht-Root-Komponenten umfassen Box, Zylinder und Extrusion von Profilen. Für verschachtelte Baugruppen verwende fusion_list_assembly_tree: Es gibt fullPathName zurück, den stabilen Selektor, den die Tools für Inspektion, Erstellung, Bewegung und Verschiebung verschachtelter Occurrences verwenden. fusion_copy_paste_bodies und fusion_cut_paste_bodies verwenden lokale Indizes der Quellkomponente; lasse den Pfad für die Root-Komponente leer. Cut/Paste verschiebt die Körper und erfordert allow_move_bodies=true. Eine Occurrence repräsentiert eine Komponentendefinition: Wenn diese Definition mehrere Instanzen hat, kann das Kopieren oder Verschieben von Körpern alle betreffen; das Tool verlangt vorher eine zusätzliche Bestätigung. Verwende vor dem Erstellen eines Joints fusion_list_occurrence_topology, um Gesichtsindizes im Kontext jeder Occurrence zu erhalten. Das MVP von fusion_create_joint unterstützt planare Flächen und Joints rigid oder revolute; die zweite Occurrence kann beim Erstellen des Joints neu positioniert werden. fusion_set_occurrence_grounded, fusion_create_rigid_group und fusion_analyze_assembly_interference arbeiten mit Occurrence-Pfaden, und letzteres ändert das Design nicht.

Surface ermöglicht das Auflisten von Oberflächen, Patch, Stitch, Unstitch, Extend, Ruled Surface, Trim, Untrim und die Wiederverwendung von fusion_thicken_faces. Bei fusion_trim_surfaces verwende zuerst selected_cell_indices=[], um die Vorschau der Indizes zu erhalten, und wiederhole dann den Aufruf mit den Zellen, die entfernt werden sollen.

Mesh ermöglicht das Importieren von STL/OBJ/3MF, das Inspizieren und Verwalten von Bodies, das Zuweisen von Erscheinungsbildern sowie das Konvertieren, Reduzieren, Reparieren und Kombinieren. fusion_printability_report prüft grundlegende geometrische Bedingungen für den 3D-Druck an sichtbaren Root-Bodies: B-Rep-Festkörper oder geschlossenes/orientiertes Mesh mit positivem Volumen. Es dient zur Erkennung visueller Fälle wie offener Meshes mit volumeCm3 Null, aber die endgültige Validierung bleibt beim Slicer. fusion_create_printable_svg_plate gibt diesen Bericht nach dem Erstellen der Platte zurück, um nicht nur mit visueller Geometrie zu enden. Die vier Modifikationsoperationen verwenden Vorschau-APIs von Autodesk und sind möglicherweise nicht in allen Installationen verfügbar; in diesem Fall gibt das Tool eine geführte Anweisung zurück.

Das anfängliche Mapping von Sheet Metal umfasst Regeln, Aktivierung von Regeln, offener Hem und Rip auf einem vorhandenen Blechkörper. Autodesk stellt derzeit keine Erstellung von Base Flange/Flange in der öffentlichen API bereit.

Manufacture ermöglicht das Aktivieren des Workspace, das Inspizieren von Setups/Operationen/Parametern, das Erstellen von Fräs-Setups, das Bearbeiten von CAM-Ausdrücken, das Umbenennen/Unterdrücken/Löschen von Elementen, das Entdecken kompatibler Strategien und das Generieren von Toolpaths. Es ermöglicht auch das Abfragen von Werkzeugen aus dem Dokument oder aus einer Bibliothek per URL, das Erstellen beliebiger strategy, die mit Tool und Ausdrücken kompatibel sind, das Abfragen/Zuweisen von Maschinen, das Suchen von Posts, das Erstellen von NCProgram und das Postprocessing.

Empfohlener CAM-Ablauf: Erstelle oder inspiziere ein Setup, frage fusion_list_cam_strategies ab, wähle ein Werkzeug mit fusion_list_document_cam_tools oder fusion_list_cam_tool_library, erstelle die Operation mit fusion_create_cam_operation und generiere ihren Toolpath. Für NC-Code entdecke eine Maschine/Post, erstelle das Programm und überprüfe seinen Index, bevor du fusion_postprocess_nc_program mit confirm_postprocess=true ausführst. Das Ausgabeverzeichnis muss existieren, und die endgültige Validierung von Maschine, Werkzeugen, Ursprung und Kollisionen bleibt in der Verantwortung des Bedieners.

Drawing ermöglicht das Inspizieren des aktiven Dokuments/Blatts und das Exportieren aller Blätter oder eines Bereichs als PDF. Die öffentliche Drawing-API stellt noch keine vollständige Sammlung bereit, um alle Blätter, Ansichten und Beschriftungen programmatisch zu erstellen und zu bearbeiten.

Render/Animation umfasst Lesen und Steuern der Kamera, Steuerung des visuellen Stils des Viewports, Viewport-Aufnahmen, asynchrones lokales Rendern und Job-Tracking. fusion_capture_viewport ohne output_path gibt ein Inline-PNG von bis zu 20 MiB zurück und löscht die temporäre Datei vor dem Abschluss; dies ist der empfohlene Modus für die visuelle Inspektion. Um eine Aufnahme zu behalten oder ein größeres Bild zu erzeugen, übergib einen expliziten output_path und persist=true; aus Kompatibilitätsgründen bleiben alte Aufrufe, die bereits einen Pfad liefern, weiterhin persistent. Asynchrone Renderings und Animationen schreiben weiterhin in die vom Benutzer angegebenen expliziten Pfade. fusion_toggle_mesh_face_groups ermöglicht das Aus-/Einschalten der Anzeige von Mesh-Face-Gruppen, wenn Fusion Materialien ausblendet und Face-Group-Farben anzeigt. fusion_capture_parameter_animation interpoliert Ausdrücke eines Parameters, kann die Kamera orbitieren, schreibt eine PNG-Sequenz und stellt den ursprünglichen Parameter/die ursprüngliche Kamera wieder her; das endgültige Video-Assembling liegt außerhalb von Fusion.

fusion_list_workspaces und fusion_activate_workspace ermöglichen das Entdecken und Aktivieren von Workspaces per ID. In Simulation deckt dies nur die Navigation ab: Autodesk veröffentlicht derzeit kein API-Modell zum Erstellen und Lösen von Studien, das adsk.cam entspricht.

fusion_split_body verwendet heute als Schneidwerkzeug eine Ursprungsebene oder eine vorhandene Konstruktionsebene. Später kann es auf Profile, Flächen oder Körper als Splitting-Tool erweitert werden.

Für Boundary Fill verwende zuerst fusion_preview_boundary_fill_cells mit Selektoren für body und/oder construction_plane: Es gibt Volumen, Fläche, Flächen und Bounding Box jeder temporären Zelle zurück. Wiederhole sofort dieselben Selektoren in derselben Reihenfolge mit fusion_create_boundary_fill und den selected_cell_indices, die du behalten möchtest. Diese Indizes sind temporär und sollten nach dem Bearbeiten des Modells nicht wiederverwendet werden. operation unterstützt new_body, join, cut oder intersect; remove_tool_bodies erfordert außerdem allow_remove_tools=true, da es die als Werkzeuge verwendeten Bodies löscht.

fusion_create_silhouette_split berechnet eine Silhouetten-Trennlinie auf einem soliden Root-Body. Die Richtung akzeptiert eine construction_axis, construction_plane, lineare Kante oder planare Fläche; faces_only ist der standardmäßige nicht-destruktive Modus, während shelled_body und solid_body den Körper teilen. Fusion beschränkt diese Funktion auf kompatible Körper; eine Kugel ist ein einfacher Fall, um den Ablauf zu testen.

fusion_merge_faces verbindet verbundene Flächen desselben soliden oder Oberflächen-Bodies, jedoch nur in einem Direct-Modeling-Design. Es ist eine direkte B-Rep-Bearbeitung: Es erstellt kein Feature und keinen Timeline-Eintrag, daher erfordert es allow_direct_modification=true. Verwende is_chain_selection=true, um eine Startfläche über die kompatible verbundene Kette zu erweitern.

fusion_create_emboss mappt ein Sketch-Profil auf eine Fläche eines Root-Bodies. Verwende positive Tiefe für Relief und negative für Gravur; die Ausdrücke akzeptieren Einheiten oder Fusion-Parameter. Das MVP stellt ein Profil und eine Fläche pro Aufruf bereit, mit optionalen Offsets und Rotation. Es erfordert die Emboss-API, die Fusion im September 2025 eingeführt hat; wenn sie nicht verfügbar ist, wird eine geführte Anweisung zurückgegeben.

fusion_create_derive erstellt eine abgeleitete Verknüpfung aus einem anderen bereits geöffneten und in Fusion gespeicherten Design-Dokument. Verwende fusion_list_documents, um source_document_index zu identifizieren; als Quellentitäten akzeptiert es root_component, body, mesh_body, sketch, construction_plane oder occurrence. Das aktive Dokument ist immer das Ziel und kann nicht von sich selbst abgeleitet werden. Das Tool erfordert die Derive-API, die im Januar 2026 eingeführt wurde.

fusion_split_faces akzeptiert als Werkzeug einen Selektor für body, face, sketch_curve oder construction_plane; es unterstützt die Modi surface_intersection, closest_point und along_vector. fusion_delete_faces verwendet standardmäßig heal, damit Fusion versucht, den Körper zu reparieren. Der Modus surface löscht ohne Reparatur und erfordert allow_make_surface=true, da er einen offenen Oberflächenkörper hinterlassen kann. Alle fusion_delete_*-Tools erfordern jetzt den Ziel-Selektor und confirm_delete=true; liste oder inspiziere das Ziel unmittelbar vor der Bestätigung. Das Schließen ohne Speichern erfordert save_changes=false und confirm_discard_changes=true.

fusion_draft_faces wendet Draft auf Flächen eines Körpers an, wobei eine neutrale Ebene verwendet wird. Normalerweise verwendet man zuerst fusion_list_body_topology, um die face_indices zu erhalten.

Lokale Tests

Um die verfügbaren Unit- und Vertragstests ohne Öffnen von Fusion auszuführen:

python -m unittest discover -s tests

Dieser Satz prüft auch, dass die Tool-Liste der README, die Zählung des ROADMAP, die Version von Bridge/Plugin/Manifest und das MCP-Protokoll synchron bleiben.

Für eine schnelle Syntaxprüfung der beiden wichtigsten Python-Einstiegspunkte:

python -m py_compile server/main.py fusion_addin/FusionCodexBridge/FusionCodexBridge.py

Um den echten 3D-Druck-Smoke-Test gegen ein geöffnetes Fusion mit aktivem Bridge auszuführen:

python .\scripts\smoke_printable_svg.py

Dieser Smoke-Test erstellt ein wegwerfbares Dokument, generiert eine Platte aus SVG, exportiert ein STL mit fusion_export_printable_stl, prüft, dass die Datei existiert, und schließt das Dokument ohne Speichern. Die Artefakte verbleiben in scratch/fusion-smoke.

Um einen echten Smoke-Test für grundlegende Skizzen gegen ein geöffnetes Fusion mit aktivem Bridge auszuführen:

python .\scripts\smoke_sketch_basics.py

Dieser Smoke-Test erstellt ein wegwerfbares Dokument, generiert Skizzen für Rechteck, Kreis, Linie, Bogen, Polylinie, Polygon und Slot, testet Offset, Constraints, Bemaßungen und Inspektion und schließt das Dokument ohne Speichern.

Anforderungen

  • Windows mit Python 3.10 oder höher, verfügbar als python im PATH

  • Autodesk Fusion 360

Sicherheitskonfiguration

  • fusion_run_script ist standardmäßig deaktiviert. Um es bewusst zu aktivieren, setze FUSION_MCP_ENABLE_RUN_SCRIPT=1 sowohl für den MCP-Prozess als auch für Fusion 360 und starte beide neu. Das Skript wird mit den vollständigen Benutzerrechten ausgeführt, daher sollten dedizierte Tools bevorzugt werden.

  • FUSION_MCP_MAX_REQUEST_BODY_BYTES passt das Limit der JSON-Payloads des Bridges an. Der Standardwert ist 1 MiB und das akzeptierte Maximum ist 16 MiB.

  • Lösch-, Verwerf- und Postprocessing-Operationen erfordern ihre expliziten Bestätigungsflags; diese Flags ersetzen nicht die vorherige Inspektion des Ziels.

Empfohlene Installation unter Windows

Wenn du dieses Repository bereits lokal hast, ist der schnellste Weg zur Installation:

powershell -ExecutionPolicy Bypass -File .\scripts\install-fusion-mcp.ps1

Dieser Installer führt Folgendes aus:

  • generiert oder bewahrt eine zufällige private Anmeldeinformation zur Authentifizierung von MCP mit Fusion

  • schützt die Anmeldedatei und schränkt beim Erstellen des dedizierten Ordners auch die Berechtigungen dieses Ordners auf den aktuellen Benutzer ein; es ändert nicht die ACLs eines vorhandenen übergeordneten Ordners

  • baut das Plugin aus einer zulässigen Dateiliste und kopiert es nach ~/plugins/fusion-mcp, ohne Screenshots, Backups, CAD oder andere Workspace-Artefakte

  • validiert per Manifest die Ziele des Plugins und des Add-ins; lehnt Überlappungen mit dem Repository, nicht erkannte Ordner, Junctions und Zustandsdateien innerhalb verwalteter Ziele ab

  • veröffentlicht die Laufzeit über Kandidat + Backup und stellt die vorherige Version wieder her, wenn der Marketplace fehlschlägt

  • aktualisiert ~/.agents/plugins/marketplace.json durch einen atomaren Ersatz nach der Veröffentlichung der Laufzeit

  • installiert die Abhängigkeiten aus requirements.txt

  • kopiert das Fusion-Add-in nach %APPDATA%\Autodesk\Autodesk Fusion 360\API\AddIns\FusionCodexBridge, falls dieser Ordner existiert; andernfalls verwendet es %APPDATA%\Autodesk\Autodesk Fusion\API\AddIns\FusionCodexBridge

  • synchronisiert diese Installationsordner und entfernt veraltete Dateien früherer Versionen

  • warnt, wenn eine andere Kopie von FusionCodexBridge im alternativen Autodesk-Pfad gefunden wird, da Fusion möglicherweise eine alte Kopie lädt

Wenn du nur den Codex-Teil installieren und das Fusion-Add-in noch nicht kopieren möchtest, kannst du Folgendes verwenden:

powershell -ExecutionPolicy Bypass -File .\scripts\install-fusion-mcp.ps1 -SkipFusionAddIn

Schritt für Schritt zur Inbetriebnahme

  1. Öffne ein Terminal im Stammverzeichnis des Repositorys.

  2. Führe den Installer aus:

    powershell -ExecutionPolicy Bypass -File .\scripts\install-fusion-mcp.ps1
  3. Öffne Fusion 360.

  4. Gehe in Fusion zu Utilities > Add-Ins > Scripts and Add-Ins.

  5. Wechsle zur Registerkarte Add-Ins.

  6. Wenn die Liste leer erscheint, setze die Filter zurück, bevor du annimmst, dass das Add-in fehlt.

  7. Suche nach FusionCodexBridge und führe es mit Run aus.

  8. Wenn FusionCodexBridge nicht in der Liste erscheint, verwende die Schaltfläche + und zeige manuell auf einen dieser Ordner:

    • %APPDATA%\Autodesk\Autodesk Fusion 360\API\AddIns\FusionCodexBridge

    • %APPDATA%\Autodesk\Autodesk Fusion\API\AddIns\FusionCodexBridge

  9. Überprüfe, ob die lokale Fusion-Bridge läuft:

    $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)" }

    Du solltest eine JSON-Antwort mit "ok": true erhalten.

  10. Starte Codex neu oder lade das VS-Code-Fenster neu, falls nötig.

  11. Wenn du die Codex-CLI oder die Codex-App verwendest, registriere den MCP-Server einmalig:

codex mcp add fusion-local -- python "$HOME\plugins\fusion-mcp\server\main.py"
  1. Prüfe, ob der Server registriert wurde:

codex mcp list
  1. Gehe zurück zu Codex und teste mit einer einfachen Anweisung, zum Beispiel:

  • revisa el diseño activo en Fusion

  • haz un fusion_status

  • crea una caja de 10x6x3 cm

Manuelle Installation

Die manuelle Installation erfordert ebenfalls, dass MCP und Fusion ein Token mit mindestens 32 Zeichen über FUSION_MCP_TOKEN oder eine JSON-Datei, die durch FUSION_MCP_CREDENTIALS_FILE angegeben wird, gemeinsam nutzen. Um Berechtigungs- und Konfigurationsfehler zu vermeiden, wird empfohlen, den Installer mindestens einmal auszuführen.

Wenn du den Installer nicht verwenden möchtest, kannst du den Vorgang manuell durchführen:

  1. Installiere die Python-Abhängigkeiten:

    pip install -r requirements.txt
  2. Kopiere fusion_addin/FusionCodexBridge/ in einen Add-Ins-Ordner von Fusion:

    • %APPDATA%\Autodesk\Autodesk Fusion 360\API\AddIns\

    • oder %APPDATA%\Autodesk\Autodesk Fusion\API\AddIns\

  3. Registriere den MCP-Server in Codex:

    codex mcp add fusion-local -- python "$PWD\server\main.py"
  4. Öffne Fusion 360 und führe FusionCodexBridge über Utilities > Add-Ins > Scripts and Add-Ins aus.

Problemlösung

  • Wenn Fusion die Liste der Add-ins leer anzeigt, setze zuerst die Filter des Fensters Scripts and Add-Ins zurück.

  • Wenn VS Code No MCP Servers found anzeigt, führe Developer: Reload Window aus und verwende dann erneut MCP: List Servers.

  • Suche nicht nach fusion-local im Marketplace für VS-Code-Erweiterungen. Es ist ein lokaler MCP-Server, keine Marketplace-Erweiterung.

  • Wenn Codex den Server sieht, aber die Aktionen gegen Fusion fehlschlagen, verwende den obigen /health-Verifizierungsbefehl oder führe fusion_ping aus; alle Endpunkte erfordern das lokale Bearer-Token.

  • Wenn Codex meldet, dass die Bridge inkompatibel ist oder protocolVersion fehlt, führe powershell -ExecutionPolicy Bypass -File .\scripts\install-fusion-mcp.ps1 aus und danach fusion_reload_bridge oder starte Fusion neu.

  • Wenn der Installer warnt, dass eine andere Kopie von FusionCodexBridge existiert, öffne Scripts and Add-Ins und bestätige, dass du den aktualisierten Ordner ausführst, den der Installer ausgegeben hat.

  • Wenn du Unauthorized Fusion MCP request erhältst, führe den Installer erneut aus und starte Codex und das Add-in neu, damit beide dieselbe Anmeldeinformation verwenden.

  • Wenn der Installer eine vorhandene Anmeldedatei ablehnt, überprüfe, ob CredentialPath korrekt ist. Um eine wirklich beschädigte Anmeldedatei neu zu generieren, verschiebe oder lösche diese Datei explizit und führe den Installer erneut aus; der Installer überschreibt unbekannte Dateien nicht.

  • Kopiere oder veröffentliche nicht %LOCALAPPDATA%\FusionMCP\credentials.json; der Installer zeigt das Token niemals an.

Hinweise

  • fusion_run_script führt Python innerhalb von Fusion mit vollem API-Zugriff aus und ist standardmäßig deaktiviert. Verwende es nur mit vertrauenswürdigem Code und über explizites Opt-in.

  • Alle Endpunkte, einschließlich /health, erfordern das während der Installation generierte Bearer-Token.

  • Das Skript-Tool gibt den Wert zurück, der der Variablen result zugewiesen ist.

  • Wenn die Bridge nicht läuft, beginne nach dem Starten des Add-ins mit fusion_ping oder fusion_status.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    F
    maintenance
    Enables AI assistants to generate Autodesk Fusion 360 Python scripts through natural language commands, using the Model Context Protocol (MCP) for tool calls and script generation.
    6
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    A safety-first Autodesk Fusion 360 MCP add-in that enables agents to inspect, plan, validate, and package CAD changes without blindly running raw scripts, with structured tools and preflight checks.
    1
    MIT
  • A
    license
    B
    quality
    A
    maintenance
    An MCP server that provides 75 validated tools for Autodesk Fusion 360, enabling common CAD operations like sketching, extruding, and joint creation with structured error handling.
    75
    31
    MIT

Latest Blog Posts

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