FreeCAD MCP
Этот репозиторий представляет собой FreeCAD MCP, позволяющий управлять FreeCAD из Claude Desktop.
Демо
Спроектировать фланец

Спроектируйте игрушечную машинку

Проектирование детали по 2D-чертежу
Ввод 2D-чертежа

Демо

Это история разговора. https://claude.ai/share/7b48fd60-68ba-46fb-bb21-2fbb17399b48
Related MCP server: FreeCAD MCP
Установить дополнение
Каталог дополнений FreeCAD:
Windows:
%APPDATA%\FreeCAD\Mod\Mac:
~/Library/Application Support/FreeCAD/Mod/Линукс:
Ubuntu:
~/.FreeCAD/Mod/или~/snap/freecad/common/Mod/(если вы устанавливаете FreeCAD из snap)Debian:
~/.local/share/FreeCAD/Mod
Пожалуйста, поместите каталог addon/FreeCADMCP в каталог дополнений.
git clone https://github.com/neka-nat/freecad-mcp.git
cd freecad-mcp
cp -r addon/FreeCADMCP ~/.FreeCAD/Mod/При установке дополнения необходимо перезапустить FreeCAD. Вы можете выбрать "MCP Addon" из списка Workbench и использовать его.

А запустить RPC-сервер можно с помощью команды «Запустить RPC-сервер» на панели инструментов «FreeCAD MCP».

Настройка 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"
]
}
}
}Инструменты
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: Получить список деталей в библиотеке деталей .
Участники
Сделано с помощью contrib.rocks .