fusion-reconstruct-mcp
fusion-reconstruct-mcp
MCP-сервер, который позволяет LLM превратить STL/3MF-сетку (или эталонное фото) в параметрическую модель Fusion 360 — перестроенную по фичам (эскизы, выдавливания, скругления, массивы...), а не импортированную как «тупая» mesh-модель.
Зачем
Слайсеры (Bambu Studio, PrusaSlicer, ...) понимают только STL/3MF: запечённые треугольные сетки. Fusion 360 понимает только параметрические деревья фич. Импорт STL в Fusion даёт тело, на которое можно смотреть, но которое нельзя осмысленно редактировать — ни параметрических размеров, ни редактируемых эскизов, ничего, чем можно двигать ползунок. Этот проект закрывает этот разрыв, позволяя LLM посмотреть на сетку, понять, из чего она состоит (пластины, отверстия, бобышки, рёбра...), и перестроить её как настоящие фичи Fusion — так что вы получаете модель, которую можно реально масштабировать, добавлять отверстия или иным образом модифицировать так, как вы бы делали с моделью, созданной вручную.
Related MCP server: Fusion360 LLM Assistant
Область применения (прочтите сначала)
Проект нацелен на механические/функциональные детали — кронштейны, корпуса, крепления, пластины с болтовыми отверстиями, бобышки — реконструируемые из примитивов (выдавливание, вращение, скругление, фаска, массив, зеркало, булевы операции). Он не пытается выполнять свободную/органическую реконструкцию поверхностей; это гораздо более сложная и менее надёжная задача, которую этот проект не решает. См. docs/RECONSTRUCTION_STRATEGY.md для описания предполагаемого рабочего процесса.
Как это работает
flowchart LR
LLM["LLM client"] -- MCP --> Server["MCP server<br/>(mesh analysis + Fusion bridge client)"]
Server -- HTTP, localhost --> Addin["Fusion 360 add-in<br/>(runs inside Fusion)"]
Addin --> Fusion[("Your live Fusion design")]MCP-сервер предоставляет два семейства инструментов:
mesh_summary,find_circular_holes,find_circular_faces,list_planar_facets,get_cross_section,render_orthographic_views,compare_meshes— чистый анализ сетки (trimesh), Fusion не требуется. Используется для понимания входного файла и для последующей проверки точности реконструкции.fusion_*(создать эскиз, добавить линию/окружность/прямоугольник/дугу, выдавить, вращать, скруглить, фаска, массив, зеркало, объединить, задать/вывести параметры, экспорт, скриншот, ...) — общение с сопутствующим аддином Fusion 360 черезhttp://127.0.0.1:6172, который выполняет их через реальный APIadsk.fusionвнутри запущенного сеанса Fusion.
См. docs/ARCHITECTURE.md о том, почему выбрано такое разделение (кратко: API Fusion работает только внутри процесса самого Fusion, в его главном потоке, без доступа к pip — поэтому аддин должен быть небольшим HTTP-мостом только на стандартной библиотеке).
Установка
Полные инструкции см. в docs/SETUP.md. Кратко:
git clone https://github.com/<your-username>/fusion-reconstruct-mcp.git
cd fusion-reconstruct-mcp
python -m venv .venv && source .venv/bin/activate # .venv\Scripts\activate on Windows
pip install -r requirements.txtЗатем скопируйте fusion_addin/FusionReconstructBridge/ в папку AddIns Fusion и
запустите его через Utilities > Add-Ins > Scripts and Add-Ins, а ваш MCP-клиент
(claude mcp add ... или ваш mcp.json) укажите на python -m server.mcp_server в
этом репозитории.
Использование
При запущенном Fusion и запущенном аддине задайте вашему LLM-клиенту что-то вроде:
Реконструируй
~/Downloads/bracket.stlкак параметрическую модель Fusion 360, затем экспортируй её и проверь, насколько она близка к оригиналу.
Он осмотрит сетку, посмотрит на отрендеренные виды, найдёт отверстия/бобышки, перестроит деталь по фичам в Fusion и проверит результат, экспортировав и сравнив с исходной сеткой. Для фото вместо сетки он строит первый проход по вашему описанию/ изображению и уточняет его интерактивно с вами — в одном фото нет данных о реальных размерах, так что этот путь следует рассматривать как «моделирование с помощью ассистента», а не «сканирование в CAD».
Статус / ограничения
Обнаружение окружностей/отверстий — это эвристика на основе тесселяции сетки (подгонка окружности по контуру граней) — она хорошо работает на типичных печатаемых деталях, но не является универсальным движком распознавания фич.
Реконструкция по фото оценивает пропорции; она не измеряет реальные размеры по одному изображению.
render_orthographic_viewsиспользует простой каркасный/сплошной рендерер наmatplotlib(без зависимости от GPU) — достаточно, чтобы увидеть общую форму, не фотореалистично, и может показывать незначительные артефакты z-порядка на сложных деталях.Одно соединение с документом/мостом Fusion за раз.
Путь с именованной базовой плоскостью в
fusion_create_sketch(plane="XY"/"XZ"/"YZ", опциональноoffset_mm) тщательно проверен вживую. Его путь с произвольной плоскостью (origin+normal) имел реальный баг, который был исправлен (setByThreePointsтребует точечные сущности, а не сырыеPoint3D— см. историю git), но после этого так и не был подтверждён рабочим: при следующей попытке появилась вторая, другая ошибка («Environment is not supported» отConstructionPoints.add), которая исчезла после перезапуска аддина — похоже, это временное состояние Fusion, а не баг кода, но этот путь был обойдён, а не перепроверен. Считайте его непроверенным, пока кто-нибудь не подтвердит его вживую.Собран и дымово протестирован против API
MCPServerизmcp>=2.0.0. Действия на стороне Fusion были опробованы на реальном запущенном сеансе Fusion 360 (а не просто написаны по документации) — см.tests/smoke_test_fusion_live.py(эскиз → выдавливание → вырез/объединение → экспорт, проверено по исходной сетке с точностью до 0,01 мм) иtests/smoke_test_fusion_live_features.py(скругление, фаска, зеркало, круговой массив, вращение, явное объединение).sketch_add_line,sketch_add_arc_three_pointиpattern_rectangularиспользуют общие пути кода с протестированными собратьями, но пока не имеют собственного отдельного живого теста. Ничто из этого не запускается в CI (нет headless Fusion) — вопросы и PR поfusion_addin/приветствуются в любом случае.
Лицензия
MIT — см. LICENSE.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact programmatically with Autodesk Fusion 360 for creating parametric 3D models through simple API calls.19
- AlicenseNot gradedqualityDmaintenanceEnables natural language 3D modeling in Fusion 360 through an MCP server that translates user commands into Fusion 360 API calls. Supports creating, editing, and managing 3D objects, executing Python code, and capturing model views through conversational interactions.1MIT
- AlicenseNot gradedqualityFmaintenanceEnables AI-powered parametric CAD design in Autodesk Fusion 360 through natural language commands. Supports multiple AI backends (Ollama, OpenAI, Gemini, Claude) with intelligent routing and safety validation for geometric operations.13MIT
- -licenseNot gradedqualityNot gradedmaintenanceEnables AI-powered CAD automation in Autodesk Fusion 360 through natural language prompts. Features a modern web chat interface with multiple LLM backends for creating 3D models, sketches, and parametric designs.
Related MCP Connectors
Agent-first CAD: editable .kcad.ts source, deterministic review, OpenCASCADE kernel.
Convert Revit files to XKT, IFC, or DWG and query BIM data via natural language.
DXF and PDF/X-4 for AI agents: structured facts, PNG renders, an interactive in-chat viewer.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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/ab7646/fusion-reconstruct-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server