B
bonninr/freecad_mcp
Drive FreeCAD: model, inspect and export from an assistant
View on GitHub ↗Link checked 2026-11-12 · HTTP 200 · opens the vendor's own site
We have neither an install command nor a public remote endpoint from this repository, so we do not print a config. A made-up one is worse than none. How each client wires MCP up →
- Source
- collected from the abordage/awesome-mcp list · type: MCP server
- Harvest history
- first seen 2026-11-05 · last seen 2026-11-14 · seen 10× · listed by 10 sources
- Score
- score 1,003 · 10 sources · mcp
FAQ (answers come from our records)
Who is it for?
We filed it under these tags: MCP 服务. The tags come from the entry itself, not a taxonomy we imposed.
Who maintains it?
first catalogued 2026-11-05;last seen 2026-11-14。There is no official certification or quality rating here — we record sources and dates only.
# FreeCAD MCP (Model Control Protocol)
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
## 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:
json
"mcpServers": {
"freecad": {
"command": "C:\\ProgramData\\anaconda3\\python.exe",
"args": [
"C:\\Users\\USER\\AppData\\Roaming\\FreeCAD\\Mod\\freecadmcp\\src\\freecadbridge.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.exe or C:\\Python39\\python.exe.
Linux: It could be /usr/bin/python3 or the path to your Python installation.
macOS: Usually, it would be /usr/local/bin/python3 or the path to your Python installation.
args: An array of arguments to pass to the Python command. The first argument should be the path to the freecadbridge.py script, which is responsible for handling the MCP server logic. Make sure to adjust the path according to your installation.
### Example for Different Operating Systems
#### Windows
json
"mcpServers": {
"freecad": {
"command": "C:\\ProgramData\\anaconda3\\python.exe",
"args": [
"C:\\Users\\USER\\AppData\\Roaming\\FreeCAD\\Mod\\freecadmcp\\src\\freecadbridge.py"
#### Linux
json
"mcpServers": {
"freecad": {
"command": "/usr/bin/python3",
"args": [
"/home/USER/.FreeCAD/Mod/freecadmcp/src/freecadbridge.py"
#### macOS
json
"mcpServers": {
"freecad": {
"command": "/usr/local/bin/python3",
"args": [
"/Users/USER/Library/Preferences/FreeCAD/Mod/freecadmcp/src/freecadbridge.py"
## Features
The FreeCAD MCP currently supports the following functionalities:
### 1. getsceneinfo
Description: Retrieves comprehensive information about the current FreeCAD document, including:
Document properties (name, label, filename, object count)
Detailed object information (type, position, rotation, shape properties)
Sketch data (geometry, constraints)
View information (camera position, direction, etc.)
### 2. runscript
Description: Executes arbitrary Python code within the FreeCAD context. This allows users to perform complex operations, create new objects, modify existing ones, and automate tasks using FreeCAD's Python API.
### Example Usage
To use the FreeCAD MCP, you can connect to the server and send commands as follows:
python
import socket
import json
# Connect to the FreeCAD MCP server
client = socket.socket(socket.AFINET, socket.SOCKSTREAM)
client.connect(('localhost', 9876))
# Example: Get scene information
command = {
"type": "getsceneinfo"
client.sendall(json.dumps(command).encode('utf-8'))
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:
json
"mcpServers": {
"freecad": {
"command": "C:\\ProgramData\\anaconda3\\python.exe",
"args": [
"C:\\Users\\USER\\AppData\\Roaming\\FreeCAD\\Mod\\freecadmcp\\src\\freecadbridge.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.exe or C:\\Python39\\python.exe.
Linux: It could be /usr/bin/python3 or the path to your Python installation.
macOS: Usually, it would be /usr/local/bin/python3 or the path to your Python installation.
args: An array of arguments to pass to the Python command. The first argument should be the path to the freecadbridge.py script, which is responsible for handling the MCP server logic. Make sure to adjust the path according to your installation.
### Example for Different Operating Systems
#### Windows
json
"mcpServers": {
"freecad": {
"command": "C:\\ProgramData\\anaconda3\\python.exe",
"args": [
"C:\\Users\\USER\\AppData\\Roaming\\FreeCAD\\Mod\\freecadmcp\\src\\freecadbridge.py"
#### Linux
json
"mcpServers": {
"freecad": {
"command": "/usr/bin/python3",
"args": [
"/home/USER/.FreeCAD/Mod/freecadmcp/src/freecadbridge.py"
#### macOS
json
"mcpServers": {
"freecad": {
"command": "/usr/local/bin/python3",
"args": [
"/Users/USER/Library/Preferences/FreeCAD/Mod/freecadmcp/src/freecadbridge.py"
## Features
The FreeCAD MCP currently supports the following functionalities:
### 1. getsceneinfo
Description: Retrieves comprehensive information about the current FreeCAD document, including:
Document properties (name, label, filename, object count)
Detailed object information (type, position, rotation, shape properties)
Sketch data (geometry, constraints)
View information (camera position, direction, etc.)
### 2. runscript
Description: Executes arbitrary Python code within the FreeCAD context. This allows users to perform complex operations, create new objects, modify existing ones, and automate tasks using FreeCAD's Python API.
### Example Usage
To use the FreeCAD MCP, you can connect to the server and send commands as follows:
python
import socket
import json
# Connect to the FreeCAD MCP server
client = socket.socket(socket.AFINET, socket.SOCKSTREAM)
client.connect(('localhost', 9876))
# Example: Get scene information
command = {
"type": "getsceneinfo"
client.sendall(json.dumps(command).encode('utf-8'))
Listed badge (optional)
Copy this line into the README if you want the listing mark. Optional, and it does not affect being listed.
[](https://anclum.com/en/s/bonninr-freecad-mcp/)
- Source
- awesome · https://github.com/bonninr/freecad_mcp
- Browse by field
- MCP servers
- Listed by
- 10 independent sources
- added
- today
More like this
Filed under
Every tag opens the full list for that filter. Counts are the live catalogue figures.