
Есть рутина, которую вы мечтаете автоматизировать? Или идеи, чего не хватает в повседневной работе? Напишите в комментариях или мне на почту (она в конце поста). Буду рад любым предложениям: что добавить, что упростить, а что вообще переделать.
Нейросети научились писать код, но до недавнего времени оставались беспомощными в реальном мире софта. Протокол MCP (Model Context Protocol) убрал эту стену, дав моделям прямой доступ к инструментам. И если для веба коннекторы появились сразу, то инженерный софт незаслуженно забыли. Я решил это исправить и дал нейросети прямой доступ к API КОМПАС-3D.
Что умеет сервер
Сервер работает как мост между MCP-клиентом (Codex, Cursor, любой другой хост, поддерживающий протокол) и запущенным экземпляром КОМПАС-3D. Обмен идёт через стандартный ввод-вывод, сервер переводит их в COM-вызовы и возвращает результат.
Набор инструментов охватывает основные задачи 2D-черчения. Создание геометрии: отрезки, полилинии, бесконечные прямые, окружности, дуги (по радиусу и по трём точкам), точки, прямоугольники, правильные многоугольники, эллипсы и их дуги. Редактирование: фаски, скругления, усечение кривых, перемещение, трансформация (масштаб, поворот), симметрия, удаление, изменение параметров существующих объектов. Анализ и измерения: расстояние, длина кривой, угол, площадь, поиск пересечений. Работа с документом: создание и открытие файлов, сохранение, переключение видов и слоёв, скриншот рабочей области, экспорт геометрии в JSON.
Отдельный инструмент execute_python_script позволяет выполнять произвольный Python-код прямо в контексте КОМПАС. В глобальную область видимости скрипта инжектируются готовые объекты: kompas (корневой KompasObject API5), app7 (IApplication API7), doc2d (активный документ), tools (доступ ко всем зарегистрированным инструментам как к обычным функциям). Есть высокоуровневые обёртки: ln(x1, y1, x2, y2) для быстрого рисования линии, circle(x, y, r) для окружности, rect(x, y, w, h) для прямоугольника. Можно писать сложные скрипты, не выходя из диалога с моделью.


Подключение к КОМПАС
Если КОМПАС не запущен, COM-механизм попытается запустить его. Если не получится, вернёт ошибку. При выполнении команд сервер проверяет наличие активного 2D-документа.
Конфигурация
Пример конфигурации для Claude Code, Roo Code в файле mcp.json:
{
"mcpServers": {
"kompas-3d": {
"command": "python",
"args": ["C:/Path/To/MCP-KOMPAS-3D/main.py"],
"env": {
"SERVER__LOG_LEVEL": "DEBUG"
}
}
}
}
Пример конфигурации для Codex в файле config.toml:
[mcp_servers.kompas-3d]
command = "python"
args = ["C:/Path/To/MCP-KOMPAS-3D/main.py"]
# указывайте ваш путь в args
Как это работает в реальной сессии
Пользователь пишет AI-ассистенту: "Нарисуй прямоугольник 100x50 со скруглёнными углами радиусом 5". Модель разбивает задачу на шаги: создать прямоугольник, затем применить скругление к каждому углу. Для каждого шага она вызывает соответствующий инструмент через MCP.
Запрос create_rectangle с параметрами x1=0, y1=0, x2=100, y2=50 попадает на сервер. Обработчик находит зарегистрированный RectangleTool, формирует замыкание, передаёт его в ComWorker. Рабочий поток вызывает ksRectangle через API5. Результат (reference созданного объекта) возвращается модели. Она использует его для следующего вызова create_fillet с радиусом 5.
Если что-то идёт не так (документ не открыт, КОМПАС завис, COM-соединение оборвалось), сервер возвращает структурированную ошибку с описанием проблемы и рекомендациями. Модель может попробовать переподключиться через reconnect() или создать новый документ.

Ограничения и открытые вопросы
Сервер работает только с 2D-документами: чертежами и фрагментами.
Некоторые операции через API ведут себя нестабильно. Создание видов и слоёв через API7 иногда отказывается работать, приходится использовать API5.
Производительность зависит от сложности документа. На чертеже с тысячами объектов итерация по геометрии занимает секунды. Для критичных сценариев есть batch_execute, который группирует несколько операций в один вызов.
Если вас заинтересовал мой проект и вам действительно это может помочь, то смело предлагайте свои идеи для улучшения его функционала. Пишите чтобы вы добавили, а я в свою очередь, увидев ваш актив, выкачу рабочую тестовую версию программы с вашими идеями по возможности реализации. Что действительно является важным для вас оставьте комментарий под постом.
Также связаться со мной можно по почте: grandfatherofny1984@gmail.com
Комментарии (17)

merkel
21.01.2026 07:50В далеком 2005 году у нас был типовик по компьютерной графике: создать библиотеку для API компас 2D по отрисовке типовых крепежных элементов: кому-то гайки, кому-то гвозди доставались. Потом один студент собрал лучшие типовики и защитил диплом. Годы идут и типовые элементы уже не естественный а противоестественный интеллект рисует, но Api 2D - неизменно. Щютка. Не глумления ради, а чисто из любопытства - 2D - проектирование еще кому-то нужно в машиностроении? Готовые модельки в чертежы перести - не в счет.

Qwest_Prozto
21.01.2026 07:502D проще и строго задокументировано, но таки оно устарело в тот момент, когда 3D сделать стало не сильно дольше, а 3D дает любое возможное 2D - обратное не всегда срабатывает.

Ramirez174
21.01.2026 07:50Далеко не всегда целесообразно строить модель, чтобы превратить её в чертеж. Особенно это касается простых деталей и типовых элементов
А ещё технологические модели строятся в середину поля допуска, после чего на чертеже надо восстанавливать исходные размеры. Так что 2д никогда не умрёт в проектировании

TokeIIIa
21.01.2026 07:50Добрый день, мне понравилась ваша идея и хотел бы протестировать MCP ваш в создании более сложных чертежей я студент 4 курса машиностроении знаком как никак с чертежами и хотел бы попробывать сделать чертежи спомощью ии для своей дипломной работы сам я разрабатываю приложение, но пока не скидывал и не делился своим репозиторием на гитхабе или еще где то, там я хочу сделать чтобы агенты и ассистентов вместе, ии llm были настроены как раз на такие проекты и работали полностью на компютере локально идея будет еще такова чтобы делать не просто одного агента в этой рабочей части как просто начертить а разных агентов подключить которые будут выполнять 1 задачу но каждый агент будет по своей специальности тоесть, 1 как главный будет принимать запрос от пользователя шифровать разделять задачи на те которые агенты выполняют а они в свою очередь выполняют например один ищет всю информацию о различных гостах, спецификачиях, литератур, справочников и таким образом так сказать будет, парсировать страницу с информацией и с файл или папке это будет все записываться для других агентов а другой напримкр будет проверять на соответствие с гостом и чертежом, другой чертить и так далее чтобы были агенты которые могли выполнять все эти задачи как люди которые траятят часы на разработку оформление чертежей и их соответствие с гостами и техноллгичнось и т.д. как и говорил ранее меня заинтересовал ваш проек я работал с автокадом и сейчас с ним работаю и с компасом. Моюно с автокадом попробфвать такое реализовать так как по мне автокад менне требователен в плане черчения и настроек чем компас. Буду ждать вашего репозитория на гит или npm.

MaximKiselev
21.01.2026 07:50Вообще этим должен разработчик компаса заниматься. И ком здесь на мой взгляд лишний. Плюс чтобы все нормально соответствовало гостам модели надо обучать на российских чертежах, а для этого надо иметь доступ к нашим заводам и университетам. На самом деле это будущее.... Но опять же этим кто то должен заниматься и явно не один человек, а на уровне правительства как свою время ручных чертежников гоняли заставляя всех осваивать компас или автокад. Те прям вырисовывается отдельное НИИ под эту задачу.
Перепадам кстати тоже работы поубавилось бы - суешь чертеж говоришь сделай анализ , а на выходе отчёт сразу с приблизительной оценкой для студента.
red_cell
21.01.2026 07:50Перепадам кстати тоже работы поубавилось бы - суешь чертеж говоришь сделай анализ , а на выходе отчёт сразу с приблизительной оценкой для студента.
так уже есть такое, Компас-Эксперт называется

MaximKiselev
21.01.2026 07:50да. сейчас много чего есть в принципе. симуляторы разные для станков с ЧПУ. автокад вроде тоже уже что-то делал с нейросетями. тут зависит как это работает (не видел - не знаю). но ощущение что может быть это просто линтер, который помечает наиболее частые ошибки. к него очень низкий порог детекта будет на специфических изделиях.

paunch73
21.01.2026 07:50Вот если бы ии помогало моделировать 3д в виаре, вот это была бы тема...

MaximKiselev
21.01.2026 07:50так уже есть. народ контекстные протоколы к блендеру привязывает. или не оно ?

KorSariel
21.01.2026 07:50Если нужно что-то в голове перемножить, использую обычные столбики. Ну не совсем, например, чтоб помножить на пять, проще умножить на десять и разделить на два. Ну и так далее.

Dava92
21.01.2026 07:50Думаю прикрутить мультикад модуль (доступ к разным кадам и API) что вроде бы не так сложно сделать, сразу расширит горизонты проекта

Alliot
21.01.2026 07:50утилита очень заманчивая. Хотелось бы взглянуть на исходник, могли бы скинуть ссылку на github репозиторий?

Entity2059
21.01.2026 07:50нужно очень много работать, чтобы инструмент стал реально полезным. пока что, больше пишешь запрос, чем рисуешь)) но очень интересно.
Dotarev
Это очень перспективное направление!
Возможно ли на данном этапе проанализировать существующий чертеж? Например, натренировать модель на распознавание болтовых соединений, или монтажных отверстий, или расчленить сборочный чертеж на детали? Или такие задачи пока из области фантастики?
lya_ocean Автор
Многие модели уже являются мультимодальными (такие как Gemini-3-pro или Claude 4.5 Opus), но их возможности ограничены. Я думаю, распознавать элементы они смогут, а вот разбить сборочный чертеж на детали получится только с серьезными ошибками.
dibu28
Возможно тут надо создать MCP тулы, которые будут вызывать простые действия для разбора и уже их сможет вызывать ллм и получать от них информацию?