1C EDT MCP: плагин EDT-MCP для Claude Code, Codex и Cursor

DitriXNew/EDT-MCP· Проверено 12.11.2026· 333на GitHub

Плагин для 1C:EDT, который открывает агенту рабочую область: код BSL, метаданные, ошибки проверки, отладчик, тесты YAXUnit и git. 108 инструментов, сервер работает внутри EDT на порту 8765.

Плагин внутри EDT: HTTP на порту 8765 и встроенный stdio, набор инструментов настраивается группами и пресетами; лицензия AGPL-3.0.

Как подключить

Что сделать до подключения

1

1C:EDT 2026.2.2

2

Плагин EDT MCP Server Feature: в EDT Help → Install New Software, адрес https://ditrixnew.github.io/EDT-MCP/, затем перезапуск EDT

3

Для Windows есть установка одной командой через p2 director при закрытой EDT

4
Auth token

необязателен на локальном адресе: задайте в Window → Preferences → MCP Server и передайте заголовок Authorization: Bearer <токен>; для удалённого доступа токен обязателен

Конфиг для вашего клиента

Команда в терминале, в папке проекта. Флаг --scope user подключит сервер для всех проектов. Подробно о Claude Code

claude mcp add --transport http 1c_edt http://localhost:8765/mcp

Проверка: claude mcp list показывает статус рядом с каждым сервером: ✔ Connected, ! Needs authentication или ✘ Failed to connect. Внутри сессии то же видно по команде /mcp.

Инструменты сервера

list_projectsперечисляет проекты рабочей области
get_metadata_objectsперечисляет объекты метаданных
read_module_sourceчитает текст модуля
write_module_sourceзаписывает код в модуль
search_in_codeищет по коду BSL
go_to_definitionпереходит к определению
find_referencesищет места использования
validate_queryпроверяет текст запроса
get_project_errorsчитает ошибки проверки
get_problem_summaryсчитает ошибки по важности
create_metadataсоздаёт объект метаданных
rename_metadata_objectпереименовывает объект с правкой ссылок
update_databaseобновляет конфигурацию базы
launchзапускает приложение в отладке
set_breakpointставит точку останова
wait_for_breakждёт остановки в отладчике
get_variablesпоказывает переменные в останове
run_yaxunit_testsзапускает тесты YAXUnit
get_form_screenshotделает снимок формы
compare_configurationsсравнивает конфигурацию с ревизиями git

Показано 20 из 108.

Что попросить агента

«Покажи ошибки проекта <имя> и исправь их в модуле <модуль>»Агент вызовет get_project_errors, прочитает модуль через read_module_source и запишет правку через write_module_source
«Переименуй реквизит <старое имя> справочника <имя> в <новое имя>»Агент вызовет rename_metadata_object: EDT переименует объект и перепишет найденные ссылки
«Поставь точку останова в <модуль> на строке <N>, запусти отладку и покажи переменные»Агент вызовет set_breakpoint, launch, wait_for_break и get_variables
«Запусти тесты YAXUnit для проекта <имя>»Агент вызовет run_yaxunit_tests и разберёт результаты
«Где вызывается процедура <ИмяПроцедуры>?»Агент поищет через search_in_code и find_references, определение откроет через go_to_definition

Для каких задач

Прочитать и поправить модуль BSL, затем проверить ошибки проекта
Создать или переименовать объект метаданных с правкой ссылок в коде
Поставить точку останова, запустить приложение в отладке и посмотреть переменные
Прогнать тесты YAXUnit и замерить производительность строк кода
Проверить текст запроса в контексте проекта до запуска
Сравнить конфигурацию с двумя ревизиями git по трёхстороннему сравнению

Ограничения

!

Совместимость гарантирована только с последней версией EDT, сейчас 2026.2.2; на более старых плагин не проверяют

!

Любой подключённый клиент вызывает любой инструмент, включая evaluate_expression и удаление метаданных; в окне EDT разрушительные операции по умолчанию подтверждаются диалогом, а при запуске stdio с -headless подтверждений нет совсем

!

get_form_screenshot выключен по умолчанию; на Windows ему нужен флаг -DnativeFormBufferedLayoutRender=true в 1cedt.ini, и с ним конструктор форм EDT всю сессию показывает серый прямоугольник

!

Имена инструментов, описания и ошибки — на английском даже при русском интерфейсе EDT

Если не работает

Снимок формы пустой или серый
Проверьте журнал EDT на AccessDeniedException для dtgraphics-form.bin. Частая причина — -Djava.io.tmpdir без завершающего слэша: допишите его и полностью перезапустите EDT.
Cursor не показывает результаты инструментов
Включите «Plain text mode (Cursor compatibility)» в Window → Preferences → MCP Server.
update_database или launch падает на окне входа в базу
Сервер сам закрывает окно авторизации во время вызова. Сохраните логин и пароль один раз через set_infobase_credentials.
Разрушительная операция отклонена через 120 секунд
Никто не ответил на диалог подтверждения в EDT. Ответьте на диалог при повторном вызове или разрешите инструмент в настройках MCP Server.
С включённым удалённым доступом сервер не запускается
Удалённый доступ требует токен: задайте Auth token в настройках, без него сервер не слушает внешние адреса.

Частые вопросы

Как включить git и снимки форм?
Инструменты git, ask_workmate и get_form_screenshot выключены по умолчанию. Включите их в Window → Preferences → MCP Server → Tools; там же группы инструментов и пресеты Analysis Only, Code Review и Development.
Как сократить список инструментов в контексте агента?
Включите Progressive disclosure в настройках или переменную EDT_MCP_PROGRESSIVE_DISCLOSURE=true. Тогда агент видит только набор core и открывает остальные вызовами list_toolsets и enable_toolset.
Можно ли подключить EDT-MCP по stdio?
Да. В Window → Preferences → MCP Server → General снимите «Enable MCP over HTTP» и нажмите «Copy stdio .mcp.json», затем вставьте запись в конфиг клиента. Флаг -headless запускает EDT без окна, но разрешает агенту любые операции без подтверждения.
Как работать с несколькими EDT одновременно?
Запустите edt-mcp-proxy из релиза: он открывает один адрес на порту 8764 и направляет вызов в нужную EDT по projectName.
Как разрешить разрушительные операции без диалога?
В настройках выберите уровень Allow all или «Ask, except allowed tools» с галочками у нужных инструментов. Для автоматических прогонов есть переменная EDT_MCP_DESTRUCTIVE_CONSENT=allow; диалог без ответа отклоняет операцию через 120 секунд.
Как установить EDT MCP в 1C:EDT?
В EDT откройте Help → Install New Software, добавьте адрес https://ditrixnew.github.io/EDT-MCP/, выберите EDT MCP Server Feature и перезапустите EDT. Дальше EDT сама следит за обновлениями плагина.
Как подключить 1C EDT MCP к Claude Code?
Добавьте в .claude.json (в Windows %USERPROFILE%\.claude.json) сервер с type http и адресом http://localhost:8765/mcp. Готовая строка есть во вкладке Claude Code блока «Как подключить».
Как подключить EDT MCP к Cursor?
Создайте .cursor/mcp.json с адресом http://localhost:8765/mcp и включите в EDT «Plain text mode (Cursor compatibility)»: Cursor не принимает встроенные ресурсы MCP.
Работает ли сервер из России?
Плагин работает внутри вашей EDT и по умолчанию слушает только 127.0.0.1, зарубежные аккаунты не нужны.

Похожие серверы