fusion360-mcp-server

ulfandpete/fusion360-mcp-server

3.2

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 dayong@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 UtilitiesAdd-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: UtilitiesAdd-InsMCP BridgeRun
  • ✅ 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