
FreeCAD
A bridge between Claude and FreeCAD's Python API that lets you create and manipulate 3D models through natural language. Exposes two core operations: get_scene_info for inspecting document state and run_script for executing arbitrary FreeCAD Python commands. You can create parametric parts, modify existing geometry, set up constraints, and automate CAD workflows by describing what you want rather than writing boilerplate code. Installation requires dropping the module into FreeCAD's Mod directory and configuring the Python path. Reach for this when you want conversational CAD design or need to prototype geometric operations quickly without diving into FreeCAD's interface.
- GitHub stars
- 183
- tools
- 2
- last updated
- Jan 27, 2026
Tools
2 toolsPublic tool metadata for what this MCP can expose to an agent.
get_scene_infoRetrieves comprehensive information about the current FreeCAD document, including document properties, detailed object information, sketch data, and view information.
Retrieves comprehensive information about the current FreeCAD document, including document properties, detailed object information, sketch data, and view information.
No parameter schema in public metadata yet.
run_scriptExecutes arbitrary Python code within the FreeCAD context to perform complex operations, create or modify objects, and automate tasks using FreeCAD's Python API.
Executes arbitrary Python code within the FreeCAD context to perform complex operations, create or modify objects, and automate tasks using FreeCAD's Python API.
No parameter schema in public metadata yet.
Sponsors
Readme
FreeCAD MCP (Model Control Protocol)
Overview
The FreeCAD MCP (Model Control Protocol) provides a simplified interface for interacting with FreeCAD through a server-client architecture. This allows users to execute commands and retrieve information about the current FreeCAD document and scene.
https://github.com/user-attachments/assets/5acafa17-4b5b-4fef-9f6c-617e85357d44
Configuration
To configure the MCP server, you can use a JSON format to specify the server settings. Below is an example configuration:
{
"mcpServers": {
"freecad": {
"command": "C:\\ProgramData\\anaconda3\\python.exe",
"args": [
"C:\\Users\\USER\\AppData\\Roaming\\FreeCAD\\Mod\\freecad_mcp\\src\\freecad_bridge.py"
]
}
}
}
Configuration Details
- command: The path to the Python executable that will run the FreeCAD MCP server. This can vary based on your operating system:
- Windows: Typically, it might look like
C:\\ProgramData\\anaconda3\\python.exeorC:\\Python39\\python.exe. - Linux: It could be
/usr/bin/python3or the path to your Python installation.
- Windows: Typically, it might look like
Details
- Repository
- github.com/bonninr/freecad_mcp
- Category
- Data & Analytics