Перейти к содержимому

ИИ-ассистент работает прямо в Odoo — с правами на каждую модель

Свой MCP-сервер для Odoo 19: Claude ставит задачи, заводит товары и коммерческие предложения, разбирает лиды — и видит только то, что ему явно открыли
22 октября 2026 г. от
ИИ-ассистент работает прямо в Odoo — с правами на каждую модель
ErphaBot
ИИ-ассистент внутри Odooправа на каждую модель
5
видов доступа на модель: чтение, создание, изменение, удаление, методы
Права
445
строк реестра сверено с CRM и продажами
CRM
3
базы: две на Odoo 19 и одна на Flectra 1.7
Интеграции

Последний месяц ассистент Claude работает не рядом с системой учёта, а внутри неё. Мы написали собственный MCP-сервер для Odoo 19 (MCP — открытый протокол, по которому языковая модель вызывает внешние инструменты). Теперь рутинные операции в ERP можно поручить ассистенту обычной фразой в чате, а результат сразу появляется в системе — с историей изменений и от имени конкретного пользователя.

Главный принцип — всё закрыто, пока не открыто

Сервер не даёт модели «доступ к базе». Он отдаёт ровно те модели, которые администратор включил в настройках модуля, и для каждой отдельно — пять галочек: чтение, создание, изменение, удаление и вызов бизнес-методов. Начинали с одних задач и проектов. Дальше права расширялись по ходу работы: понадобилось создать коммерческое предложение — открыли заказы и налоги, понадобилось завести товар с вариантами — открыли шаблоны и атрибуты. Контакты клиентов, например, долго оставались закрыты сознательно: телефонам и почте нечего делать в чате без необходимости.

Все действия выполняются от имени подключённого пользователя, поэтому штатные права доступа и правила записей Odoo продолжают работать. Ассистент не может сделать больше, чем сотрудник, под которым он вошёл. Сам сервер стоит в отдельном контейнере рядом с Odoo и ходит к нему по внутренней сети, наружу открыт только защищённый HTTPS-адрес.

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

  • Вход логином Odoo. Сервер сам выступает сервером авторизации OAuth 2.1. Коннектор в Claude открывает страницу входа Odoo, пароль вводится там и в чат не попадает. Вместо паролей и API-ключей в переписке — токен, который можно отозвать.
  • Только чтение — по галочке. На странице согласия можно не ставить «разрешить создание и изменение данных». Тогда сессия получает только чтение, а инструменты записи ассистент даже не видит.
  • Доступ по группе. Пользоваться MCP может только тот, кого администратор добавил в группу «MCP User». Остальные сотрудники не получают доступ автоматически.
  • Журнал и лимиты. Каждый вызов записывается в журнал: кто, какой инструмент, какая модель. Число запросов ограничено и в самом модуле, и на входном веб-сервере.

Что уже делаем через него

  • Задачи. Каждое утро ассистент ставит задачи маркетологу и руководителю в проекте «Маркетинг», а потом читает статусы, комментарии и приложенные файлы. Контроль без ручного пересказа.
  • Товары и варианты. Новый типоразмер не плодит отдельную карточку: существующий товар превращается в шаблон с атрибутом «Размер», и остатки, себестоимость и история движений старой позиции сохраняются за своим вариантом.
  • Коммерческие предложения. Предложение на окончательную оплату по договору собирается по образцу предыдущего заказа того же клиента — тот же менеджер, ставка НДС и служебный товар, а своя формулировка уходит в описание строки. Лишних товаров в каталоге не появляется.
  • Разбор лидов. Ассистент проверяет, к той ли компании привязан лид, находит настоящего заказчика по открытым источникам, создаёт карточку контрагента и оставляет внутреннюю заметку с источниками в истории лида.
  • Сверка реестра с CRM. Таблицу из 445 объектов сопоставили с активными и архивными лидами и подтверждёнными продажами и раскрасили по статусу: проигран, в работе, материал отгружен. Спорные строки вынесены в отдельный лист с номерами лидов и обоснованием.

Грабли

В первых версиях в заголовке записи пользователя показывался ID связанного контакта, а не самого пользователя, и модель путала их при назначении исполнителя. Теперь оба идентификатора выводятся раздельно. Второе: архивные записи по умолчанию не ищутся, и для сверки их нужно запрашивать явно — иначе половина истории просто не видна.

Не только Odoo 19

Тот же подход перенесли на систему на Flectra 1.7 — это ответвление Odoo 11, которое мигрировать не планируется. Готовый модуль там не встаёт: он написан под Odoo 19 и современный Python. Поэтому рядом с системой работает отдельный шлюз с тем же набором инструментов и тем же входом через OAuth. Он работает от имени вошедшего пользователя через обычную сессию Flectra и не хранит пароль. Список пользователей, которым разрешён вход, и права по моделям лежат в отдельных файлах настроек: по умолчанию — только чтение примерно двух десятков основных моделей. Старая система получила современный интерфейс для ассистента без переписывания самой системы.

И сайт тоже

21 октября тот же модуль подключили к этому сайту. Ассистенту открыты блог, страницы, меню, редиректы и SEO-настройки: читать, создавать и править. Удаление выключено везде — снять пост с публикации можно, удалить нельзя. Разметка страниц доступна только на правку, без создания новых шаблонов. Черновики этого и нескольких соседних постов ассистент завёл через MCP сам, по истории сделанной работы, а человек их проверил и дополнил.

Итог

Модуль работает на рабочей базе. Права выдаются по шагу, под конкретную задачу, — и это оказалось удобнее, чем пытаться заранее угадать, что понадобится. Следующие кандидаты на такой же коннектор — рекламный кабинет, почтовый сервер и телефония.

Сервис авторасчёта смет и подготовки КП по гидроизоляции
Запущен сервис автоматизации для подрядчиков: расчёт физических объёмов, материалов, смет и КП с выбором реквизитов компании

Похожая задача в вашей компании?

Напишите намСмотреть услуги