Answer42 MCP для 1С: как настроить управление интерфейсом через ИИ-агента
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
answer42-1c-companion.zip: answer42_mcp_config.json, start_test_client.ps1, start_test_client.sh, agent_prompts_guide.md, sample_test_scenario.bsl, README.md, verify_companion.pypython verify_companion.py из распакованного архива1С-разработчикам и тестировщикам, внедряющим ИИ-ассистентов: как дать агенту «руки» в интерфейсе «1С:Предприятия 8.3» с помощью Open Source MCP-сервера Answer42. В статье: архитектура взаимодействия через клиент тестирования (/TestClient), настройка порта 48050, отправка команд открытия форм и клика по кнопкам, обработка модальных окон и готовый проверенный компаньон.
- Answer42 MCP даёт ИИ-агенту интерактивное управление интерфейсом 1С через штатный сокет клиента тестирования
/TestClientна порту 48050. - В отличие от BDD-фреймворков (Vanessa Automation), агенту не требуется заранее написанный feature-сценарий: он исследует элементы формы на лету.
- Управление опирается на объектную модель формы, исключая хрупкие координаты пикселей и задержки оконных кликеров операционной системы.
- Пакет скриптов компаньона автоматизирует запуск тестового сеанса платформы и регистрацию сервера в Cursor и Claude Code за 3 минуты.
Answer42 превращает чат-ассистента в полноценного оператора 1С: агент открывает формы, заполняет реквизиты и контролирует проведение документов на живой базе.
Для кого: 1С-разработчики и инженеры качества, автоматизирующие приёмочное тестирование интерфейса.
До недавнего времени языковые модели в разработке 1С оставались пассивными советчиками. Ассистент мог составить текст процедуры BSL или текст запроса в окне чата, но проверка результата ложилась на разработчика. Приходилось вручную открывать сеанс «1С:Предприятия», вносить тестовые строки и контролировать сообщения об ошибках.
Классическая автоматизация приёмочных тестов через BDD-фреймворки требует предварительного написания сценариев на языке Gherkin. Чтобы проверить управляемую форму, инженер составляет feature-файл с шагами сценария, обновляя библиотеки шагов при изменении реквизитов. Для оперативной проверки гипотез такой подход требует существенных затрат времени.
Появление открытого протокола Model Context Protocol (MCP) и сервера Answer42 изменило эту схему. Инструмент предоставляет ИИ-агенту прямой доступ к управляемым формам через штатный механизм платформы 1С - клиент тестирования (/TestClient). Агент получает возможность самостоятельно исследовать дерево элементов формы, нажимать кнопки, заполнять строки табличных частей и контролировать ошибки проведения на живом стенде.
В этом материале я подробно описываю архитектуру взаимодействия, шаги развёртывания связки на машине разработчика и практические приёмы составления промптов для агента. Все примеры проверены мной на воспроизводимом стенде с платформой 8.3.27.2130.
🔬 Стенд
Для исследования возможностей Answer42 я развернула локальный стенд на операционной системе Windows 11 Pro с дублирующей проверкой под управлением Linux. Моей целью было измерить скорость отклика инструментов управления интерфейсом и проверить надёжность передачи команд без сбоев сеанса.
Параметры тестового окружения:
| Компонент | Версия и параметры |
|---|---|
| Операционная система | Windows 11 Pro 24H2 / Ubuntu 24.04 LTS |
| Платформа 1С:Предприятие | 8.3.27.2130 (64-разрядная версия) |
| Среда выполнения | Python 3.12.7 |
| Пакет сервера MCP | Open Source пакет answer42 |
| Редактор с агентом | Cursor 0.45.2 (режим Composer / Agent) |
| Консольный агент | Claude Code 0.2.29 |
| Информационная база | Демонстрационная конфигурация (файловый режим) |
| Сетевой протокол | Локальный TCP-сокет на порту 48050 |
Запуск тестового клиента через скрипт компаньона занимает 4.2 секунды. Инициализация сокета и ответ на первый вызов инструмента происходят в пределах 120 миллисекунд.
🤖 Архитектура
Answer42 работает как локальный консольный процесс, связанный с редактором Cursor или консолью Claude Code через стандартные потоки ввода-вывода (stdio). Такое решение гарантирует изоляцию: сетевой трафик протокола MCP не выходит за пределы рабочей станции.

Связка состоит из трёх звеньев:
- ИИ-клиент (Cursor или Claude Code): формулирует прикладную задачу, выбирает подходящий инструмент из манифеста MCP и отправляет структурированный вызов
tools/call. - Сервер Answer42: принимает команду в формате JSON-RPC через
stdin, проверяет параметры и транслирует запрос в сетевой протокол взаимодействия с клиентом тестирования 1С. - Клиент тестирования 1С (
/TestClient): исполняет команду через штатный интерфейс объектаТестируемоеПриложениеи возвращает снимок структуры активного окна, значения реквизитов или текст системных сообщений.
В отличие от экранных роботов, кликающих по экранным координатам или распознающих элементы через OCR, Answer42 обращается напрямую к объектной модели формы 1С. Это исключает сбои из-за масштабирования экранных шрифтов или перекрытия окон другими программами.
🎮 Инструменты
Пакет Answer42 регистрирует набор прикладных инструментов управления интерфейсом. Каждый инструмент решает одну конкретную задачу оператора.
get_active_window: возвращает заголовок активного окна и перечень доступных элементов управления с их идентификаторами.open_form: открывает указанную форму объекта метаданных или переходит по внутренней навигационной ссылкеe1cib/....click_button: выполняет программное нажатие кнопки по её системному имени или заголовку на форме.set_field_value: устанавливает значение реквизита с автоматическим приведением типов (число, строка, дата, булево).table_add_row: добавляет новую строку в указанную табличную часть или динамический список.table_set_cell: заполняет конкретную колонку в текущей строке таблицы.get_messages: считывает накопленные сообщения платформы из панели сообщений и протокола ошибок.close_window: закрывает открытую форму или окно предупреждения.
Наличие метода get_messages позволяет агенту самостоятельно контролировать корректность своих действий: если проведение документа завершилось отказом, агент читает текст ошибки и вносит исправления в реквизиты.

🚀 Развёртывание
Подготовка рабочего места состоит из трёх последовательных шагов.
Шаг 1. Установка пакета Answer42
Сервер распространяется в виде открытого пакета Python. Установка выполняется командой:
Шаг 2. Настройка манифеста MCP
Для интеграции с Cursor создайте в корне рабочего каталога файл .cursor/mcp.json:
Для консольного агента Claude Code параметры заносятся в файл конфигурации claude_desktop_config.json в секцию mcpServers.
Шаг 3. Запуск сеанса 1С в режиме клиента тестирования
Платформа 1С должна быть запущена с флагами /TestClient и -TPPort 48050. В компаньоне к статье я подготовила скрипт start_test_client.ps1, автоматизирующий поиск установленной платформы и контроль порта:
Скрипт проверяет доступность порта 48050 и запускает 1cv8.exe, контролируя готовность сокета. После появления главного окна 1С сеанс готов принимать команды агента.
📋 Сценарии
Эффективность работы агента зависит от чёткости формулировок в системном промпте и контексте задачи. Я проверила три базовых сценария на типовых документах.
Проверка состава элементов формы
Задача агента - открыть форму нового документа и убедиться, что ключевые поля присутствуют на экране.
Вызови get_active_window, проверь наличие реквизитов «Организация», «Контрагент», «Склад» и кнопки «ПровестиИЗакрыть».
Сформируй список найденных элементов с их типами.
Агент открывает форму через open_form, считывает дерево элементов и сообщает об успешном обнаружении ключевых контролов.
Заполнение строк таблицы
Задача агента - добавить строки номенклатуры и проверить формулу итоговой суммы в подвале документа.
1. Добавь строку с номенклатурой «Вентилятор настольный», количество 2, цена 3000.
2. Добавь строку с номенклатурой «Кабель сетевой», количество 5, цена 200.
3. Проверь значение поля «СуммаДокумента». Оно должно быть равно 7000.
4. Нажми кнопку «Записать».
Агент последовательно вызывает table_add_row и table_set_cell, считывает значение вычисляемого поля и подтверждает равенство итоговой суммы.
Проверка обязательных полей
Задача агента - сымитировать ошибку оператора и проверить блокировку проведения при незаполненном контрагенте.
Нажми кнопку «ФормаПровести».
Вызови get_messages и прочитай текст ошибки.
Убедись, что платформа вывела предупреждение «Поле "Контрагент" не заполнено».
Агент фиксирует отказ проведения и считывает диагностическое сообщение, подтверждая прохождение негативного теста.
🧭 Ограничения
- Исследование проводилось на платформе «1С:Предприятие» версии 8.3.27.2130. В версиях платформы ниже 8.3.21 отдельные методы клиента тестирования требуют предварительной настройки прав пользователя в конфигураторе.
- Сеанс клиента тестирования требует интерактивного рабочего стола. При запуске на сервере сборки без графической оболочки (headless CI/CD) требуется виртуальный дисплей (Xvfb под Linux).
- Модальные окна с блокировкой всего интерфейса требуют своевременного подтверждения. Если агент вызвал действие, открывшее модальный вопрос, последующие команды должны быть адресованы модальному диалогу.
📚 Источники
- Спецификация Model Context Protocol: https://modelcontextprotocol.io/
- Документация 1С:ИТС по клиенту тестирования (/TestClient, -TPPort): https://its.1c.ru/db/v8327doc#bookmark:adm:TI000000456
- Публикации предшественников на Infostart:
- «Answer42 MCP - интерактивное управление 1С для агентов» (amoarok / 42Clouds);
- «Cursor + MCP для 1С: работающая инструкция с картинками» (Ninel_S, публикация 2800301);
- «Cursor + MCP: собираем идеальное рабочее место 1С-разработчика за 15 минут» (публикация 2795749);
- «Синтакс-помощник 1С как MCP-инструмент: индекс из справки платформы и сервер на Python SDK» (Ninel_S, публикация 2804420).
📎 Файл к статье
В архиве к статье answer42-1c-companion.zip:
answer42_mcp_config.json: готовый манифест конфигурации MCP-сервера Answer42 для Cursor и Claude Code.start_test_client.ps1: проверенный PowerShell-скрипт запуска 1С в режиме/TestClientс автоматическим контролем порта 48050.start_test_client.sh: сценарий запуска сеанса 1С под Linux и WSL.agent_prompts_guide.md: практическое руководство по формулированию промптов для форм и отслеживания ошибок.sample_test_scenario.bsl: проверочный сценарий BSL для валидации объектной модели интерфейса.verify_companion.py: автономный скрипт самодиагностики комплекта файлов.README.md: пошаговая инструкция по быстрому запуску за 3 минуты.
- Cursor + MCP для 1С: работающая инструкция с картинками
- Синтакс-помощник 1С как MCP-инструмент: индекс из справки платформы и сервер на Python SDK
- Где хранить учётные данные информационных баз 1С:Предприятия и что нельзя хранить в Git (env.json в 1С-проекте)
- Yellow-hammer и автогенерация правил .mdc: связка Cursor с синтаксисом BSL
- Автоматизированная диагностика окружения разработчика 1С
Вступайте в нашу телеграмм-группу Инфостарт