Content
# Fusion 360 Bridge
**Give an AI agent the full Fusion 360 Python API.**
Fusion 360 Bridge is a small, open bridge between Fusion 360 and any MCP-capable agent. It can inspect a design, create or modify geometry, look up the installed Fusion API, and return viewport screenshots—all through four tools.
> Fusion stays in control: every API call runs on Fusion's main thread, and the bridge only listens on `127.0.0.1` with bearer-token authentication.
## What it can do
Ask your agent to:
- **Build geometry** — sketches, constraints, features, bodies, components, and assemblies
- **Inspect and edit designs** — parameters, materials, appearances, timelines, and document state
- **Work with manufacturing APIs** — access the installed `adsk.cam` API when available
- **Discover the API** — search exact classes and members without leaving the conversation
- **See the result** — capture the active viewport at its current size or a requested resolution
There is no narrow library of prebuilt CAD actions. `fusion_execute_python` exposes the real Fusion Python API, so the agent can use anything that API supports.
## From datasheet to Fusion model
This [Pololu micro metal gearmotor](https://www.pololu.com/product/2202) started as a blank Fusion document. The bridge reconstructed its published external dimensions, assigned brass, steel, plastic, and copper finishes, and built a seven-component assembly. Its four-stage train uses Pololu's published tooth counts for the exact 29.86:1 ratio.

| Gearbox detail | Longitudinal section analysis |
| --- | --- |
|  |  |
External dimensions come from Pololu's [April 2024 drawing](https://www.pololu.com/file/0J949/micro-metal-gearmotor-dimensions.pdf). A runtime validation pass checks key measurements, stage spacing, solid interference, housing clearance, and the saved section analysis. Internal module and shaft coordinates remain a documented reconstruction because the public drawing does not dimension them.
[Read the complete example](examples/pololu-gearmotor/README.md), including the modeling decisions, image gallery, validation scope, sources, and reproducible Fusion scripts.
## Quick start
### 1. Add the MCP server
Install [`uv`](https://docs.astral.sh/uv/) if needed, then add this to your MCP client configuration:
```json
{
"mcpServers": {
"fusion360": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/barisgit/fusion360-bridge@v0.3.1",
"fusion360-bridge",
"serve"
]
}
}
}
```
Pinning a release tag keeps the installation reproducible.
### 2. Start Fusion 360
The first MCP launch installs the bundled **FusionBridge** add-in. Restart Fusion 360, or open **Utilities → Add-Ins** (`Shift+S`) and run **FusionBridge**.
### 3. Check the connection
Ask your agent:
> Check the Fusion connection, then tell me the active document name.
Or check it from a terminal:
```bash
uvx --from git+https://github.com/barisgit/fusion360-bridge@v0.3.1 \
fusion360-bridge health
```
## Four tools, full API access
| Tool | Purpose |
| --- | --- |
| `fusion_health` | Return the Fusion version and active document |
| `fusion_execute_python` | Run Python with `adsk`, `app`, and `ui` preloaded |
| `fusion_api_docs` | Search installed `adsk.core`, `adsk.fusion`, and `adsk.cam` classes |
| `fusion_screenshot` | Return a PNG of the active viewport |
The MCP server also exposes the bundled [`fusion360-cad` skill](.agents/skills/fusion360-cad/SKILL.md) as standard resources. Clients implementing the draft MCP Skills Extension can discover it through `skill://index.json`; other clients can read `skill://fusion360-cad/SKILL.md` directly.
```text
MCP client ──stdio──> MCP server ──authenticated localhost HTTP──> Fusion add-in
│
Fusion main thread
```
The stdio server is only an adapter. Scripts can also call the local HTTP API directly.
## Try it
Once connected, prompts can be as direct as:
> Create a 60 × 40 × 20 mm enclosure with 3 mm walls, fillet the outside edges, and show me an isometric screenshot.
> Inspect the active design and list every component, body, material, and user parameter.
> Find the installed API for `ExtrudeFeatures.createInput`, then use it to add a 12 mm extrusion to the selected profile.
The agent writes and executes ordinary Fusion Python, then can inspect the result and iterate.
## Documentation
- [Getting started](docs/getting-started.md) — install, configure, update, troubleshoot
- [Tool and HTTP reference](docs/reference.md) — MCP tools, endpoints, examples, security
- [Development](docs/development.md) — local setup, architecture, checks, releases
- [Examples](examples/README.md) — source-grounded models built through the bridge
- [Fusion 360 CAD skill](.agents/skills/fusion360-cad/SKILL.md) — a disciplined inspect, model, validate, and evidence workflow for agents
## Important security note
`fusion_execute_python` intentionally runs arbitrary Python inside Fusion 360. Only connect MCP clients and agents you trust. Keep the server bound to `127.0.0.1`, keep authentication enabled, and never expose port `7654` to a network.
## Requirements
- Autodesk Fusion 360 on macOS or Windows
- An MCP-capable client, or any program that can call localhost HTTP
- [`uv`](https://docs.astral.sh/uv/) for the one-command MCP setup
Fusion 360 must be open with the FusionBridge add-in running; Fusion has no supported headless mode.