solidworks-mcp
solidworks-mcp
MCP-Server, der Claude Desktop über die COM-API mit SolidWorks verbindet und die automatisierte Analyse von Blechteilen für die Werkzeug- und Stanzindustrie ermöglicht.
Was es tut
Ein Werkzeugbauingenieur kann Claude Desktop öffnen und sagen:
„Öffne
bracket.step, nenne mir die Blechdicke, alle Bohrungsdurchmesser, die Anzahl der Biegungen und exportiere die Abwicklung als DXF.“
Claude ruft die MCP-Tools auf, um:
Die STEP-Datei in SolidWorks zu öffnen
Blech zu erkennen, Dicke + K-Faktor auszulesen
Alle Bohrungen zu erfassen und nach Durchmesser zu gruppieren
Jede Biegung zu zählen und zu charakterisieren (Winkel, Radius, Länge)
Das Teil abzuwickeln und die Abwicklung als DXF zu exportieren
Einen strukturierten Analysebericht zurückzugeben
Zeitersparnis: 60–90 Minuten manuelle Inspektion → ~60 Sekunden.
Related MCP server: Civil3D MCP Server
Testen ohne SolidWorks
Der Großteil dieses Projekts benötigt eine lizenzierte SolidWorks-Installation, aber analyze_step_standalone läuft überall dort, wo CadQuery läuft. Anhand der Testvorlage in diesem Repository:
pip install -e .
conda install -c cadquery cadquery # see docs/INSTALL.md for the pip route
python -c "
from mcp.server.fastmcp import FastMCP
from solidworks_mcp.solidworks_bridge import SolidWorksBridge
from solidworks_mcp.tools.analysis import register
import json
mcp = FastMCP('demo'); register(mcp, SolidWorksBridge())
fn = mcp._tool_manager._tools['analyze_step_standalone'].fn
print(json.dumps(fn(file_path='tests/fixtures/sample_part.step'), indent=2))
"Tatsächliche Ausgabe für sample_part.step — eine 100 x 60 x 2 mm große Platte mit vier Ø6 mm Durchgangsbohrungen (gekürzt; das vollständige Ergebnis enthält außerdem file_path, die einzelnen Begrenzungsrahmenwerte und einen Hinweis zu den Einheiten):
{
"file_size_kb": 33.48,
"volume_mm3": 11773.81,
"surface_area_mm2": 12564.6,
"bounding_box": {
"dimensions_mm": [100.0, 60.0, 2.0]
},
"center_of_mass_mm": { "x": 0.0, "y": 0.0, "z": 1.0 },
"face_count": 10,
"face_types": { "PLANE": 6, "CYLINDER": 4 },
"estimated_thickness_mm": 2.0,
"is_likely_sheet_metal": true
}Die vier Bohrungen erscheinen als die vier zylindrischen Flächen, und die Dicke wird aus der kleinsten Begrenzungsrahmen-Abmessung abgeleitet.
Voraussetzungen
Voraussetzung | Version |
Windows | 10 oder 11 (64-Bit) |
Python | 3.10, 3.11 oder 3.12 |
SolidWorks | Standard 2022 oder neuer (muss installiert und lizenziert sein) |
Claude Desktop | neueste Version |
SolidWorks muss auf demselben Rechner wie dieser Server installiert und aktiviert sein. Die COM-API benötigt die vollständige Anwendung — SolidWorks PDM oder Viewer sind nicht ausreichend.
Schnellinstallation
REM 1. Clone the repository
git clone https://github.com/tmkaio/solidworks-mcp.git
cd solidworks-mcp
REM 2. Create a virtual environment
python -m venv .venv
.venv\Scripts\activate
REM 3. Install the package
pip install -e .
REM 4. (Optional) Install CadQuery for standalone STEP analysis
conda install -c cadquery cadqueryClaude Desktop konfigurieren
Kopieren Sie claude_desktop_config.example.json und übernehmen Sie die Inhalte in Ihre Claude-Konfiguration:
Speicherort: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"solidworks": {
"command": "C:\\path\\to\\solidworks-mcp\\.venv\\Scripts\\python.exe",
"args": ["-m", "solidworks_mcp.server"],
"env": {
"PYTHONPATH": "C:\\path\\to\\solidworks-mcp\\src",
"LOG_LEVEL": "INFO"
}
}
}
}Starten Sie Claude Desktop neu. In der Chat-Symbolleiste sollte ein Hammer-Symbol (🔨) erscheinen.
Eine Schritt-für-Schritt-Anleitung finden Sie unter docs/INSTALL.md.
Beispielkonversation
You: Open C:\parts\door_hinge.step and give me a full analysis.
Claude: [calls open_file, get_part_info, analyze_holes, analyze_bends]
The door hinge is a sheet metal part:
- Thickness: 2.00 mm (K-factor: 0.44)
- Bounding box: 120 x 80 x 45 mm
- Mass: 312 g
- 12 holes: Ø6mm x 4, Ø8mm x 4, Ø12mm x 4
- 3 bends: 90° x R2mm (two) and 45° x R3mm (one)
- Complexity: medium
You: Export the flat pattern as DXF to C:\output\hinge_flat.dxf
Claude: [calls flatten_part, export_dxf, unflatten_part]
Flat pattern exported: C:\output\hinge_flat.dxf (18.4 KB)
Flat dimensions: 310 x 80 mmVerfügbare Tools
Verbindung
Tool | Beschreibung |
| Verbindung zu SolidWorks herstellen (starten, falls nicht ausgeführt) |
| Verbindungsstatus und aktives Dokument prüfen |
| COM-Referenzen freigeben |
Dateien
Tool | Beschreibung |
| STEP, SLDPRT, IGES usw. öffnen |
| Aktives Dokument schließen |
| Speichern / Speichern unter |
| Alle geöffneten Dateien auflisten |
Analyse
Tool | Beschreibung |
| Masse, Volumen, Material, Blech-Flag |
| L x B x H + Diagonale |
| Feature-Histogramm |
| Alle Bohrungen nach Durchmesser gruppiert |
| Alle Biegungen mit Winkel/Radius/Länge |
| Kurzüberblick + Komplexitätsbewertung |
| Vollständiger JSON- + Markdown-Bericht |
| Kein SolidWorks erforderlich — nutzt CadQuery |
| Ixx/Iyy/Izz + Trägheitsprodukte |
| Flächentyp-Aufschlüsselung (planar/zylindrisch/usw.) |
Blech
Tool | Beschreibung |
| True/False-Prüfung |
| Dicke, K-Faktor, Biegeradius |
| Importierten Festkörper in Blech umwandeln |
| Abwicklung aktivieren |
| In den gefalteten Zustand zurückkehren |
Export
Tool | Beschreibung |
| Abwicklung -> DXF (für Laser/NC) |
| Teil -> STEP AP214 |
| Teil -> STL |
| Dokument -> PDF |
| Ansichtsfenster -> PNG |
Benutzerdefinierte Eigenschaften & Materialien
Tool | Beschreibung |
| Alle benutzerdefinierten Eigenschaften aus dem aktiven Dokument lesen |
| Eine einzelne benannte Eigenschaft lesen |
| Eine benutzerdefinierte Eigenschaft erstellen oder aktualisieren |
| Eine benutzerdefinierte Eigenschaft entfernen |
| Ein Material aus der SolidWorks-Bibliothek zuweisen |
| Verfügbare .sldmat-Materialdatenbanken auflisten |
Konfigurationen
Tool | Beschreibung |
| Alle Konfigurationen mit Aktiv-Status auflisten |
| Details der aktuell aktiven Konfiguration |
| Eine andere Konfiguration aktivieren |
| Eine neue Konfiguration erstellen (Kopie einer vorhandenen) |
| Eine Konfiguration entfernen |
| Konfigurationsspezifische benutzerdefinierte Eigenschaften |
Messungen
Tool | Beschreibung |
| Abstand zwischen zwei benannten Objekten |
| Länge/Fläche/Koordinaten eines einzelnen Objekts |
| Fläche, Normale, Schwerpunkt einer Fläche nach Index |
| Mindestabstand zwischen zwei Objekten |
| Querschnitt Ixx/Iyy/Fläche/Schwerpunkt |
Feature-Verwaltung
Tool | Beschreibung |
| FeatureManager-Struktur auflisten (mit Typfilter) |
| Typ, Unterdrückungsstatus, Fehler für ein Feature |
| Ein Feature in einer Konfiguration unterdrücken |
| Ein unterdrücktes Feature wiederherstellen |
| Parametrische Bemaßungen an einem Feature |
| Neuaufbau erzwingen (Standard oder vollständig) |
| Einen Feature-Neuaufbaufehler beschreiben |
Zeichnungen
Tool | Beschreibung |
| Neue Zeichnung aus aktivem Bauteil bzw. aktiver Baugruppe erstellen |
| Standard- bzw. isometrische Ansicht zur Zeichnung hinzufügen |
| Alle Ansichten der Zeichnung auflisten |
| Blattanzahl, Maßstab, Papierformat |
| Zeichnungsmaßstab ändern |
Baugruppen
Tool | Beschreibung |
| Alle Komponenten auflisten (oberste Ebene oder rekursiv) |
| Schnelle Komponentenzählung |
| Stückliste mit Mengen |
| Alle Verknüpfungen (Mates) auflisten |
| Masse, Pfad, Begrenzungsrahmen für eine benannte Komponente |
| Gesamtmasse und Massenschwerpunkt der Baugruppe |
Einschränkungen (v0.1)
Baugruppenunterstützung ist schreibgeschützt. Komponenten, Stücklisten, Verknüpfungen und Masse können gelesen werden; das Erstellen von Verknüpfungen oder das Einfügen von Komponenten wird nicht unterstützt.
Keine parametrische Bearbeitung. Features können aufgelistet, unterdrückt und wiederhergestellt werden, aber Bemaßungen können nicht gesteuert werden.
STEP-Dateien werden als „dumme“ Volumenkörper importiert.
convert_to_sheet_metalmuss ausgeführt werden, bevor die Biegeanalyse irgendetwas zurückgibt.Kein Streifenlayout / keine Folgewerkzeugkonstruktion.
Nur Windows und erfordert eine lizenzierte lokale SolidWorks-Installation — die COM-API benötigt die vollständige Anwendung. Die einzige Ausnahme ist
analyze_step_standalone, das überall via CadQuery läuft.
Roadmap
Version | Funktion |
v0.2 | Werkzeuge für Streifenlayout — Stationskonfiguration |
v0.3 | Kraftberechnungen (Schneiden, Biegen, Ziehen) |
Darüber hinaus sind Umformbarkeits- und Hinterschneidungserkennung, GD&T-Bemaßung auf generierten Zeichnungen und Nesting-Integration plausible Richtungen, aber es ist nichts verbindlich zugesagt.
Entwicklung
Die Testsuite mockt die COM-Ebene, daher ist zum Ausführen keine SolidWorks-Lizenz erforderlich:
pip install -e ".[dev]"
ruff check src tests
pytest -vUnter Windows ist das die ganze Geschichte: Alle 54 Tests laufen. CI führt dieselben zwei Befehle auf Linux aus und installiert die reinen Python-Abhängigkeiten direkt statt über pip install -e ., weil pywin32 kein Linux-Wheel hat.
Zwei Gruppen überspringen sich selbst, anstatt fehlzuschlagen, wenn eine Abhängigkeit fehlt:
die
connect()- /disconnect()-Tests patchenpythoncomundwin32com.clientnamentlich, benötigen also pywin32 und laufen nur unter Windows;analyze_step_standalonebenötigt CadQuery.
Alles andere — der COM-Aufrufvertrag, die Bohrungs- und Biegeextraktion, die Einheitenumrechnung, die Feature-Traversierung — läuft überall.
Logs
Server-Logs: %USERPROFILE%\.solidworks-mcp\logs\server.log
Claude-Desktop-Logs: %APPDATA%\Claude\logs\
Lizenz
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables users to control AutoCAD, GstarCAD, or ZWCAD through natural language via Claude Desktop. It provides tools for drawing geometric shapes, adding text and dimensions, and managing CAD files using the Windows COM interface.3MIT
- AlicenseNot gradedqualityDmaintenanceConnects Claude to a running Autodesk Civil 3D instance via COM automation to perform drawing, surface, alignment, COGO point, line, and corridor operations.7MIT
- FlicenseNot gradedqualityDmaintenanceEnables Claude to create and manipulate SolidWorks CAD models through natural language commands, automating part creation, sketching, and extrusion.9
- AlicenseBqualityCmaintenanceEnables connecting MCP clients to local SolidWorks for automated 3D part creation, template generation, file export, and basic review via natural language.101MIT
Related MCP Connectors
Connect Claude to Fathom meeting recordings, transcripts, and summaries
Connect your team's living knowledge base — docs, data, issues, CRM — to Claude and ChatGPT.
Live SEO workflow tools for Claude Code, Codex, and AI agents.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/tmkaio/solidworks-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server