Home / MCP / FreeCAD MCP Server

FreeCAD MCP Server

Controls FreeCAD from Claude Desktop via MCP to create docs, objects, and views

typescript
Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
    "mcpServers": {
        "freecad": {
            "command": "uvx",
            "args": [
                "freecad-mcp"
            ]
        }
    }
}

You can control FreeCAD from Claude Desktop using the FreeCAD MCP server. This enables you to issue commands, create documents and objects, and render views directly from Claude with a structured RPC workflow.

How to use

Launch the FreeCAD MCP server through the local workflow as described below. In FreeCAD, open the FreeCAD MCP addon, install and restart FreeCAD, then select the MCP Addon workbench. Start the RPC server from the FreeCAD MCP toolbar. Once the server is running, configure Claude Desktop to connect to the local MCP instance you set up.

How to install

Prerequisites: you need a running FreeCAD installation and the Claude Desktop environment ready to run MCPs. The FreeCAD MCP addon is required and must be installed in FreeCAD first.

1) Install the FreeCAD MCP addon by cloning the repository and placing it in FreeCAD's addon directory.

git clone https://github.com/neka-nat/freecad-mcp.git
cd freecad-mcp
cp -r addon/FreeCADMCP ~/.FreeCAD/Mod/

2) Restart FreeCAD after the addon is installed. In FreeCAD, choose the MCP Addon from the Workbench list to enable the addon.

3) Start the RPC server from the FreeCAD MCP toolbar by selecting Start RPC Server.

4) Prepare Claude Desktop to connect to the MCP server. You will set up the MCP server configuration in Claude Desktop so it can start and communicate with FreeCAD.

Additional setup and configurations

Configure Claude Desktop to run the FreeCAD MCP server locally. The pre-installation of the uvx runtime is required.

User configuration to run the MCP server with Claude Desktop uses the following JSON structure to connect via uvx and start the FreeCAD MCP process.

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

If you want to enable only text feedback and save a token, you can add the --only-text-feedback flag to the command in Claude Desktop.

{
  "mcpServers": {
    "freecad": {
      "command": "uvx",
      "args": [
        "freecad-mcp",
        "--only-text-feedback"
      ]
    }
  }
}

Developer setup to run the MCP server directly from the repository uses uv with a directory and run command. This runs the FreeCAD MCP server from the local path.

{
  "mcpServers": {
    "freecad": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/freecad-mcp/",
        "run",
        "freecad-mcp"
      ]
    }
  }
}

Available tools

create_document

Create a new FreeCAD document.

create_object

Create a new object in the FreeCAD document.

edit_object

Edit an existing FreeCAD object in FreeCAD.

delete_object

Delete an object from the FreeCAD document.

execute_code

Execute arbitrary Python code within the FreeCAD session.

insert_part_from_library

Insert a part from the parts library into the document.

get_view

Capture a screenshot of the active FreeCAD view.

get_objects

List all objects in the current document.

get_object

Retrieve details of a specific object in the document.

get_parts_list

List parts available in the parts library.