MCP for FreeCAD — Connect AI Agents to FreeCAD
Parametric models are only useful if constraints survive. Agents call feature-level tools that keep the tree valid — not scripts that rebuild it from scratch.
- Host software
- FreeCAD 0.21, 1.0 and newer
- Runtime
- Python 3.11+ with the FreeCAD Python module
- Transport
- stdio (local) and streamable HTTP (batch servers)
- Install
- Addon Manager package + npx dccmcp-freecad
- Workbenches
- Part, Part Design, Sketcher, Spreadsheet, TechDraw, Mesh, FEM (read)
- Platforms
- Windows, macOS, Linux
- Last reviewed
- 2026-09-20
What is MCP for FreeCAD?
MCP for FreeCAD is a local MCP server plus a FreeCAD plugin that connects AI agents to a real FreeCAD session. Agents discover 8 typed tools — including document.inspect, sketch.create, sketch.constrain and partdesign.feature — and call them to inspect, create, modify and validate work inside the live application.
Unlike generated FreeCAD scripts, every call is validated against your current document, classified as read, write or execute, and recorded in an audit log. FreeCAD stays open, the document stays live, and destructive operations are checkpointed so they can be rolled back.
It works with Claude Code, Codex, Cursor, GitHub Copilot, Claude Desktop, Gemini CLI, Trae, Doubao, Qwen Code, CodeBuddy, Custom MCP clients, CI batch runners over stdio or streamable HTTP.
- Host software: FreeCAD 0.21, 1.0 and newer
- Runtime: Python 3.11+ with the FreeCAD Python module
- Transport: stdio (local) and streamable HTTP (batch servers)
What goes wrong when agents drive FreeCAD without a contract
Scripts rebuild models instead of editing them
Regenerating a part from code throws away design intent. Engineers need the feature tree, constraints and references to stay intact.
Parametric tables drift out of sync
When an agent hardcodes a dimension instead of binding it to the parameter spreadsheet, the model quietly stops being parametric.
No traceability for manufacturing changes
A changed bore diameter that nobody recorded is a real production risk. Unlogged automation is not acceptable on the shop floor.
How MCP for FreeCAD keeps intent, structure and traceability intact
Feature-level modeling
The agent adds pads, pockets, revolutions and fillets as real Part Design features, so the tree stays editable by a human afterwards.
Parameter binding by default
Dimension tools accept either literals or spreadsheet aliases. The server reports when a value is unbound so the agent can fix it before the model ships.
Constraint-aware sketching
The agent reads the sketch degrees of freedom, adds geometric and dimensional constraints, and verifies the solver converges.
Drawing and export pipeline
Generate TechDraw views, then export STEP, IGES, STL or DXF with unit checks and a manifest of the exact revisions produced.
MCP for FreeCAD tools — every tool and its risk class
document.inspectObject tree, bodies, features, parameters, recompute state and unit system.readsketch.createCreate sketches on datum planes with a scoped target body.writesketch.constrainAdd geometric and dimensional constraints, then report remaining degrees of freedom.writepartdesign.featurePad, pocket, revolution, fillet and chamfer as first-class features in the tree.writeparameters.setRead and write spreadsheet aliases with type and range validation.writetechdraw.exportCreate or update drawing sheets and export to PDF or SVG.executecad.exportExport STEP, IGES, DXF, STL or 3MF plus a revision manifest.executerecompute.runForce a recompute and return a structured failure report instead of raising blind.execute
Install MCP for FreeCAD in four steps
Pre-release. These commands describe the interface we are shipping for MCP for FreeCAD — the packages are not published yet. Get notified when MCP for FreeCAD launches.
Install the workbench
Add the DCCMCP workbench through the FreeCAD Addon Manager, then restart FreeCAD.
Start the server
The server attaches to a running FreeCAD instance or launches one headlessly for batch conversion jobs.
npx dccmcp-freecad@latest serve --mode attach
Register with your client
Register the server with Claude Code, Codex, Cursor, OpenClaw or any other MCP client. Batch mode is useful for nightly parameter sweeps.
{
"mcpServers": {
"freecad": { "command": "npx", "args": ["dccmcp-freecad", "serve"] }
}
}Protect your parameters
Mark spreadsheets and properties as protected so agents can read but not overwrite approved values.
dccmcp policy protect --sheet DesignTable --write allow
MCP for FreeCAD works with the agents you already use
- Claude Code
- Codex
- Cursor
- GitHub Copilot
- Claude Desktop
- Gemini CLI
- Trae
- Doubao
- Qwen Code
- CodeBuddy
- Custom MCP clients
- CI batch runners
Any other MCP-compatible client works too — one config entry, stdio by default.
Other MCP integrations that pair with FreeCAD
10 integrations available
Compare tool lists, support matrices and policies for every supported application.
Questions teams ask before they install
MCP for FreeCAD is on the beta track. Read operations, sketching, Part Design features and exports are stable in our test corpus; FEM and Assembly workbenches are read-only previews for now.
Yes. Dimension tools prefer spreadsheet aliases, and the server reports unbound values so the agent can bind them. You can also protect specific parameters from write access entirely.
STEP, IGES, DXF, STL and 3MF exports are supported, each with a revision manifest recording the parameters and file hash used for the export.
FreeCAD 0.21 and 1.0+ are supported. The 1.0 line is recommended because of its improved Python API stability.
Yes. Attach and headless modes are both supported, which makes parameter sweeps and nightly exports straightforward to run in CI.
Put an agent inside your real tools — without putting your pipeline at risk
Install an integration, set a policy, and let your agent inspect, build and validate work in Blender, Maya, Houdini, 3ds Max, Rhino, ZBrush, Photoshop, FreeCAD, QGIS or OpenCV. Free to start, local by default.
macOS · Windows · Linux — no cloud dependency required