eda-agent MCP
MCP-сервер дает агенту править открытый проект в Altium Designer, KiCad или EasyEDA Pro: схемы, платы, библиотеки, проверки
- 296 ★ репозитория
- Последний коммит
- Apache-2.0
Широкий доступ
Почему такой уровень
- Агент меняет открытые схемы, платы и библиотеки и может сохранить документы на диск
- Инструменты группы `app_` имитируют настоящие клавиши и мышь, забирают фокус и действуют в окне Altium
- Автономный режим сам ведет проект по стадиям, поэтому изменений может быть много
Установка
- Работает в
Ручная установка
git clone https://github.com/salitronic/eda-agent && cd eda-agent && python -m pip install -e .Лучше вызывать python -m pip, а не голый pip: пакет попадет в тот же Python, которым вы будете запускать сервер.
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- Агент меняет открытые схемы, платы и библиотеки и может сохранить документы на диск
- Инструменты группы `app_` имитируют настоящие клавиши и мышь, забирают фокус и действуют в окне Altium
- Автономный режим сам ведет проект по стадиям, поэтому изменений может быть много
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
eda-agent — MCP-сервер на Python, через который Claude Code или другой MCP-клиент работает с открытой сессией Altium Designer. Сервер связан с редактором скриптом на DelphiScript: тот опрашивает обменный файл, поэтому агент читает текущий проект, отвечает на вопросы о нем и правит схему или плату на ваших глазах. По умолчанию доступно около 500 инструментов для схем, плат, библиотек, проекта и проектных агентов. KiCad 9 и EasyEDA Pro подключаются как дополнительные бэкенды. Для проверки проекта есть `design_review_snapshot`: за один вызов он собирает несколько чтений (компоненты, цепи, правила, сообщения, BOM). `design_lint_report` прогоняет 31 проверку: видимость параметров, ориентацию power-портов, незаведенные порты, дубли обозначений и другое. Отдельно сверяются цепи схемы и платы после ECO. Для типовых узлов есть готовые блоки: развязка, подтяжка, делитель, кварц, светодиод, фильтры и ключи на MOSFET. SPICE-модель сервер не сочиняет, он просит файл производителя. Скилл `autodesign` в папке `skills/autodesign` ведет агента от требования до платы через цикл `design_next_action`. Порядок 13 стадий, проверки и журнал хранит сервер, агент выполняет предложенные шаги. Скилл работает с Altium и EasyEDA Pro, бэкенд KiCad этот режим не регистрирует. Локальная панель на `http://127.0.0.1:8766` показывает покрытие даташитами и очередь проблем проекта.
Для кого. Для инженеров-схемотехников и разработчиков плат на Altium Designer под Windows или KiCad 9, которые хотят поручить агенту проверки, массовые правки, BOM и библиотеки.
Подходит, если
- Перед выпуском проекта нужна проверка: компоненты без MPN и даташита, дубли обозначений, незаведенные цепи
- Надо задать вопрос по открытому проекту, например, к каким цепям подключен резистор
- Нужен черновик схемы по требованию, скажем, понижающий преобразователь с 12 В на 3,3 В на выбранной микросхеме, с чтением даташита
- Нужны массовые правки: параметры компонентов, имена цепей, размещение проводников и портов пакетом
- После ECO надо сверить цепи схемы и платы и найти расхождения
Не подходит, если
- Проект не сохранен и резервной копии нет: автор называет сервер экспериментальным, часть инструментов может обрушить скриптовый движок Altium
- Вы работаете с Altium не под Windows: бэкенд Altium работает только там
- Нужен пакетный запуск без открытого редактора: сервер держит живое соединение с открытой программой
- Рядом идет другая работа за компьютером: инструменты интерфейса забирают фокус и могут прервать набор текста
Пример запроса к агенту
Проверь открытый проект в Altium: найди компоненты без MPN и даташита и цепи без подключений, правки не вносиMCP
- Транспорт
- stdio
- Авторизация
- не нужна
Переменные окружения
EDA_AGENT_BACKEND- Выбор бэкенда при старте, по умолчанию altium
EDA_AGENT_UI_AUTOMATION- Значение 0 отклоняет любые синтезированные клавиши и клики мыши
Ограничения
Автор называет проект экспериментальным: инструменты проверены не все, часть может обрушить движок DelphiScript в Altium, поэтому делайте копию проекта и используйте контрольную точку `app_checkpoint`. Бэкенд Altium работает только в Windows и требует разовой регистрации скрипта `Altium_API.PrjScr` как Global Project и запуска StartMCPServer из `Dispatcher.pas`. Для KiCad нужны версия 9 или новее с включенным сервером API и установка `python -m pip install -e .[kicad]`. Нужен Python 3.11 или новее. Инструменты группы `app_` отправляют настоящие нажатия клавиш и мыши. Чтение даташитов идет по сети.
Как отключить. Уберите сервер из конфига клиента, для Claude Code это `claude mcp remove altium`, и остановите цикл в Altium кнопкой Detach: она ничего не сохраняет. Имитацию клавиш и мыши отключает переменная `EDA_AGENT_UI_AUTOMATION=0`.
Частые вопросы
Как подключить eda-agent к Claude Code?
Установите пакет командой `python -m pip install -e .` из клонированного репозитория, затем зарегистрируйте сервер: `claude mcp add -s user altium -- python -m eda_agent`. Проверить подключение можно командой /mcp: в списке должен быть сервер altium.
Нужно ли что-то ставить внутри Altium?
Да. Команда `eda-agent install-scripts` кладет проект скриптов `Altium_API.PrjScr`, его регистрируют в настройках скриптовой системы как Global Project. После этого цикл опроса запускается из File, Run Script, `Dispatcher.pas`, StartMCPServer.
Что делает скилл autodesign?
Ведет агента по циклу `design_next_action` от требования до платы. Сервер подсказывает стадию, ее критерии выхода и записывает журнал, а при трех неудачах на стадии вопрос уходит человеку. Перед стадиями с крупными правками, например, перед трассировкой, советуют ставить контрольную точку.
Поддерживается ли KiCad?
Да, как дополнительный бэкенд, начиная с KiCad 9 с включенным сервером API. Нужна установка `pip install -e .[kicad]`. Режим autodesign на бэкенде KiCad не регистрируется.
Можно ли запретить агенту нажимать меню и кнопки?
Да. Переменная `EDA_AGENT_UI_AUTOMATION=0` отклоняет любые синтезированные события. Чтение окон диалогов остается, так что сервер замечает, что Altium ждет ответа.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыСкилл, CLI и MCP-сервер для EasyEDA Pro: агент читает даташиты, рисует схемы и платы и проверяет их через DRC
MCP-сервер для проектирования печатных плат в KiCAD: агент размещает компоненты, разводит связи, проверяет DRC и готовит файлы на производство
CLI kct и Python-библиотека для агентов: разбор и правка схем и плат KiCad с выводом в JSON, проверки DRC и ERC без запущенного KiCad
MCP-сервер, который дает агенту записывать корректные библиотеки Altium Designer: посадочные места .PcbLib и символы .SchLib
MCP сервер для проектирования плат в KiCAD 10: схема, разводка, проверки и подготовка к производству через агента
CLI-агент для печатных плат: по описанию правит схемы и платы KiCad, синхронизирует документы и проверяет себя через ERC и DRC
Сравнение с похожими
Записи с тем же главным запросом: чем они отличаются.
| Запись | Официальный | Авторизация | Звезды репозитория | Главное отличие |
|---|---|---|---|---|
| eda-agent (эта запись) | нет | не нужна | 296 | |
| easyeda-agent | нет | 881 | работает с EasyEDA Pro: скилл, CLI и MCP-сервер | |
| KiCAD MCP Server | нет | не нужна | 3 027 | проектирует платы только в KiCad |
| altium-designer-mcp | нет | не нужна | 86 | пишет библиотеки Altium, но не правит открытый проект |
Коротко о README
README открывается предупреждением об экспериментальном статусе и роликом, где агент рисует понижающий преобразователь по одной фразе. Дальше идут схема работы через файловый обмен, список возможностей, требования, установка, подключение клиентов и разделы об ограничениях, бэкендах и безопасности имитации ввода. Подробности вынесены в папку docs: справочник инструментов, автономное проектирование, выбор бэкенда.