Data as of

FreeCAD MCP for Claude Desktop: Setup & Config

Claude Desktop: Control FreeCAD from an assistant through an addon and Python MCP server.

What you can do with FreeCAD in Claude Desktop

Choose direct FreeCAD modeling with library parts, Python access, screenshots, and existing-analysis FEM runs.

  • Create and revise CAD documents and objects conversationally.
  • Inspect a model through object data and active-view screenshots.

Before you start: FreeCAD in Claude Desktop

  • FreeCAD
  • The FreeCADMCP addon installed in the appropriate addon directory
  • uvx
  • Claude Desktop for the documented client setup

Restart FreeCAD after installing the addon, choose the MCP Addon workbench, and start its RPC server. --only-text-feedback disables visual feedback. Remote RPC access requires explicit enablement and allowed IPs.

FreeCAD Claude Desktop configuration

  1. Choose Claude Desktop configuration scope

    For FreeCAD MCP, open macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json. Merge under mcpServers via Settings → Developer → Edit Config when available.

  2. Add FreeCAD MCP to Claude Desktop

    Use the freecad-mcp entry below in mcpServers. Keep FreeCAD MCP's documented stdio connection fields and your other Claude Desktop entries.

  3. Check FreeCAD MCP in Claude Desktop

    FreeCAD MCP: Fully quit and reopen Claude Desktop; check developer diagnostics.

Config file · macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%\Claude\claude_desktop_config.json

JSON
{
  "mcpServers": {
    "freecad-mcp": {
      "command": "uvx",
      "args": [
        "freecad-mcp"
      ],
      "env": {}
    }
  }
}

FreeCAD tools available to Claude Desktop

FreeCAD's stored tool list documents 11 tools; compare it with Claude Desktop's connected tool list, because the stored list is not a live check.

create_document

When Claude Desktop requests create_document from FreeCAD, review the action before approving it.

Start a new CAD document in FreeCAD.

create_object

When Claude Desktop requests create_object from FreeCAD, review the action before approving it.

Add a CAD object to a FreeCAD document.

edit_object

When Claude Desktop requests edit_object from FreeCAD, review the action before approving it.

Change an existing CAD object's properties.

delete_object

When Claude Desktop requests delete_object from FreeCAD, review the action before approving it.

Remove an object from a FreeCAD document.

execute_code

When Claude Desktop requests execute_code from FreeCAD, review the action before approving it.

Run arbitrary Python within the FreeCAD application.

insert_part_from_library

When Claude Desktop requests insert_part_from_library from FreeCAD, review the action before approving it.

Insert a reusable component from the FreeCAD parts library.

get_view

When Claude Desktop requests get_view from FreeCAD, review the action before approving it.

get_objects

When Claude Desktop requests get_objects from FreeCAD, review the action before approving it.

get_object

When Claude Desktop requests get_object from FreeCAD, review the action before approving it.

get_parts_list

When Claude Desktop requests get_parts_list from FreeCAD, review the action before approving it.

run_fem_analysis

When Claude Desktop requests run_fem_analysis from FreeCAD, review the action before approving it.

FreeCAD: full stored tool descriptions

Troubleshooting FreeCAD in Claude Desktop

  • Fully quit and reopen Claude Desktop for FreeCAD MCP. If uvx freecad-mcp (from uv, for Python tools) is missing, check the desktop process's PATH, which may differ from your terminal.
  • FreeCAD MCP uses stdio here: Claude Desktop must keep the configured process running; protocol output belongs on stdout and diagnostics on stderr.
  • Known limitation: Requires a FreeCAD addon plus a running RPC server.
  • Known limitation: The Python execution tool can run arbitrary code inside FreeCAD.
  • Known limitation: Remote access requires explicit IP allowlisting and RPC configuration.
  • General Claude Desktop troubleshooting lives in the /clients/claude-desktop guide.

FreeCAD MCP — details. Claude Desktop guide

Frequently asked questions

Claude Desktop loads FreeCAD MCP from claude_desktop_config.json: ~/Library/Application Support/Claude/ on macOS, or %APPDATA%\Claude\ on Windows. Open it via Settings → Developer → Edit Config when available.

Claude Desktop's freecad-mcp example uses stdio.

FreeCAD MCP's Claude Desktop configuration invokes uvx freecad-mcp (from uv, for Python tools).

FreeCAD MCP's stored list contains 11 tools, including create_document, create_object, edit_object. Compare those names with Claude Desktop's connected tool list; the stored list is not a live check.

Yes. Copy the FreeCADMCP addon into the correct addon directory, restart FreeCAD, and use the MCP Addon workbench.

Yes. The Auto-Start Server setting is saved and applied after FreeCAD finishes loading in later sessions.