Skip to main content
Glama
hashbolic

FreeCAD MCP for Codex

by hashbolic

FreeCAD MCP for Codex

This local Codex plugin exposes a compact typed MCP surface for FreeCAD 1.1.x on Windows. It connects to the bundled Robust MCP Bridge over XML-RPC by default and can also run with the embedded bridge when launched by FreeCAD's Python 3.11 runtime.

The bridge implementation and FreeCAD addon are derived from spkane/freecad-addon-robust-mcp-server under its MIT license. See LICENSE-CODE and UPSTREAM-NOTICE.md.

Development setup

git clone https://github.com/hashbolic/Codex-FreeCAD-MCP.git
Set-Location Codex-FreeCAD-MCP
py -3.11 -m venv .venv
.\.venv\Scripts\python.exe -m pip install -e . pytest

Install the bundled freecad-addon/RobustMCPBridge package into FreeCAD's user Mod directory, restart FreeCAD, select the Robust MCP Bridge workbench, and start its XML-RPC bridge on localhost:9875. FreeCAD.getUserAppDataDir() in the FreeCAD Python console reports the correct per-user base directory.

The repository root is a Codex plugin (.codex-plugin/plugin.json) and its .mcp.json launches the local .venv. Add this checkout to a configured local Codex plugin marketplace, then install freecad-mcp-codex from that marketplace.

Run the offline release checks with:

.\.venv\Scripts\python.exe -m pytest -q -k "not live"

The complete release gate also requires a running FreeCAD bridge and a BC250 fixture through FREECAD_TEST_XMLRPC_PORT and FREECAD_BC250_PATH.

Related MCP server: freecad-mcp

Configuration

Set FREECAD_MODE=xmlrpc (default), FREECAD_XMLRPC_PORT=9875, and start the bundled addon inside FreeCAD. FREECAD_ALLOW_EXECUTE_PYTHON=true is required for the controlled escape hatch; it is disabled by default.

The MCP server intentionally starts even when FreeCAD is offline, so freecad_health can report a structured disconnected state.

Security boundary

This is a trusted-local integration. Keep the MCP process and FreeCAD XML-RPC bridge bound to localhost. Only enable execute_freecad_python for code you authored and understand: it can read and write local files, mutate open documents, and use any capabilities available to the FreeCAD Python runtime. Do not expose the bridge or MCP stdio process to untrusted users or networks.

A
license - permissive license
C
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • A
    license
    Not graded
    quality
    F
    maintenance
    This project provides a robust integration between AI assistants and FreeCAD CAD software using the Model Context Protocol (MCP). It allows external applications to interact with FreeCAD through a standardized interface, offering multiple connection methods and specialized tools.
    24
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables to control FreeCAD from Claude Desktop through MCP, allowing CAD operations like creating and editing objects, taking screenshots, and executing Python code.
    11
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Exposes typed CAD document and object tools for FreeCAD via the Model Context Protocol, enabling clients to create, list, inspect, save, and recompute documents and objects.
    GNU Lesser General Public v2.1 only

View all related MCP servers

Related MCP Connectors

  • A paid remote MCP for OpenAI Codex agent coordination MCP, built to return verdicts, receipts, usage

  • Generate a typed SDK, CLI, and MCP server from any OpenAPI or GraphQL spec, and keep them current.

  • Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.

View all MCP Connectors

Latest Blog Posts

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/hashbolic/Codex-FreeCAD-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server