MCP-сервер для FreeCAD: AI-агент создаёт и редактирует параметрические 3D-модели, управляет деталями и сборками через Python API. Превращает FreeCAD в инструмент с голосовым/текстовым управлением.
# Требуется: FreeCAD 1.0+
# Шаг 1 — установить MCP-сервер:
pip install freecad-mcp
# Шаг 2 — включить сервер внутри FreeCAD:
# В FreeCAD: Tools → Macro → запустить скрипт из репо (freecad_mcp_server.py)
# Или установить как FreeCAD Add-on через Addon Manager
# Claude Desktop — claude_desktop_config.json:
{ "mcpServers": { "freecad": { "command": "uvx", "args": ["freecad-mcp"] } } }
# Claude Code (CLI):
claude mcp add freecad -- uvx freecad-mcp
# OpenCode — ~/.config/opencode/opencode.json:
{ "mcp": { "freecad": { "type": "local", "command": ["uvx", "freecad-mcp"] } } }
Этот репозиторий — FreeCAD MCP, который позволяет вам управлять FreeCAD из Claude Desktop.




Это история диалога. https://claude.ai/share/7b48fd60-68ba-46fb-bb21-2fbb17399b48
Каталог аддонов FreeCAD:
* Windows: %APPDATA%\FreeCAD\Mod\
* Mac:
* FreeCAD 1.1: ~/Library/Application\ Support/FreeCAD/v1-1/Mod/
* FreeCAD 1.0: ~/Library/Application\ Support/FreeCAD/v1-0/Mod/
* Linux:
* Ubuntu: ~/.FreeCAD/Mod/ или ~/snap/freecad/common/Mod/ (если вы установили FreeCAD через snap)
* Debian: ~/.local/share/FreeCAD/Mod
* Arch / CachyOS (FreeCAD 1.1 из extra/freecad): ~/.local/share/FreeCAD/v1-1/Mod/
Пожалуйста, поместите каталог addon/FreeCADMCP в каталог аддонов.
git clone https://github.com/neka-nat/freecad-mcp.git
cd freecad-mcp
# Для Linux (Ubuntu/Debian)
cp -r addon/FreeCADMCP ~/.FreeCAD/Mod/
# Для Linux (Arch/CachyOS, FreeCAD 1.1 из extra/freecad)
mkdir -p ~/.local/share/FreeCAD/v1-1/Mod/
cp -r addon/FreeCADMCP ~/.local/share/FreeCAD/v1-1/Mod/
# Для macOS (FreeCAD 1.1)
cp -r addon/FreeCADMCP ~/Library/Application\ Support/FreeCAD/v1-1/Mod/
После установки аддона вам нужно перезапустить FreeCAD. Вы можете выбрать "MCP Addon" из списка рабочих столов и использовать его.

А также вы можете запустить RPC-сервер командой "Start RPC Server" на панели инструментов "FreeCAD MCP".

По умолчанию RPC-сервер необходимо запускать вручную каждый раз при открытии FreeCAD. Чтобы запускать его автоматически:
Настройка сохраняется в файл freecad_mcp_settings.json и сохраняется между сессиями. При следующем запуске FreeCAD RPC-сервер автоматически запустится после завершения загрузки приложения.
Вы можете отключить это в любое время, сняв флажок Auto-Start Server в том же меню.
Требуется предварительная установка uvx.
А также вам нужно отредактировать файл конфигурации Claude Desktop, claude_desktop_config.json.
Для пользователя.
{
"mcpServers": {
"freecad": {
"command": "uvx",
"args": [
"freecad-mcp"
]
}
}
}
Если вы хотите экономить токены, вы можете установить only_text_feedback в true и использовать только текстовую обратную связь.
{
"mcpServers": {
"freecad": {
"command": "uvx",
"args": [
"freecad-mcp",
"--only-text-feedback"
]
}
}
}
Для разработчика. Сначала вам нужно клонировать этот репозиторий.
git clone https://github.com/neka-nat/freecad-mcp.git
{
"mcpServers": {
"freecad": {
"command": "uv",
"args": [
"--directory",
"/path/to/freecad-mcp/",
"run",
"freecad-mcp"
]
}
}
}
По умолчанию RPC-сервер не принимает удалённые подключения и слушает на localhost. Чтобы управлять FreeCAD с другой машины в вашей сети:
На панели инструментов FreeCAD MCP:
0.0.0.0 (все интерфейсы) при следующем перезапуске. В целях безопасности он принимает подключения только с IP-адресов или CIDR-подсетей, указанных в поле Allowed IPs. По умолчанию это 127.0.0.1.192.168.1.100, 10.0.0.0/24
127.0.0.1 всегда является значением по умолчанию. Неверные записи отклоняются с диалоговым окном ошибки. Перезапустите RPC-сервер после изменения этих настроек.
Передайте флаг --host с IP-адресом или именем хоста машины, на которой запущен FreeCAD:
{
"mcpServers": {
"freecad": {
"command": "uvx",
"args": [
"freecad-mcp",
"--host", "192.168.1.100"
]
}
}
}
Значение --host проверяется при запуске — оно должно быть действительным IPv4/IPv6-адресом или именем хоста.
create_document: Создать новый документ в FreeCAD.create_object: Создать новый объект в FreeCAD.edit_object: Редактировать объект в FreeCAD.delete_object: Удалить объект в FreeCAD.execute_code: Выполнить произвольный код Python в FreeCAD.insert_part_from_library: Вставить деталь из библиотеки деталей.get_view: Получить скриншот активного вида.get_objects: Получить все объекты в документе.get_object: Получить объект в документе.get_parts_list: Получить список деталей из библиотеки деталей.run_fem_analysis: Запустить решатель CalculiX для существующего Fem::FemAnalysis и вернуть сводные результаты (максимальное напряжение по Мизесу, максимальное перемещение, количество узлов, рабочий каталог). Автоматически создает SolverCcxTools, если анализ его не имеет. Смотрите examples/cantilever_fem.py для примера полного использования.Сделано с помощью contrib.rocks.