9.0 KiB
name, description
| name | description |
|---|---|
| solidcraft-mcp | parametrische 3D-Teile über den SolidCraft-MCP-Server bauen, ändern, messen und als .solidcraft, STEP, STL, OBJ oder 3MF ausgeben. Verwenden, wenn SolidCraft-Werkzeuge verbunden sind oder der Nutzer SolidCraft nennt; typisch für Laschen, Platten, Gehäuse, Bohrbilder, Baugruppen. Nicht für Laser-DXF (VectorCraft), nicht für DXF/DWG-Zeichnungen (CADCraft) und nicht für native SOLIDWORKS-Dateien. |
Parametrische Teile mit SolidCraft (MCP)
SolidCraft ist ein Open-Source-CAD (Rust) für parametrische Volumenkörper. CLI 0.23.0. Die mitgelieferten Skills (skill_reference) sind die Befehlsreferenz; dieser Text hält nur die Regeln fest, die davon abweichen oder die der Agent sonst falsch macht. Nur solidcraft-cli.exe starten. solvecraft-cli.exe ist ein Alias und fällt weg.
Voraussetzung
Die Werkzeuge list_commands, execute, batch, inspect_design, measure, screenshot, export, open, save … müssen verbunden sein. Ihr Präfix hängt vom Client ab. Fehlen sie, dem Nutzer sagen, dass der Server nicht verbunden ist (Einrichtung siehe README).
Zwei Starts, beides ist solidcraft-cli mcp:
- Kopflos, ohne
--connect(optional--headless). Der Server rechnet im eigenen Prozess.--allow-path(mehrfach) begrenzt Lesen und Schreiben. Das ist der Start der Erweiterung. - An der App:
--connect 127.0.0.1:PORT(optional--token). Die App muss mitsolidcraft --control PORTlauschen. Tut sie das nicht, antworten Entwurfswerkzeuge mitno SolidCraft app is listening at 127.0.0.1:7878.skill_referenceliest trotzdem, die Skills stecken in der CLI.--connectist nötig, wenn der Nutzer die offene Datei in der App sehen und anfassen soll. Für einen neuen Teil im Hintergrund reicht kopflos.
Lauscht die App nicht, nicht im Kreis wiederholen. Dem Nutzer sagen, dass solidcraft --control 7878 fehlt, oder kopflos neu starten.
Mitgelieferte Skills
Vor dem Bauen skill_reference lesen, nicht den Befehlskatalog auswendig lernen. file ist SKILL.md oder reference.md (Standard reference.md).
| Skill | Wann |
|---|---|
solidcraft-modeling |
neues Teil |
solidcraft-mechanisms |
Baugruppe, Gelenk, Zahnrad, Kurve, Kontakt, Bewegungsstudie |
solidcraft-editing |
bestehende Datei ändern, Checkpoint, Absturz |
solidcraft-checking |
Parameterbereiche, jeder zulässige Wert, STEP-Vergleich, Portierung aus build123d, CadQuery oder OpenSCAD. Der Text in der CLI nennt die Prüfung gegen 0.21.0 |
Werkzeuge
| Tool | Zweck |
|---|---|
list_commands {filter} |
Befehlskatalog. Nur mit Filter; ohne Filter über 100 KB |
describe_command {id} |
Parameter eines Befehls; für solid.box, solid.extrude und engine.describe auch JSON Schema |
execute {command, params, verbose} |
ein Befehl; ein Fehler lässt den Entwurf unverändert |
batch {commands, verbose} |
Schritte der Reihe nach; beim ersten Fehler wird der Stapel zurückgenommen |
inspect_design |
Parameter, Zeitachse, Körper, Skizzen, Gelenke |
measure |
Volumen (mm³), Fläche, Schwerpunkt, Hüllbox |
body_topology {body} |
Kanten (Mittelpunkt) und Flächen |
set_parameter {name, value} |
Parameter anlegen oder ändern |
screenshot |
PNG. Immer source: "model", wenn die App verbunden ist |
export {path, format} |
step, 3mf, 3mf-tagged, stl, stla, obj, urdf |
open {path} / save {path} |
.solidcraft, STEP, Netz (.3mf, .stl, .obj, .glb, .gltf). save nach .json ist Klartext |
new_design |
leerer Entwurf |
undo / redo |
ein Schritt |
crash_reports |
Absturzberichte auf diesem Rechner. Den auslösenden Befehl nicht unverändert wiederholen |
running |
was die App gerade rechnet. Fragen, wenn ein Aufruf hängt, bevor derselbe Befehl noch einmal geht |
pending |
Ergebnis eines Aufrufs, der mit still running: zurückkam. Nicht noch einmal senden |
skill_reference |
mitgelieferte Skills, siehe oben |
Arbeitsweise
- Zuerst
skill_reference, dann rechnen: Parameter, Lage (Teil um den Ursprung), für jede Kante oder Fläche den Weltpunkt, erwartetes Volumen und die Hüllbox. - Wenige große
batch-Aufrufe. Ein Stapel ist alles oder nichts (failed.index,failed.error). Einen riskanten Schritt allein schicken. - Danach
measuregegen die eigene Rechnung. Volumen, Hüllbox und Flächenzahl (faces, nichtkernel.faces). Eine Lücke von etwa 0,001–0,01 % gilt als Treffer; lange flache Bögen etwa 0,1 %. - Kanten über den exakten Mittelpunkt wählen, als nackte Zahlen. Die senkrechte Eckkante eines zentrierten Quaders liegt bei
[w/2, d/2, h/2]. - In großen Entwürfen
"verbose": false.
Längen sind mm. Winkel in Ausdrücken brauchen eine Einheit, z. B. "30 deg".
Fallen
- Ein Schnitt kann Erfolg melden und das Volumen unverändert lassen. An 0.16.2 gemessen, an 0.23.0 nicht wiederholt:
solid.box40×30×20 mm ergab 24000 mm³. Einsolid.cylindermitoperation: "cut"daneben ließ das Volumen stehen. Nur einmeasure, das zur Rechnung passt, zählt. Die mitgelieferte Anleitung sagt dasselbe für eine Bohrung, deren Skizze in der Luft liegt. - Kantenwahl: weiter als 5 % der Körpergröße von jeder Kante entfernt wird abgelehnt (
the nearest edge is 15.000 mm away). Es gibt keine stille Schnappwahl mehr ohne Schranke. Den Mittelpunkt aus der Geometrie rechnen. Eine Wahl ist eine nackte Zahl, wird einmal aufgelöst und folgt danach ihrer Kante. - Außen verrunden, bevor geschält wird, damit die Schale den Rundungen folgt. Ausnahme: eine Kante der Fläche, die die Schale entfernt. Die mitgelieferte Anleitung nennt eine zweite Ausnahme: eine Verrundung zwischen zwei gekrümmten Flächen vor der Schale scheitert (
offset: only bodies with planes, cylinders, cones, spheres and tori). - Eine nackte Zahl folgt keinem Parameter. Was mitziehen soll, steht in einer Skizzenbemaßung oder einem Ausdruck.
new_designundopenverwerfen ungespeicherte Arbeit. Hat der Entwurf Features auf der Zeitachse, vorher fragen.- Screenshot mit
source: "model". Ohnesourceliefert ein mit der App verbundener Server das Fenster, undviewdreht dessen Kamera. - Nut vor dem Einstieg, gleiche Startebene und gleicher Außenradius (0.16.2): der zweite
solid.revolvemitcutmeldetboolean Cut: the operation failed: no result. Einstieg zuerst. sketch.circle.centernimmt im Felddiameterkeinen Ausdruck (needs radius or diameter). Zahl plussketch.dimensionmittype: diameter.solid.revolvemitangledreht von der Skizzierebene in die negative Winkelrichtung (von +X nach −Y).direction: symmetriclegt den Winkel um die Ebene.- Ein Kreismuster solcher Schnitte kann
Boolean retry: tool displacementum etwa4e-4mm warnen. Das Volumen an 0.16.2 blieb in der Toleranz. Die Checking-Anleitung sagt, eine Boolean-Warnung kann die Geometrie trotzdem falsch lassen: Volumen prüfen. - Überdeckung:
solid.combinemitintersectauf leerer Überdeckung löscht den Zielkörper und meldet trotzdem Erfolg. Zum Prüfeninspect.interference. - Absturz:
crash_reports, danndoc.recovery_listunddoc.recover. Den abstürzenden Befehl nicht unverändert wiederholen. Vor riskanten Änderungen an einer bestehenden Dateiedit.checkpoint.
Rezepte
- Grundplatte mit Bohrbild: Parameter, ein
batch(Skizze aufXY, Extrusion, Verrundung über Mittelpunkte innerhalb der 5-%-Schranke, Bohrung, Muster mit Ausdrücken),measure,set_parameter, erneutmeasure,saveals.solidcraft,exportals STEP. - Kleines Gehäuse: Kasten, Außenkanten verrunden, Schale, Rand der Öffnung danach runden,
measurenach jedem Schritt. - Baugruppe: nicht hier nachbauen.
skill_reference {"skill":"solidcraft-mechanisms","file":"SKILL.md"}, dann erst Gelenke. URDF lässt Gelenke weg, die eine Schleife schließen. - Vorhandenes STEP nur ansehen:
opennur mit Zustimmung.measure, ein Bildscreenshot {source: "model", view: "iso"}. Nichts ändern, solange der Nutzer nur messen will.
Abschlussprüfung
measurepasst zum selbst gerechneten Volumen, zur Hüllbox und zur Flächenzahl.inspect_designmitmeasure: falseundsketches: false: keinerrorin der Zeitachse. Eine Boolean-Warnung nennen; stimmt das Volumen nicht, ist die Geometrie falsch, auch ohne Fehlerzeile.- Ein
screenshotmitsource: "model"angesehen. - Pfade von
.solidcraftund Export dem Nutzer genannt.
Datenschutz
Ampel:
- Grün: allgemeine und technische Inhalte ohne Kundenbezug.
- Gelb: Projekt- und Geschäftsinfos, nur nach Abwägung oder anonymisiert.
- Rot: personenbezogene Daten und NDA-Inhalte gehören nicht in die Cloud-KI.
Ein Kunden-STEP mit Kundenname oder NDA-Vermerk ist rot: nur mit Zustimmung des Nutzers öffnen.
Grenzen
- Kein SLDPRT und kein SLDASM.
- Kein Ersatz für eine freigegebene Fertigungszeichnung.
- 2D-DXF für Laser bleibt bei VectorCraft. Die SolidCraft-Hilfe nennt CADCraft nicht; DXF/DWG als Zeichnung mit AutoCAD-Befehlen ist CADCraft, nicht dieser Skill.