
FreeCAD MCP: моделирование в FreeCAD через Claude, Codex и Cursor
Связывает агента с открытым FreeCAD: создать и изменить модель, выполнить Python-скрипт, снять вид и посчитать нагрузку методом конечных элементов. Два проекта: аддон neka-nat и Robust MCP Server на 150+ инструментов.
Аддон в FreeCAD и сервер через uvx: 17 инструментов, Python в GUI, в фоне и в отдельном freecadcmd, расчёт FEM в CalculiX; лицензия MIT.
Как подключить
Что сделать до подключения
FreeCAD и uv / uvx; сам сервер работает на Python 3.12 или новее
Папка addon/FreeCADMCP из репозитория, скопированная в каталог Mod вашего FreeCAD, затем перезапуск FreeCAD
В FreeCAD — верстак MCP Addon и кнопка Start RPC Server на панели FreeCAD MCP; сервер слушает 127.0.0.1:9875
FREECAD_MCP_TOKENнеобязателен: нужен, если в аддоне задан токен кнопкой Set Auth Token, например для доступа с другого компьютера
Конфиг для вашего клиента
Команда в терминале, в папке проекта. Флаг --scope user подключит сервер для всех проектов. Подробно о Claude Code
claude mcp add --transport stdio freecad \
-- uvx freecad-mcpПроверка: claude mcp list показывает статус рядом с каждым сервером: ✔ Connected, ! Needs authentication или ✘ Failed to connect. Внутри сессии то же видно по команде /mcp.
Файл ~/.codex/config.toml или .codex/config.toml в доверенном проекте. Можно и командой codex mcp add. Подробно о Codex
[mcp_servers.freecad]
command = "uvx"
args = ["freecad-mcp"]Проверка: В интерфейсе codex введите /mcp: появится список активных серверов. Из терминала то же покажет codex mcp list.
Файл ~/.cursor/mcp.json для всех проектов или .cursor/mcp.json в папке проекта. Подробно о Cursor
{
"mcpServers": {
"freecad": {
"command": "uvx",
"args": ["freecad-mcp"]
}
}
}Проверка: Откройте Customize в боковой панели: там список серверов с переключателями. Ошибки подключения смотрите в панели Output (Cmd+Shift+U), пункт MCP Logs в выпадающем списке.
Файл .mcp.json в корне проекта или ~/.copilot/mcp-config.json для всех проектов. Подробно о VS Code
{
"mcpServers": {
"freecad": {
"type": "stdio",
"command": "uvx",
"args": ["freecad-mcp"]
}
}
}Проверка: Попросите Copilot выполнить безобидную задачу через сервер и раскройте вызов инструмента в чате. Одна запись в конфиге подключение не подтверждает.
Файл ~/.qwen/settings.json или .qwen/settings.json в проекте. Подробно о Qwen Code
{
"mcpServers": {
"freecad": {
"command": "uvx",
"args": ["freecad-mcp"]
}
}
}Проверка: Запустите qwen и введите /mcp: откроется окно управления серверами. Из терминала статус покажет qwen mcp list.
Файл ~/.gemini/settings.json или .gemini/settings.json в проекте. Подробно о Gemini CLI
{
"mcpServers": {
"freecad": {
"command": "uvx",
"args": ["freecad-mcp"]
}
}
}Проверка: gemini mcp list показывает каждый сервер, его настройки и статус Connected или Disconnected. В сессии /mcp выводит CONNECTED, CONNECTING или DISCONNECTED и список инструментов.
Файл opencode.json в папке проекта или ~/.config/opencode/opencode.json. Подробно о OpenCode
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"servers": {
"freecad": {
"type": "local",
"command": ["uvx", "freecad-mcp"]
}
}
}
}Проверка: opencode mcp list показывает состояние каждого сервера, подключённый выглядит как ✓ context7 connected. Внутри OpenCode то же видно в /mcps.
Настройки → Разработчик → Изменить конфиг: файл claude_desktop_config.json. После правки перезапустите приложение. Подробно о Claude Desktop
{
"mcpServers": {
"freecad": {
"command": "uvx",
"args": ["freecad-mcp"]
}
}
}Проверка: Нажмите «Add files, connectors, and more /» в левом нижнем углу поля ввода, наведите на Connectors и откройте Manage connectors. Выберите сервер, чтобы увидеть его инструменты.
Вкладка Program → Install → Edit mcp.json. Подробно о LM Studio
{
"mcpServers": {
"freecad": {
"command": "uvx",
"args": ["freecad-mcp"]
}
}
}Проверка: Попросите модель в чате выполнить задачу через инструмент сервера. Через API сервер из mcp.json вызывают по id в integrations, например mcp/playwright.
Инструменты сервера
create_documentсоздаёт документlist_documentsперечисляет открытые документыreload_documentпереоткрывает документ с дискаcreate_objectсоздаёт объектedit_objectменяет свойства объектаdelete_objectудаляет объектget_objectsперечисляет объекты документаget_objectпоказывает один объектget_viewделает снимок активного видаexecute_codeвыполняет Python в FreeCADexecute_code_asyncзапускает расчёт в фонеget_async_statusпоказывает состояние фоновой задачиexecute_code_headlessвыполняет скрипт в freecadcmdget_rpc_statusпроверяет связь и версию аддонаinsert_part_from_libraryвставляет деталь из библиотекиget_parts_listперечисляет детали библиотекиrun_fem_analysisзапускает расчёт CalculiXПакет freecad-robust-mcp и верстак Robust MCP Bridge: 150+ инструментов для PartDesign, булевых операций, экспорта и макросов, запуск произвольного Python и макросов по умолчанию выключен; лицензия Apache-2.0.
Как подключить
Что сделать до подключения
FreeCAD 1.0.2 или новее, для безопасности рекомендован 1.1.4; Python 3.11 или новее
Сервер: pip install freecad-robust-mcp
Верстак Robust MCP Bridge из архива релиза по инструкции установки, в каталоге Addon Manager его нет
Сопряжение под тем же пользователем ОС: freecad-mcp --pair-bridge, затем Start MCP Bridge на панели верстака; сервер и верстак версии 0.7.0 или новее
Конфиг для вашего клиента
Команда в терминале, в папке проекта. Флаг --scope user подключит сервер для всех проектов. Подробно о Claude Code
claude mcp add --env FREECAD_MODE=xmlrpc --transport stdio freecad-addon-robust-mcp-server \
-- freecad-mcpПроверка: claude mcp list показывает статус рядом с каждым сервером: ✔ Connected, ! Needs authentication или ✘ Failed to connect. Внутри сессии то же видно по команде /mcp.
Файл ~/.codex/config.toml или .codex/config.toml в доверенном проекте. Можно и командой codex mcp add. Подробно о Codex
[mcp_servers.freecad-addon-robust-mcp-server]
command = "freecad-mcp"
args = []
[mcp_servers.freecad-addon-robust-mcp-server.env]
FREECAD_MODE = "xmlrpc"Проверка: В интерфейсе codex введите /mcp: появится список активных серверов. Из терминала то же покажет codex mcp list.
Файл ~/.cursor/mcp.json для всех проектов или .cursor/mcp.json в папке проекта. Подробно о Cursor
{
"mcpServers": {
"freecad-addon-robust-mcp-server": {
"command": "freecad-mcp",
"args": [],
"env": {
"FREECAD_MODE": "xmlrpc"
}
}
}
}Проверка: Откройте Customize в боковой панели: там список серверов с переключателями. Ошибки подключения смотрите в панели Output (Cmd+Shift+U), пункт MCP Logs в выпадающем списке.
Файл .mcp.json в корне проекта или ~/.copilot/mcp-config.json для всех проектов. Подробно о VS Code
{
"mcpServers": {
"freecad-addon-robust-mcp-server": {
"type": "stdio",
"command": "freecad-mcp",
"args": [],
"env": {
"FREECAD_MODE": "xmlrpc"
}
}
}
}Проверка: Попросите Copilot выполнить безобидную задачу через сервер и раскройте вызов инструмента в чате. Одна запись в конфиге подключение не подтверждает.
Файл ~/.qwen/settings.json или .qwen/settings.json в проекте. Подробно о Qwen Code
{
"mcpServers": {
"freecad-addon-robust-mcp-server": {
"command": "freecad-mcp",
"args": [],
"env": {
"FREECAD_MODE": "xmlrpc"
}
}
}
}Проверка: Запустите qwen и введите /mcp: откроется окно управления серверами. Из терминала статус покажет qwen mcp list.
Файл ~/.gemini/settings.json или .gemini/settings.json в проекте. Подробно о Gemini CLI
{
"mcpServers": {
"freecad-addon-robust-mcp-server": {
"command": "freecad-mcp",
"args": [],
"env": {
"FREECAD_MODE": "xmlrpc"
}
}
}
}Проверка: gemini mcp list показывает каждый сервер, его настройки и статус Connected или Disconnected. В сессии /mcp выводит CONNECTED, CONNECTING или DISCONNECTED и список инструментов.
Файл opencode.json в папке проекта или ~/.config/opencode/opencode.json. Подробно о OpenCode
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"servers": {
"freecad-addon-robust-mcp-server": {
"type": "local",
"command": ["freecad-mcp"],
"environment": {
"FREECAD_MODE": "xmlrpc"
}
}
}
}
}Проверка: opencode mcp list показывает состояние каждого сервера, подключённый выглядит как ✓ context7 connected. Внутри OpenCode то же видно в /mcps.
Настройки → Разработчик → Изменить конфиг: файл claude_desktop_config.json. После правки перезапустите приложение. Подробно о Claude Desktop
{
"mcpServers": {
"freecad-addon-robust-mcp-server": {
"command": "freecad-mcp",
"args": [],
"env": {
"FREECAD_MODE": "xmlrpc"
}
}
}
}Проверка: Нажмите «Add files, connectors, and more /» в левом нижнем углу поля ввода, наведите на Connectors и откройте Manage connectors. Выберите сервер, чтобы увидеть его инструменты.
Вкладка Program → Install → Edit mcp.json. Подробно о LM Studio
{
"mcpServers": {
"freecad-addon-robust-mcp-server": {
"command": "freecad-mcp",
"args": [],
"env": {
"FREECAD_MODE": "xmlrpc"
}
}
}
}Проверка: Попросите модель в чате выполнить задачу через инструмент сервера. Через API сервер из mcp.json вызывают по id в integrations, например mcp/playwright.
Инструменты сервера
create_documentсоздаёт документopen_documentоткрывает файл .FCStdsave_documentсохраняет документcreate_boxсоздаёт параллелепипедcreate_cylinderсоздаёт цилиндрboolean_operationобъединяет, вычитает, пересекаетset_placementзадаёт положение и поворотcreate_partdesign_bodyсоздаёт тело PartDesigncreate_sketchсоздаёт эскизadd_sketch_rectangleдобавляет прямоугольник в эскизpad_sketchвыдавливает эскизpocket_sketchвырезает карман по эскизуcreate_holeсоздаёт отверстие с резьбойfillet_edgesскругляет рёбраpolar_patternразмножает элемент по кругуget_screenshotснимает 3D-видexport_stepэкспортирует в STEPexport_stlэкспортирует в STLcreate_macro_from_templateсоздаёт макрос по шаблонуundoотменяет последнее действиеЧто попросить агента
Для каких задач
Ограничения
RPC-сервер аддона neka-nat без токена принимает вызовы от любого, кто достучится до порта, и execute_code выполняет любой Python с вашими правами; доступ с другого компьютера включайте с токеном или через SSH-туннель
У neka-nat операции в окне FreeCAD идут по одной, execute_code по умолчанию ждёт 90 секунд, а начатую задачу отменить нельзя
У Robust MCP Server снимки и вид недоступны без окна FreeCAD, режим embedded работает только на Linux, а контейнер Docker на Linux до FreeCAD не достучится
Аддон и сервер в обоих проектах обновляются по отдельности, и версии нужно держать совместимыми
Если не работает
После копирования аддона нет верстака MCP Addon
Ответ инструмента начинается с предупреждения о версии
execute_code пишет про таймаут, а работа продолжается
Все операции отвечают GUI_DISPATCH_STUCK
Robust MCP Server в Docker на Linux не видит FreeCAD
Какую реализацию выбрать
| Реализация | Кто делает | Звёзды | Запуск | Ключ | Инструменты | Обновлён |
|---|---|---|---|---|---|---|
| FreeCAD MCP | neka-nat | 3,3 тыс. | локально | не нужен | 17 | 12 ноября 2026 |
| FreeCAD Robust MCP Server | spkane | 269 | локально | не нужен | 20 | 9 ноября 2026 |