Labsco
MCP SERVER

FreeCAD

by bonninr

Build and edit a FreeCAD model from the conversation — create Part, Draft, PartDesign and Fem objects, run Python inside the running application, and get a rendered view back after each change.

3D, CAD & Game EnginesVerified
Summary
Every edit comes back as a picture, so the model stays checkable without switching windows.

Returning a view by default is what makes CAD workable through a text channel at all — you see the box you just made, from the orientation you asked for, and turn the screenshots off for intermediate steps. Beneath the object tools sits arbitrary Python inside the running application, which puts the whole FreeCAD API within reach when the create and edit calls cannot express what you want. The FEM path is the one place the server expects homework done first: the analysis container, material and mesh have to exist before a solve.

What it is

A server that drives a running FreeCAD: it creates and edits objects in open documents, executes Python inside the application, and returns a rendered view of the model with each change.

What you get
  • Documents created, listed, and reloaded from disk when something outside the GUI — a headless freecadcmd script, for instance — has edited the .FCStd file
  • Objects created, edited and deleted by type, covering the Part::, Draft::, PartDesign:: and Fem:: families, with properties supplied at creation
  • A screenshot of the model returned with each change by default, from a named view: Isometric, Front, Top, Right, Back, Left, Bottom, Dimetric or Trimetric
  • Include_screenshot=False on any of those calls when the step is intermediate and the picture is not worth the tokens
  • Python executed inside FreeCAD, either inline or on a background thread for long computations that touch neither the GUI nor the document tree
  • The parts library addon listed and a part inserted from it by relative path
  • A CalculiX solve run over an existing analysis container, returning summary results
Requirements

FreeCAD installed and open, since every tool acts on its documents and returns views of its viewport. The bridge lives inside FreeCAD: put the freecad_mcp directory in FreeCAD's Mod folder — %APPDATA%/FreeCAD/Mod on Windows, ~/.FreeCAD/Mod on Linux, ~/Library/Preferences/FreeCAD/Mod on macOS — then restart FreeCAD and select the FreeCAD MCP workbench. Inserting from the library needs the parts library addon installed. A solve expects the document to already hold a Part-derived solid, an analysis container, an assigned material and a mesh, plus CalculiX to run it. MIT.

Setup effort

One command — uvx freecad-mcp