fusion360-mcp-server

ulfandpete/fusion360-mcp-server

3.3

If you are the rightful owner of fusion360-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

The Fusion 360 MCP Server is a Model Context Protocol server designed to enable AI assistants to interact with Autodesk Fusion 360's CAD/CAM functionalities through a local HTTP bridge.

Tools
5
Resources
0
Prompts
0

Fusion 360 MCP Server (not working just yet)

License: AGPL v3 Version Python MCP

A Model Context Protocol (MCP) server for Autodesk Fusion 360, enabling AI assistants to interact with Fusion 360's CAD/CAM functionality through a local HTTP bridge.

πŸš€ Features

  • πŸ€– AI Integration: Connect AI assistants (Claude, ChatGPT, etc.) directly to Fusion 360
  • πŸ”§ 3D Modeling: Create parametric cubes, sketches, and geometric features
  • πŸ“Š Design Queries: Access design information, features, and sketches
  • 🌐 Cross-Platform: Works on Windows, macOS, Linux, and WSL environments
  • ⚑ Fast Connection: Automatic network detection and optimized bridge communication
  • πŸ”’ Local Only: No cloud API required - works entirely via local HTTP bridge
  • πŸ› οΈ Zero Config: Automatic WSL/Windows networking with no manual setup

πŸ“‹ Prerequisites

  • Autodesk Fusion 360 (installed and licensed)
  • Python 3.8+
  • Operating System: Windows, macOS, Linux, or WSL

⚑ Quick Start

1. Clone and Install

git clone https://github.com/ulf-p/fusion360-mcp.git
cd fusion360-mcp

# Create and activate virtual environment
python -m venv fusion360_mcp_env
source fusion360_mcp_env/bin/activate  # Linux/macOS/WSL
# OR: fusion360_mcp_env\Scripts\activate  # Windows

# Install dependencies (minimal - recommended for users)
pip install -r requirements-minimal.txt

# OR install full development dependencies
# pip install -r requirements.txt

2. Install Fusion 360 Bridge

Copy the MCP Bridge add-in to Fusion 360:

# Windows
cp -r fusion360_addin/MCP_Bridge "%APPDATA%\Autodesk\Autodesk Fusion 360\API\AddIns\"

# macOS  
cp -r fusion360_addin/MCP_Bridge "~/Library/Application Support/Autodesk/Autodesk Fusion 360/API/AddIns/"

# Linux
cp -r fusion360_addin/MCP_Bridge "~/.local/share/Autodesk/Autodesk Fusion 360/API/AddIns/"

Enable the add-in in Fusion 360:

  1. Open Fusion 360
  2. Go to Utilities β†’ Add-Ins
  3. Find "MCP Bridge" and click Run
  4. Verify you see: "MCP Bridge server started on http://localhost:18080"

3. Run the MCP Server

source fusion360_mcp_env/bin/activate
python fusion360_mcp_server.py

The server will automatically:

  • βœ… Detect your environment (WSL/native)
  • βœ… Find working network connections to Fusion 360
  • βœ… Connect to the bridge and report status

4. Test the Connection

# Test with MCP Inspector
npx @modelcontextprotocol/inspector python fusion360_mcp_server.py

# Or test bridge directly
curl http://localhost:18080/status

5. Connect to Claude Desktop

πŸ› οΈ Usage Examples

Basic Operations

# Create a parametric cube
create_fusion360_cube(size=10.0, name="MyFastCube")

# Create a sketch on XY plane
create_fusion360_sketch(name="BaseSketch", plane="xy")

# Get design information
get_fusion360_design_info()

# List all features
list_fusion360_features()

Connection Status

# Check if Fusion 360 is running and bridge is available
check_fusion360_connection()
# Returns: {"connected": true, "http_endpoint_available": true, ...}

# Get detailed status
get_fusion360_status()
# Returns: {"status": "running", "message": "Fusion 360 is active and responsive", ...}

AI Assistant Integration

When connected to an AI assistant supporting MCP:

User: "Create a 5cm cube called 'TestPart' in Fusion 360"
AI: β†’ Calls create_fusion360_cube(5.0, "TestPart")  
AI: ← "Successfully created cube 'TestPart'"

πŸ—οΈ Architecture

Bridge Communication

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    HTTP     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    API     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ AI Assistantβ”‚ ←──────→   β”‚ MCP Server  β”‚ ←──────→  β”‚ Fusion 360  β”‚
β”‚   (Claude)  β”‚    MCP     β”‚  (Python)   β”‚ (Bridge)  β”‚  (Desktop)  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜            β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜           β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Cross-Platform Support

  • Windows: Direct localhost connection
  • WSL: Automatic Windows host IP detection
  • macOS/Linux: Standard localhost connection
  • Docker: host.docker.internal compatibility

πŸ§ͺ Available MCP Tools

Status & Connection

  • hello - Test MCP connection
  • get_server_info - Server capabilities and version
  • check_fusion360_connection - Connection and bridge status
  • get_fusion360_status - Detailed Fusion 360 status

3D Modeling

  • create_fusion360_cube(size, name) - Create parametric cubes
  • create_fusion360_sketch(name, plane) - Create sketches
  • get_fusion360_design_info() - Active design information
  • list_fusion360_sketches() - List all sketches
  • list_fusion360_features() - List all features

πŸ”§ Configuration

Zero configuration required! The MCP server automatically:

  1. Environment Detection: Detects WSL vs native environment
  2. Network Discovery: Finds working Windows IP addresses for bridge connectivity
  3. Connection Testing: Tests HTTP bridge endpoints for Fusion 360 detection
  4. Priority Optimization: Uses fastest connection methods first

πŸ› Troubleshooting

Common Issues

"No Fusion 360 process found"

  • βœ… Ensure Fusion 360 is running
  • βœ… Install and enable the MCP Bridge add-in
  • βœ… Check that port 18080 is not blocked by firewall

"Connection refused from WSL"

  • βœ… Verify MCP Bridge is running on Windows (not WSL)
  • βœ… Check Windows firewall settings for port 18080
  • βœ… Test: curl http://<windows_ip>:18080/status from WSL

"MCP Bridge add-in is not running"

  • βœ… Go to Fusion 360: Utilities β†’ Add-Ins β†’ MCP Bridge β†’ Run
  • βœ… Restart Fusion 360 if needed
  • βœ… Verify add-in files are in correct directory

Debug Mode

Enable verbose logging:

export DEBUG=true  # Linux/macOS/WSL
set DEBUG=true     # Windows
python fusion360_mcp_server.py

See for detailed setup instructions and troubleshooting.

🀝 Contributing

We welcome contributions! Please:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Follow Python coding standards (PEP 8)
  4. Add tests for new functionality
  5. Update documentation
  6. Commit changes (git commit -m 'Add amazing feature')
  7. Push to branch (git push origin feature/amazing-feature)
  8. Open a Pull Request

Development Setup

# Clone and setup development environment
git clone https://github.com/ulf-p/fusion360-mcp.git
cd fusion360-mcp
python -m venv fusion360_mcp_env
source fusion360_mcp_env/bin/activate

# Install full development dependencies
pip install -r requirements.txt

# Run tests
python -m pytest tests/

# Code quality
python -m flake8 .
python -m mypy fusion360_mcp_server.py

πŸ“œ License

This project is dual-licensed:

Open Source License

GNU Affero General Public License v3.0 (AGPL-3.0)

Free for:

  • βœ… Open source projects
  • βœ… Personal use
  • βœ… Educational purposes
  • βœ… Research projects

Commercial License

Proprietary Commercial License

Required for:

  • 🏒 Commercial products
  • πŸ’Ό Proprietary software
  • πŸ”’ Closed-source applications
  • πŸ“ˆ Revenue-generating use

Contact: mail@ulfpetersen.com for commercial licensing.

License Choice

If you're using this in a commercial product and don't want to comply with AGPL requirements (sharing source code), please purchase a commercial license.

πŸ”— Resources

🏷️ Version History

  • v2.0.0 - Bridge-focused architecture, WSL support, simplified configuration
  • v1.0.0 - Initial MCP server with basic Fusion 360 integration

⭐ Support

If this project helps you, please:

  • ⭐ Star this repository
  • πŸ› Report issues on GitHub
  • πŸ’‘ Suggest features and improvements
  • 🀝 Contribute code or documentation

Made with ❀️ for the CAD automation community