Skip to main content
Glama
keecherr

solidworks-mcp

by keecherr

SolidWorks MCP Server 🔧

Automate SolidWorks using natural language through Claude AI and the Model Context Protocol (MCP)

License: MIT Python 3.10+ SolidWorks 2025 MCP


🎯 What is This?

SolidWorks MCP Server is a production-ready Model Context Protocol server that lets Claude AI control SolidWorks through natural language. Instead of manually clicking through menus, you simply tell Claude what to design — and it builds it for you.

Example prompts you can use:

  • "Create a new part, draw a circle with radius 30mm and extrude it 15mm"

  • "Add a fillet of 2mm to all edges"

  • "Draw a hexagon and cut extrude it 10mm"

  • "List all features in the current part"


Related MCP server: solidworks-mcp

✨ Features

  • 22 Tools covering parts, sketches, features, and utilities

  • SolidWorks 2023–2025 Compatible with version-aware API fallbacks

  • Auto-detects SolidWorks installation via Windows registry

  • Multi-unit support — mm, cm, inch, meter, foot

  • Modular architecture — clean, extensible Python package

  • Robust error handling — cascading fallback chains for COM API

  • JSON configuration — easy to customize without touching code

  • Comprehensive logging — full debug output for troubleshooting


🛠️ Available Tools

Category

Tool

Description

Connection

connect_solidworks

Connect to running SolidWorks instance

Connection

get_solidworks_info

Get version and installation info

Documents

create_new_part

Create a new part document

Documents

create_new_assembly

Create a new assembly document

Documents

open_document

Open an existing SolidWorks file

Documents

close_document

Close the active document

Documents

save_document

Save the active document

Documents

list_open_documents

List all open documents

Sketches

create_sketch

Create a sketch on a plane (Front/Top/Right)

Sketches

close_sketch

Exit the active sketch

Sketches

draw_circle

Draw a circle by center and radius

Sketches

draw_rectangle

Draw a rectangle by two corners

Sketches

draw_line

Draw a line between two points

Sketches

draw_arc

Draw an arc by center and angles

Sketches

draw_polygon

Draw a regular polygon (triangle, hex, etc.)

Features

extrude_sketch

Boss-extrude the active sketch

Features

cut_extrude

Cut-extrude to remove material

Features

fillet_edges

Add fillets to selected edges

Features

chamfer_edges

Add chamfers to selected edges

Features

list_features

List all features in the model

Utilities

set_units

Change default unit (mm/inch/cm/m/ft)

Utilities

execute_python

Execute custom Python code in SW context


📋 Requirements

  • OS: Windows 10 or Windows 11

  • SolidWorks: 2023, 2024, or 2025 (must be installed and licensed)

  • Python: 3.10 or higher

  • Claude: Claude Desktop app or Claude Code


⚡ Quick Start

1. Clone the Repository

git clone https://github.com/alisamsam/solidworks-mcp.git
cd solidworks-mcp

2. Install Dependencies

pip install -r requirements.txt

3. Configure Claude Desktop

Add the following to your claude_desktop_config.json:

Location: C:\Users\YOUR_NAME\AppData\Roaming\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "solidworks": {
      "command": "python",
      "args": ["C:\\path\\to\\solidworks-mcp\\solidworks_mcp_server.py"]
    }
  }
}

4. Launch

  1. Open SolidWorks first

  2. Restart Claude Desktop

  3. In Claude, type: "Connect to SolidWorks"

  4. Start designing! 🎉


📁 Project Structure

solidworks-mcp/
├── solidworks_mcp_server.py      # Entry point
├── solidworks_mcp/               # Main package
│   ├── __init__.py              # Package exports (v3.0.0)
│   ├── server.py                # MCP server & tool definitions
│   ├── config.py                # Configuration management
│   ├── config.json              # Default settings
│   ├── constants.py             # SolidWorks constants & enums
│   ├── automation/              # Core automation modules
│   │   ├── base.py             # Connection management
│   │   ├── documents.py        # Document operations
│   │   ├── sketches.py         # Sketch operations
│   │   └── features.py         # Feature operations (SW 2025 fixed)
│   └── utils/                   # Utility modules
│       ├── units.py            # Unit conversion system
│       └── sw_finder.py        # Auto-detect SolidWorks
├── requirements.txt
├── .gitignore
└── DEVELOPMENT_ROADMAP.md       # Future development plan

⚙️ Configuration

Edit solidworks_mcp/config.json to customize behavior:

{
  "exe_path": "auto",
  "default_unit": "mm",
  "startup_timeout": 120,
  "log_level": "INFO",
  "default_extrude_depth": 10.0,
  "default_fillet_radius": 2.0
}

Setting

Default

Description

exe_path

"auto"

Path to SLDWORKS.exe or auto-detect

default_unit

"mm"

Default unit for all dimensions

startup_timeout

120

Seconds to wait for SW startup

log_level

"INFO"

Logging verbosity


🔧 SolidWorks 2025 Compatibility

This server includes special handling for SolidWorks 2025 API changes:

  • Extrusion fallback chain: FeatureExtrusion3FeatureExtrusion2FeatureBossSimple

  • Safe property access for feat.Name, feat.GetTypeName2(), IsSuppressed2()

  • stdout capture fix for execute_python tool

  • Registry-based SolidWorks auto-detection


🤝 Contributing

Contributions are welcome! Please:

  1. Fork the repository

  2. Create a feature branch: git checkout -b feature/my-feature

  3. Commit your changes: git commit -m "Add my feature"

  4. Push to the branch: git push origin feature/my-feature

  5. Open a Pull Request


📄 License

This project is licensed under the MIT License — see the LICENSE file for details.


👤 Author

Samsaam Ali Baig


🙏 Acknowledgements


If this project helps you, please give it a star!

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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/keecherr/solidworks-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server