Battenmark
Battenmark
Offene, backend-neutrale CAD-Infrastruktur für KI-Agenten und Software.
Battenmark bietet eine typisierte, backend-neutrale Schnittstelle zum Erstellen, Bearbeiten,
Inspizieren, Validieren und Exportieren maßgeblicher CAD-Geometrie über
austauschbare CAD-Backends. Aufrufer fordern create_hole an – niemals
PartDesign::Hole. Kein Transport besitzt das Modell; ein kanonischer Dienst tut dies.
ChatGPT / Claude / Gemini / Grok / Codex / local models / IDE agents / custom apps
│
MCP / HTTP / Python / CLI
│
▼
Battenmark Core
│
typed CAD operations / CAD IR
│
Backend Registry
│
┌─────────────────────┼──────────────────────┐
▼ ▼ ▼
FreeCAD JSCAD future adapters
authoritative B-rep preview build123d/CadQuery/etc.FreeCAD / OpenCascade – maßgeblicher B-Rep-Kern (Headless-JSON-lines-Worker)
JSCAD – In-Process-Vorschau-/Envelope-Backend (nicht die Quelle der Wahrheit)
Schnellstart
Voraussetzungen: Node.js ≥ 20 und npm. FreeCAD ist für den Kerndienst optional und nur für das maßgebliche B-Rep-Backend erforderlich.
npm install
npx tsc --noEmit # type check
npm test # fast kernel-free suites (parametric, selectors, registry)FreeCAD-Backend
sh scripts/bootstrap-macos.sh # macOS: discovers /Applications/FreeCAD.app
sh scripts/install-freecad.sh # Linux: installs headless 1.0.2 AppImage (no FUSE)
npm run test:freecad # proves the real worker end-to-endErmittlungsreihenfolge: $AGENTCAD_FREECAD_CMD → macOS-FreeCAD.app-Bundles → Homebrew → extrahiertes Linux-AppImage → PATH. Siehe docs/MACOS.md und docs/LINUX.md.
Transporte
Transport | Einstiegspunkt |
MCP stdio |
|
HTTP |
|
CLI |
|
Python |
|
Beispiel für den Python-Client:
from agentcad import AgentCad
c = AgentCad(base_url="http://127.0.0.1:8787", token="secret-token")
pid = c.project_create("demo")["project_id"]
c.create_box(pid, 80, 50, 12)
print(c.rebuild(pid)["data"]["volume_mm3"]) # 48000Related MCP server: freecad-tool-server
Golden-Smoke-Modell
Der kanonische Release-Smoke-Test ist eine 80 × 50 × 12‑mm‑Box = 48.000 mm³, verifiziert über JSCAD, FreeCAD, HTTP, CLI, MCP und den Python-Client (test:transport-parity). Diese Vorlage sollte nicht leichtfertig geändert werden.
Funktionen
Backend-neutrale, typisierte CAD-Operationen mit explizitem Schema (
agentcad_schema_version: 2)FreeCAD/OpenCascade als maßgebliches B-Rep; JSCAD als Vorschau
Skalare Parameterausdrücke und Abhängigkeitsauswertung
Semantische Flächen-/Kantenselektoren (
top_perimeter, …), die sich nach Bearbeitungen neu auflösenPersistente Geometriereferenzen (
gref) mit expliziten Fehlern für „verloren“/„mehrdeutig“Durchgangs-, Sack-, Zylindersenk- und Kegelsenkbohrungen
Verrundungen und Fasen · lineare und rechteckige Muster
STEP-/FCStd-/STL-Austausch · PNG-Vorschauen in vier Ansichten
Dynamische Backend-Register mit Fähigkeitsermittlung pro Backend
Ein serialisierter FreeCAD-Worker mit Kill-/Restart-Wiederherstellung
Plattformstatus
Plattform | Status |
macOS Apple Silicon | Tier 1 – hardware-verifiziert (arm64, macOS 26.6.2, FreeCAD 1.1.3) |
Linux x86_64 | headless / für Entwicklung validiert (FreeCAD 1.0.2 AppImage) |
macOS Intel | nicht verifiziert |
Windows | nicht unterstützt / nicht verifiziert |
Bekannte Einschränkungen
Dies ist eine Pre-1.0-Alpha-Software; APIs können sich ändern.
Noch keine Baugruppen, Masten oder Baugruppen-Constraints
Noch keine kreisförmigen Muster
Gewinde sind kosmetische Metadaten, keine helix-förmigen Volumenkörper
Importiertes STEP ist ein Geometrieimport – keine automatische parametrische Rekonstruktion
Native FCStd-Dokumente behalten die historischen PartDesign-Feature-Formen; Battenmark misst den endgültigen Body-Tip (das Aufrechnen der Volumenkörper würde doppelt zählen)
Ein serialisierter FreeCAD-Worker (kein Pooling)
Die Vorschau-Renderung wird von JSCAD von OCC-Hidden-Line übernommen, nicht von OCC-Hidden-Line
Das vollständige topologische Benennen ist nicht gelöst; persistente
gref-Referenzen mildern es
Vollständige Liste: docs/LIMITATIONS.md.
Dokumentation
Thema | Dokumentation |
Architektur & Grundlagen | |
Betriebsvertrag & Schema | |
Backends & Kernels | docs/BACKENDS.md · docs/FREECAD.md · docs/JSCAD.md · docs/KERNEL.md |
Transporte | docs/MCP.md · docs/HTTP.md · docs/CLI.md · docs/PYTHON.md · docs/CLIENTS.md |
Dienst & Persistenz | |
Import/Export & Vorschau | |
Plattformen & Validierung |
Kompatibilitäts-Kennzeichner
Die öffentliche Marke ist Battenmark. Historische technische Kennungen bleiben absichtlich bestehen und sind eine Kompatibilitätsfläche, keine zweite Marke: AgentCadService, agentcad_schema_version, die Umgebungsvariablen AGENTCAD_*, die Binärdateien agentcad / agentcad-mcp. Die interne Dienstversion 0.5.6 weicht absichtlich vom Release-Tag ab; siehe docs/VERSIONING.md.
Beiträge & Sicherheit
Siehe CONTRIBUTING.md und SECURITY.md. Verhaltenskodex: CODE_OF_CONDUCT.md.
Lizenz
Apache-2.0 für dieses Repository. FreeCAD/OpenCascade werden als separater LGPL-Prozess aufgerufen (die Worker-Skripte laufen in FreeCADCmd). Siehe LICENSE, NOTICE und THIRD_PARTY_NOTICES.md.
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
- FlicenseNot gradedqualityCmaintenanceEnables AI to directly call FreeCAD for 3D modeling via the MCP protocol, providing 39 modeling tools including primitive creation, boolean operations, transformations, and export.2
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to programmatically build, analyze, and export 3D CAD geometry using FreeCAD through REST or MCP tools.1MIT
- AlicenseNot gradedqualityAmaintenanceEnables agent-driven CAD design through deterministic source files (.kcad.ts), including model evaluation, validation, and export to STEP/STL via MCP tools for review and introspection.9514MIT
- AlicenseAqualityAmaintenanceAI pilots FreeCAD. Provides full control of FreeCAD for parametric modeling, assembly, geometry sensing, and more via MCP tool calls.336MIT
Related MCP Connectors
Create, browse, remix, collaborate on, and run durable AI workflow nodes from MCP hosts.
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Generate, edit, and deploy immersive 3D/WebGL web projects from any MCP assistant.
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/halsyourpal422/Battenmark'
If you have feedback or need assistance with the MCP directory API, please join our Discord server