# OpenSCAD MCP Server LLM-gestützte 3D-Modell-Erstellung für den 3D-Drucker via Claude Code. ## Setup ### 1. OpenSCAD installieren https://openscad.org/downloads.html → Windows-Installer ### 2. Python-Abhängigkeiten ```bash pip install mcp ``` ### 3. MCP-Server in Claude Code registrieren In Claude Code: **Settings → MCP Servers → Add** (oder direkt in `~/.claude/claude_desktop_config.json`): ```json { "mcpServers": { "openscad": { "command": "python", "args": ["C:/Users/thors/Documents/Claude/openscad-mcp/server.py"] } } } ``` ### Umgebungsvariablen (optional) | Variable | Standard | Beschreibung | |----------|----------|--------------| | `OPENSCAD_PATH` | `C:\Program Files\OpenSCAD\openscad.exe` | Pfad zur OpenSCAD-Executable | | `OPENSCAD_OUTPUT_DIR` | `~/3d-models` | Ausgabeverzeichnis für STL-Dateien | ## Verfügbare Tools | Tool | Beschreibung | |------|--------------| | `render_stl(code, filename)` | OpenSCAD-Code → STL-Datei | | `preview_png(code, filename)` | OpenSCAD-Code → PNG-Vorschau | | `list_models()` | Alle STL-Dateien auflisten | ## Beispiel-Prompt für Claude ``` Erstelle einen Wandhalter für einen 32mm Rohrdurchmesser, Wandstärke 3mm, mit 2 Schraubenlöchern (M4), Gesamtbreite 60mm. Rendere es als "rohrhalter.stl". ``` ## OpenSCAD Tipps für LLMs Claude generiert typisch solchen Code: ```openscad difference() { union() { cylinder(h=20, d=40); translate([0,0,10]) cube([60,10,20], center=true); } cylinder(h=22, d=32, center=true); // Loch für Rohr // Schraubenlöcher translate([20,0,0]) cylinder(h=22, d=4.5, center=true); translate([-20,0,0]) cylinder(h=22, d=4.5, center=true); } ```