# solidworks-automation-skill: a Python and MCP toolkit that drives SolidWorks from AI clients

> A review of wzyn20051216/solidworks-automation-skill for engineers who want to script SolidWorks 2024 to 2026 from Python, Codex or Claude, including what the capability gate actually allows.

**wzyn20051216/solidworks-automation-skill** — Python automation toolkit for SolidWorks API

- Repository: https://github.com/wzyn20051216/solidworks-automation-skill
- Stars: 1,045 · Forks: 98
- Language: Python
- License: MIT
- Published: 2026-09-10 · Updated: 2026-09-10 · Language: en
- Canonical page: https://hysenlabs.com/projects/wzyn20051216-solidworks-automation-skill

## What problem solidworks-automation-skill solves, and for whom

SolidWorks automation normally means writing VBA macros, a C# add-in, or COM calls through pywin32 and comtypes, then discovering that half of the API surface is version dependent. This repository wraps that work into a Python toolkit with three parallel entry points: a Skill package for clients that import skills, an MCP server for Codex, Claude Code, Cursor and Windsurf, and a Windows desktop application called CAD Studio for people who prefer a GUI over a terminal. All three share the same scripts and capabilities, so a job queued in the desktop app can be inspected or retried from the command line.

The intended user is a mechanical engineer or CAD-adjacent developer on Windows who already has SolidWorks installed and wants natural language or scripted control over parts, assemblies, drawings and exports. The README is explicit that this is not a promise of unattended delivery: the root capabilities.yaml is described as the single source of truth for what is executable, and capabilities that have not been verified are not packaged as finished autonomous output. That framing matters, because the feature list is long enough that a reader could easily assume more coverage than the machine baseline supports.

## The capability gate is the real architecture

Most automation projects document features. This one documents a gate. The README states that the verified machine baseline is SolidWorks 2024, SolidWorks 2026 SP01.1 and AutoCAD 2024, and that SolidWorks 2026 is only considered verified for capabilities explicitly listed as 2026 in the capability list. SolidWorks 2025 and other capabilities that have not been regression tested remain compatibility targets, not verified paths. Configurations, sheet metal U-profile flange and flat-pattern DXF, and HSS rectangular weldment frames with cut lists sit in pilot. Design tables and complex sheet metal or weldments are still compatibility targets. Simulation and FEA, Routing, complex surfaces and molds are also under a controlled pilot gate.

Underneath that gate, the routing layer picks a backend per atomic operation among Python, C# PIA or add-in, native C++, SWBasic, OCCT and external solvers, and the README distinguishes Automation-equivalent semantics from exact native interfaces. A separate OCCT/OCP isolated process writes open formats such as STEP, IGES, BREP, STL, OBJ and GLB, plus 2D DXF, SVG, PDF and PNG, without needing CAD installed at all. That split is the most interesting design decision here: open-format output is not hostage to whether SolidWorks is present, while native formats are.

## Installing solidworks-automation-skill from npx, Smithery or GitHub Releases

The README presents three independent entry points and says to pick one. For a client that imports skills, the install is an npx command or a Claude skill add. For MCP clients, the recommended route is Smithery, with the client name swapped per target. For a graphical workflow, download the Windows installer or portable ZIP from GitHub Releases.

```bash
npx github:wzyn20051216/solidworks-automation-skill
```

The README also gives `claude skill add https://github.com/wzyn20051216/solidworks-automation-skill` as the alternative for Claude. If you are going the MCP route and do not yet have the Smithery CLI, install it once; users who can already run `smithery --version` skip this step.

```powershell
npm install -g @smithery/cli
smithery mcp add wzyn20051216/solidworks-automation-skill --client codex --config '{}'
```

The `--client codex` value can be replaced with `claude`, `cursor` or `windsurf` according to Smithery's supported targets. After installation, the README says an MCP client can call `solidworks_health_check` to inspect the local environment. Users who installed through npx or a manual clone run the same check from the skill directory.

```powershell
python scripts/cad_doctor.py
python scripts/cad_studio.py doctor
```

The doctor output includes a `remediations` list naming missing items, their impact, official download addresses and copyable install commands. A missing SolidWorks or AutoCAD installation only blocks the corresponding native formats; the README states that open formats such as STEP, IGES, BREP, STL, OBJ, GLB, DXF, SVG, PDF and PNG still work. A first real use is the queue interface, which runs without the desktop app.

```powershell
python scripts/cad_studio.py status
python scripts/cad_studio.py run --enable-mock
python scripts/cad_studio.py write-open-format --input .\part.cadstudio.json --out-dir .\output
```

`--enable-mock` is documented as the way to exercise the queue without real hardware, which is the honest first step before pointing it at a licensed SolidWorks seat.

## Where the pilot labels bite: drawings, sheet metal and welds

The showcase case in the README is a NIST public domain test part read into SolidWorks 2026 SP01.1, checked against a 141.421 x 141.421 x 17 mm bounding box, and turned into a native SLDPRT, SLDDRW, PDF and evidence JSON with three views, an isometric view, an A-A section and 10 required dimensions. The README reports 70 passing drawing orientation tests and a PDF text boundary with 0 overlaps. It also states plainly that drawing capability is pilot, that automated checks find missing output and obvious collisions, but that the title block, dimension chains, hole tables and manufacturing semantics still require a final visual review by an engineer. That is the correct boundary to draw, and it is more useful than a claim of full automation.

The threaded hole subskill is listed as verified, with M3 to M8 blind and through holes, metric tap threads and chamfered hole entries, and the README says the rebuilt model reads back a real thread with a review result of pass/100. The fillet and chamfer subskill is listed as stable, with variable radius at three control points, face, full-round and setback options, G2 surface blends, width-width chamfers and counterbores. Even there, the README notes that keep-edge paths remain explicitly blocked. Sheet metal and weldment work is pilot: open U-profile double bends, thickness, radius and K-factor read-back, bend-line DXF, custom .sldlfp profiles and a four-piece HSS miter frame with a native cut list grouped by length and quantity. If your production work depends on complex sheet metal, design tables or weldments, this toolkit is not the right tool yet, and the README says so before you install it.

## Diagnostics, privacy and the update path

Support is built around a sanitised diagnostics bundle rather than raw logs. The README says the export contains only version, stage, error code and elapsed time information, and explicitly excludes prompts, model content, API keys and full private paths.

```powershell
python scripts/cad_studio.py export-diagnostics --output .\cad-studio-diagnostics.zip
```

That is a sensible default for a tool that talks to a licensed CAD seat and to cloud model endpoints, and it is the artefact to attach when filing an issue. The desktop build performs a silent GitHub Release check at startup, then asks the user to confirm download and installation; if the update fails, the manual download path remains. There is no documented rollback procedure in the README, so version pinning is the practical control if you need reproducible behaviour across a team. The C# add-in host is a separate concern: the README states that in-process callbacks, application events, CommandGroup, TaskPane, PropertyManagerPage and JSON diagnostics were regression tested on SW2026 SP1.1, and that production deployment must use 64-bit RegAsm with `/codebase /tlb`. Registration mistakes there will surface as missing commands rather than friendly errors.

## How it compares with a hand-written pywin32 script

The obvious alternative is the thing most SolidWorks automation teams already have: a folder of Python or VBA scripts calling the COM API directly through pywin32 or comtypes, with no capability gate, no MCP layer and no diagnostics. The difference in approach is that a hand-written script does exactly what you wrote and fails in whatever way the API fails, while this project routes each atomic operation to a chosen backend and refuses operations that are outside the verified set. You get a predictable failure surface and a written record of what has been tested on which SolidWorks build; you give up the freedom to attempt something the gate has not cleared, unless you bypass the wrapper entirely and call the API yourself.

A second alternative is the C# add-in route, which this repository also supports as a host. An add-in gives you in-process events, a ribbon CommandGroup, a TaskPane and a PropertyManagerPage, which is a better fit for interactive tools embedded in the SolidWorks UI. The Python and MCP paths here are better suited to batch work, agent-driven jobs and headless open-format export. The two are complementary rather than competing, and the README treats them that way by documenting the add-in host as one backend among several.

## Maintenance, licence and what to verify first

The repository is not archived, and the last push was on 2026-09-07, with release v0.3.4 published on 2026-08-29. The package metadata shows version 1.3.0 in both package.json and pyproject.toml, so the npm and Python version numbers do not track the GitHub release tag, which is worth knowing before you pin anything. The licence is MIT, and the README credits the weldment profile regression data to Coremark Weldment Profiles under MIT, and the drawing showcase to NIST public domain material. MIT is permissive, but you are still responsible for the licence terms of SolidWorks, AutoCAD and any model or profile data you feed in, and for whether your SolidWorks licence permits the automation you build. Nothing here is legal advice.

Upgrade cost is dominated by the capability gate rather than by dependency churn. The Python dependencies are ordinary and loosely pinned: mcp, pydantic, ezdxf, matplotlib, PyMuPDF, jsonschema, plus pywin32 and comtypes on Windows. The real cost is re-verification when you move SolidWorks versions, because the README ties verification to specific builds and service packs. Verify the following before adopting: run python scripts/cad_doctor.py on the target machine, read capabilities.yaml and confirm the operations you need are listed for your SolidWorks build, and reproduce one pilot case such as the NIST drawing end to end with your own visual review of the title block and dimension chain.

## Conclusion

Adopt it if you already run SolidWorks 2024 or 2026 SP01.1 on Windows and want AI clients or scripts to drive part, assembly, drawing and export work, with the capability gate telling you what is verified. Do not adopt it if you need unattended generation of complex sheet metal, weldments, Simulation, Routing, surfaces or molds, if you are on SolidWorks 2025, or if you work outside Windows. Before trusting it, run python scripts/cad_doctor.py, read capabilities.yaml, and reproduce one pilot case such as the NIST test part drawing with your own final visual review.

## FAQ

### What coding language does solidworks-automation-skill use?

The primary language is Python, with a C# add-in host under dotnet/ and a Node installer in install.js. The backend router can also select native C++, SWBasic or OCCT/OCP depending on the atomic operation.

### Can AI replace SolidWorks with solidworks-automation-skill?

No. The repository's capability gate marks drawing, sheet metal, weldments, Simulation, Routing, surfaces and molds as pilot or compatibility targets, and the README states that title blocks, dimension chains, hole tables and manufacturing semantics still require final visual review by an engineer.

### What skills are needed for automation with solidworks-automation-skill?

You need a Windows machine with SolidWorks 2024 or 2026 SP01.1 installed, Python 3.10 or newer, and enough COM automation familiarity to read the doctor output and capabilities.yaml. The README says the toolkit can be used through a skill client, an MCP client or the CAD Studio desktop app.

### What are the automation skills solidworks-automation-skill provides?

The README lists part modelling, assembly operations, drawing output, file export, appearance and material settings, Motion Study, sheet metal and weldment pilots, threaded holes, fillet and chamfer work, and an MCP server that exposes SolidWorks COM automation as local tools.

## Sources

- [Issues](https://github.com/wzyn20051216/solidworks-automation-skill/issues)
- [License: MIT](https://github.com/wzyn20051216/solidworks-automation-skill/blob/main/LICENSE)
- [README](https://github.com/wzyn20051216/solidworks-automation-skill/blob/main/README.md)
- [Releases](https://github.com/wzyn20051216/solidworks-automation-skill/releases)
- [wzyn20051216/solidworks-automation-skill on GitHub](https://github.com/wzyn20051216/solidworks-automation-skill)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/wzyn20051216-solidworks-automation-skill
