MCP-сервер для 1С: как AI-агент работает с вашей базой 1С

health(): сервер показывает, какая база подключена, какие каналы доступа активны и в каком режиме он работаетПредставьте, что вы пишете в чат обычную фразу: «сколько у нас контрагентов, у которых не заполнен ИНН, и создай по трём из них карточки-заглушки». И это делает не программист 1С через консоль запросов, а AI-агент — сам, за секунды, прямо в вашей рабочей базе. Ровно для этого мы собрали MCP-сервер для 1С. Ниже я без маркетингового тумана расскажу, зачем вообще AI доступ к 1С, что такое MCP простыми словами, что наш сервер реально умеет — и покажу это на настоящих, обезличенных кадрах боевой обкатки на живой базе Бухгалтерии с восемью тысячами контрагентов.
Зачем AI-агенту доступ к вашей 1С
1С у большинства наших клиентов — это сердце бизнеса: там контрагенты, договоры, реализации, остатки, взаиморасчёты, вся первичка. И вокруг этой базы каждый день крутится одна и та же ручная рутина. Кто-то заносит новых контрагентов и реквизиты счетов. Кто-то выгружает оборотку, чтобы ответить директору на вопрос «а сколько мы должны поставщику N». Кто-то сверяет платежи, кто-то по десятому разу открывает базу, чтобы «просто посмотреть остаток по складу». Всё это — работа, которую человек делает руками, медленно и с опечатками, и только в рабочее время.
Языковые модели уже отлично понимают человеческую формулировку задачи. Проблема была в одном: между умным агентом и вашей 1С не было моста. Агент мог рассуждать о данных, но не мог их взять и не мог ничего в базе изменить. MCP-сервер — это и есть тот мост. Он превращает 1С в инструмент, которым AI-агент пользуется так же уверенно, как программист пользуется консолью запросов: читает справочники и документы, выполняет произвольные запросы на языке 1С, проводит документы, строит отчёты. Разница с человеком — в скорости (секунды вместо минут), в режиме работы (круглосуточно) и в том, что агент не устаёт и не ошибается в арифметике.
Что такое MCP простыми словами
MCP расшифровывается как Model Context Protocol — открытый стандарт, по которому AI-агент подключается к внешним системам. Аналогия, которая всё объясняет: MCP для нейросетей — это как USB для техники. Раньше к каждому устройству был свой кабель и свой разъём; USB стал единым разъёмом для всего. Точно так же MCP — единый «разъём», через который агент (Claude, и не только) подключается к базам, сервисам и, в нашем случае, к 1С. Один раз научив агента говорить на языке MCP, вы можете подключать к нему что угодно.
MCP-сервер — это программа-переводчик, которая стоит между агентом и 1С. С одной стороны она принимает от агента понятные команды-инструменты: «выполни запрос», «создай объект», «проведи документ», «покажи остатки». С другой — переводит их в обращения к вашей публикации 1С по HTTP и отдаёт результат обратно в виде аккуратного JSON, который модель понимает. Агенту не нужно знать про OData, про GUID-ы и про особенности платформы — он просто вызывает инструмент и получает данные. Всю чёрную работу берёт на себя сервер.
Важно: мы не изобретали протокол и не писали агента. Мы написали именно сервер-переводчик под 1С — с максимальным набором инструментов и, что для нас принципиально, с безопасностью по умолчанию. По этому пути в мире 1С идут многие, но большинство открытых решений либо умеют только читать, либо требуют держать открытой живую сессию пользователя, либо включают доступ на запись без единой защиты. Мы собрали своё ядро на Python и заложили в него то, чего не хватало: работу через серверную публикацию без клиентской сессии, слоистую систему коннекторов и обязательный безопасный режим.
Что умеет сервер — набор инструментов из реальной обкатки
На боевом прогоне сервер опубликовал агенту 23 инструмента. Не буду перечислять все — покажу главные группы, каждую из которых мы проверили на живой базе:
- Метаданные и схема. Агент спрашивает «какие вообще объекты есть в базе» и «из каких реквизитов состоит справочник Контрагенты» — и получает полный список из 327 справочников и точную схему полей с типами. Это то, с чего начинается любая работа: агент сначала изучает базу, потом действует.
- Чтение данных. Выборки с фильтрами, сортировкой, постраничной подкачкой, объект по ссылке (GUID) со всеми табличными частями, срезы и остатки регистров, значения констант. Это закрывает 80% запросов вида «покажи», «найди», «сколько».
- Запись. Создание объектов, обновление с защитой от конфликтов, пометка на удаление и физическое удаление, проведение и отмена проведения документов. Всё это — только когда режим записи включён явно.
- Продвинутое (через расширение 1С). Произвольные запросы на языке запросов 1С с соединениями и группировками, выполнение отчётов СКД, полнотекстовый поиск, вызов разрешённых процедур конфигурации, работа с файлами и вложениями, фоновые задания, чтение журнала регистрации, проверка прав. Это то, чего стандартный протокол не умеет в принципе.
Дальше — самое интересное. Покажу, как это выглядит вживую: слева команда, которую агент отправил серверу, справа — что реально ответила 1С. Все кадры сняты на настоящей базе; наименования организаций, ИНН и прочие реквизиты обезличены (Ромашка, Лютик, Василёк — вымышленные, ФИО заменены).
Как это выглядит на живой базе
Читаем справочник: 8616 контрагентов за долю секунды

Это базовый сценарий чтения. Агент попросил выборку с сортировкой и ограничением в пять строк — сервер собрал корректный запрос к OData, вернул данные и метку, что записей всего 8616 и есть продолжение. Так же агент достаёт любой справочник или документ: по фильтру «ИНН не заполнен», по дате, по сумме — и сразу видит, сколько всего под условие попадает.
Изучаем структуру: схема справочника с типами полей

Прежде чем что-то записать, агент выясняет, куда именно. Здесь он получил ровно то, что программист 1С смотрит в конфигураторе: имя ключевого поля, полный список реквизитов, их типы (строка, булево, ссылка). Дальше агент уже не гадает — он точно знает, что ИНН это строка, а ОсновнойБанковскийСчет — ссылка на другой объект.
Пишем в базу: создание с боевым откатом

Теперь боевая часть, ради которой такие статьи и читают технические директора. Мы намеренно включили режим записи и прогнали полный цикл: создать — прочитать — изменить — удалить, работая строго с одним тестовым элементом с меткой __MCP_TEST__, чтобы не задеть ни одного реального контрагента.

Правки сервер делает аккуратно: не затирает объект целиком, а меняет только нужные поля и передаёт версию данных. Если кто-то параллельно изменил тот же элемент, 1С вернёт конфликт, и агент не перезапишет чужую правку вслепую. Это та самая инженерная мелочь, которая отличает игрушку от инструмента для боевой базы.

Вот это для нас и есть доказательство зрелости. После всех операций тестовый элемент удалён без следа, а число контрагентов вернулось к исходному до единицы. Проведение документов на боевой базе клиента мы намеренно не запускали — только зарегистрировали инструмент; экспериментировать с проводками в чужой базе нельзя.
Когда что-то идёт не так — сервер объясняет, а не падает

Зрелость сервера видна именно на ошибках. За обкатку мы поймали и авторизацию 401, и отсутствие расширенного слоя, и особенности самой платформы — и ни разу сервер не свалился в непонятную ошибку. Каждый сбой он переводит на человеческий язык: агент понимает, что случилось, и может исправиться сам.

Эти три случая — не баги сервера, а особенности того, как 1С публикует данные наружу. Например, срезы и остатки регистров нужно отдельно включить в состав публикации, иначе их не видно. Сервер это распознаёт и подсказывает, что сделать на стороне базы. Именно такие мелочи всплывают только на живой обкатке — и именно поэтому мы прогоняем продукт на реальной базе, а не только на тестах.
Четыре способа подключения к вашей 1С
Главное наше решение — не завязываться на один канал. У разных клиентов 1С опубликована по-разному, где-то закрыта авторизацией, где-то стоит на поддержке и её нельзя трогать. Поэтому сервер умеет подключаться к базе четырьмя способами и сам определяет, какие из них доступны.
| Способ | Что даёт | Что нужно от базы |
|---|---|---|
| OData (базовый) | Чтение и запись справочников, документов, регистров; проведение документов | Только опубликовать базу и включить состав OData. Конфигурацию не трогаем |
| Расширение .cfe | Произвольные запросы, отчёты СКД, полнотекстовый поиск, вызов процедур, журнал | Поставить расширение — без снятия типовой с поддержки |
| SOAP-сервисы | Массовая загрузка данных там, где в конфигурации уже есть готовые сервисы | Наличие типовых web-сервисов |
| Веб-клиент (запасной) | То, что API не отдаёт: кнопка «Заполнить», реквизиты вне публикации, установка расширения | Обычный доступ в веб-клиент 1С |
Базовый слой — OData — работает на любой типовой 1С 8.3 без единой доработки: опубликовали базу на веб-сервере, включили состав OData — и агент уже читает и пишет. Расширение .cfe добавляет то, что стандартный протокол не умеет: настоящие запросы на языке 1С, отчёты, поиск. А два оставшихся канала — про надёжность.
Отдельно отвечу на частый вопрос: а если в 1С включена авторизация и OData закрыт? Тогда работает коннектор веб-клиента: агент через управляемый браузер логинится в тот же самый веб-клиент 1С, в который заходит человек, и делает то, что через API недоступно. Мы проверили это на практике — даже при включённой авторизации веб-клиентский коннектор входит в базу и работает. То есть отсутствие «красивой» публикации OData — не приговор: канал всё равно найдётся.
Кого разгружает связка «MCP + агент»
Мы смотрим на это не как на «ещё одну интеграцию», а как на цифрового помощника, который снимает с людей рутину вокруг 1С. Вот честная картина, кого и как он разгружает — с оговоркой, что решения и контроль всегда остаются за человеком.
| Роль | Что берёт на себя агент через MCP | Что остаётся человеку |
|---|---|---|
| Оператор ввода первички | Заносит контрагентов, реквизиты, типовые документы по команде из чата | Проверка спорных случаев, решение по нестандарту |
| Помощник бухгалтера | Находит документы, поднимает историю по контрагенту, готовит черновики | Бухгалтерская квалификация операций |
| Специалист по сверкам | Собирает данные для сверки, ищет расхождения запросами | Разбор и согласование расхождений |
| Аналитик-отчётник | Строит оборотки и выгрузки по запросу, без ручных выгрузок в Excel | Интерпретация цифр, выводы для руководства |
| Диспетчер справок «посмотри в 1С» | Мгновенно отвечает на «сколько на складе», «какой остаток по поставщику» | — |
Ориентир по экономике — оценочный, не оферта. Если оператор ввода тратит на занос первички порядка двух-трёх часов в день, а рыночная ставка такого специалиста в Москве — величина известная, то перевод этой рутины на агента высвобождает десятки часов в месяц и убирает опечатки. Точную выгоду мы считаем на вашей базе и ваших объёмах — цифры сильно зависят от того, сколько именно ручной работы крутится вокруг вашей 1С.
Безопасность: почему это не страшно пускать в боевую базу
Доступ AI к рабочей 1С звучит рискованно ровно до того момента, пока не разберёшься, как он устроен. Мы закладывали безопасность не как опцию, а как поведение по умолчанию.
- Read-only по умолчанию. Из коробки сервер только читает. Запись, удаление, проведение документов и тем более выполнение кода — это отдельные флаги, которые включаются осознанно и по одному. На прод-базе клиента режим кода и деплой расширений мы вообще не поднимаем.
- Отдельная учётка с урезанными правами. Агент ходит в базу не под администратором, а под сервисной ролью с минимально нужными правами. Что нельзя этой роли — нельзя и агенту, ограничения 1С работают ровно так же, как для человека.
- Полный откат и целостность. Как показала обкатка, после цикла записи база восстанавливается один-в-один. Все модифицирующие операции пишутся в аудит-лог — видно, кто, что и когда изменил.
- Обезличивание персональных данных. ИНН, КПП, ФИО, номера счетов маскируются на выходе по умолчанию. Секреты и пароли не попадают ни в логи, ни в переписку с моделью. При работе с внешней LLM чувствительные реквизиты обезличиваются до отправки.
- Лимиты и таймауты. Ограничение числа строк, размера ответа и времени выполнения — чтобы один неудачный запрос не подвесил ни базу, ни агента.
Мой главный тезис для осторожного собственника: AI-агент через наш сервер имеет ровно те права, которые вы ему явно выдали, — ни граммом больше. По умолчанию он умеет только смотреть. Всё остальное вы включаете сами, шаг за шагом, по мере доверия.
Статус продукта и как попробовать
Честно о стадии: продукт уже обкатан на живой базе 1С и активно продаётся. Ядро на OData отлажено и проверено на живой базе Бухгалтерии — полный цикл чтения и записи с откатом отработал вживую. Расширенный слой (произвольные запросы, отчёты, поиск) собран и покрыт тестами, а на вашей базе включается установкой расширения. Мы сознательно не гоним «релиз ради релиза»: каждый клиент — это ещё и обкатка на реальной конфигурации.
Внедряем под ключ и индивидуально: не просто ставим сервер, а настраиваем агентов под ваши процессы — права, сценарии, безопасный режим, промпты — и обучаем сотрудников. Разворачиваем в вашем контуре, подключаем к вашей публикации 1С, показываем живое демо на стенде и запускаем пилот на вашей базе. Внедрение — от 5 000 ₽, обсуждается индивидуально под конфигурацию и задачи. Первый разумный шаг — короткий разговор: расскажите, какая у вас 1С и какие вопросы к базе съедают больше всего времени, а я честно скажу, что здесь окупится в первую очередь.
Напишите мне в Telegram — покажу живое демо на стенде и посчитаем, что автоматизировать в вашей базе первым.
Написать @ITfresh_Boss
Частые вопросы
AI получит полный доступ к нашей 1С и всё сломает?
Нет. По умолчанию сервер работает в режиме read-only — только чтение. Запись, проведение документов и вызов кода включаются отдельными флагами и только под отдельной учёткой с урезанными правами. В обкатке мы включали запись, прогнали полный цикл создания и удаления тестового элемента и откатили базу байт-в-байт: было 8616 контрагентов, стало снова 8616. Реальные данные не тронуты.
Нужно ли переписывать нашу конфигурацию 1С?
Нет. Базовый слой работает через стандартный OData, который есть в любой типовой 8.3 — достаточно опубликовать базу и включить состав OData, конфигурацию менять не нужно. Расширенные возможности добавляются отдельным расширением .cfe без снятия типовой с поддержки.
Данные уходят в чужое облако?
Нет. Сервер разворачивается в вашем контуре и обращается к вашей публикации 1С по HTTPS. Персональные данные маскируются по умолчанию, секреты в логи не попадают. При работе с внешней LLM чувствительные реквизиты обезличиваются до отправки.
Работает ли это при включённой авторизации в 1С?
Да. Сервер авторизуется по Basic поверх HTTPS отдельной сервисной учёткой. Если OData закрыт, остаётся коннектор веб-клиента: агент через управляемый браузер логинится в тот же веб-клиент, что и человек. В обкатке база с закрытым доступом вернула 401, а сервер выдал человекочитаемое объяснение вместо сбоя.
Сколько стоит внедрение?
Продукт уже обкатан на живой базе и активно продаётся; внедрение — от 5 000 ₽ и обсуждается индивидуально под вашу конфигурацию и задачи. Мы настраиваем агентов под ваши процессы: права, сценарии, безопасный режим, обучение. Напишите в Telegram @ITfresh_Boss или позвоните +7 903 729-62-41.
