Модуль создан с целью улучшения качества разработки проектов на Битриксе с использованием AI-агентов.
Модуль реализует MCP сервер в виде набора эндпоинтов, которые используются для связи AI-агента среды разработки непосредственно с сайтом и сервером.
Возможности MCP сервера
Ресурсы:
- Добавляет документацию Bitrix Framework (она же https://docs.1c-bitrix.ru/) в ресурсы MCP сервера, к которым агент может обращаться напрямую
Инструменты:
- Информация об окружении:
- Информация о системе:
- Название операционной системы;
- Имя хоста;
- Имя текущего пользователя;
- Объем диска в байтах;
- Объем свободного места на диске в байтах;
- Название операционной системы;
- Информация о Битрикс:
- Редакция;
- Версия главного модуля;
- Установленные модули;
- Редакция;
- Информация о PHP:
- Версия PHP;
- Подключенные расширения;
- Ограничение по объему доступной оперативной памяти;
- Максимальное время исполнения PHP-скриптов;
- Версия PHP;
- Информация о базе данных:
- Тип базы данных;
- Версия сервера баз данных;
- Хост подключения;
- Имя базы данных;
- Тип базы данных;
- Информация о системе:
- Live API:
- Список доступных функций в модуле;
- Список доступных событий в модуле;
- Поиск функций в модулях по проиндексированной базе;
- Код функции модуля с её описанием PHPDoc;
- Поиск функций через механизм Reflection по всему коду;
- Список доступных функций в модуле;
- Исполнение PHP-кода на сервере;
- Исполнение Shell-команд на сервере;
- Исполнение SQL-запросов на сервере;
- Поиск по документации Bitrix Framework (требует дополнительного подключения сервиса генерации embeddings):
- Нормализует markdown-файлы документации Bitrix Framework перед индексированием;
- Индексирует markdown-файлы документации Bitrix Framework в формате embeddings для поиска по смыслу, а не по вхождению;
- Производит векторный поиск по документации Bitrix Framework по запросу от AI-агента.
- Нормализует markdown-файлы документации Bitrix Framework перед индексированием;
Доступ AI-агентов к модулю реализован с помощью JWT-токенов с возможностью указания времени жизни и прав токена на отдельные эндпоинты. Доступно удаление идентификаторов токенов со страницы настроек модуля, чтобы заблокировать доступ по ранее выпущенному токену.
Есть возможность ограничить доступ к настройкам модуля определенным группам пользователей.
Доступно логирование запросов/ответов к внешнему API модуля.
Токены с правами на исполнение PHP/Shell/SQL кода рекомендуется использовать только на тестовых площадках! Помните, что AI-агенты ошибаются и могут удалить или испортить ваши данные.
Модуль принёс пользу? Ты можешь оставить отзыв или поблагодарить разработчика: https://yoomoney.ru/to/41001510540341
После установки необходимо выпустить токен в настройках модуля.
Пример подключения MCP сервера в Cursor
{
"mcpServers": {
"bitrix": {
"command": "npx",
"args": [
"mcp-remote",
"https://{ВАШ_ДОМЕН}/bitrix/services/main/ajax.php?action=delight:mcp.Rpc.handler",
"--header",
"Authorization: Bearer {ВАШ_ТОКЕН}"
]
}
}
} |
Подключение embeddings-сервиса
Т.к. документация Bitrix Framework автоматически добавляется в ресурсы MCP сервера и доступна AI-агенту по запросу, то острой необходимости в настройке поиска по документации нет, это лишь может сэкономить контекст.
Для корректной работы сервиса поиска по документации Bitrix Framework требуется взаимодействие с сервисом генерации embeddings (векторных представлений текста), которые нужны для поиска не по содержанию, а по смыслу. В качестве основного пути предлагается на собственном сервере поднять микросервис на Python (sentence-transformers), код микросервиса также предоставляется в модуле, но можно использовать и другие варианты (OpenAI, Olama и прочее) - для их использования нужно по событию OnBeforeGenerateEmbedding переопределить параметры запроса на генерацию embeddings, и по другому событию OnAfterGenerateEmbedding привести ответ к JSON-строке вида
"[-0.22979317605495453,-0.1455831080675125,-0.2588725686073303,0.0562337264418602,...]" |
Этот сервис должен работать в фоновом режиме и автоматически запускаться после перезагрузки сервера.
Инструкция ниже предназначена для BitrixEnv 9+ и предполагает, что все команды выполняются последовательно через SSH от root-пользователя. Все пути требуется актуализировать под ваше окружение.
Шаг 1: Установка Python и зависимостейЭти команды установят Python, создадут изолированное окружение для сервиса и загрузят в него все необходимые библиотеки.
# Устанавливаем Python 3 и менеджер пакетов pip sudo yum install -y python3 python3-pip # Задаем путь к модулю MODULE_PATH="/home/bitrix/www/bitrix/modules/delight.mcp" # Переходим в директорию, где будет работать сервис cd $MODULE_PATH/python # Создаем виртуальное окружение в папке 'venv' python3 -m venv venv # Активируем окружение, обновляем pip и устанавливаем библиотеки source venv/bin/activate python3 -m pip install --upgrade pip pip install fastapi uvicorn "sentence-transformers[txt]" deactivate # Меняем владельца всех файлов на bitrix, чтобы у сервиса были права доступа sudo chown -R bitrix:bitrix $MODULE_PATH/python |
Следующие команды создадут, настроят и запустят фоновый процесс.
# Задаем имя файла службы SERVICE_FILE="/etc/systemd/system/delight.embeddings.service" # Задаем путь к модулю MODULE_PATH="/home/bitrix/www/bitrix/modules/delight.mcp" # Создаем unit-файл для systemd с помощью команды tee # Это позволяет запускать сервис от пользователя bitrix и автоматически перезапускать его sudo tee $SERVICE_FILE > /dev/null <<EOF [Unit] Description=Delight Embeddings Generation Service After=network.target [Service] User=bitrix Group=bitrix WorkingDirectory=$MODULE_PATH/python ExecStart=$MODULE_PATH/python/venv/bin/python -m uvicorn embeddings-service:app --host 0.0.0.0 --port 8000 Restart=always [Install] WantedBy=multi-user.target EOF # Открываем порт 8000 в брандмауэре sudo firewall-cmd --zone=public --add-port=8000/tcp --permanent sudo firewall-cmd --reload # Перечитываем конфигурацию systemd, включаем автозапуск и стартуем сервис sudo systemctl daemon-reload sudo systemctl enable delight.embeddings.service sudo systemctl start delight.embeddings.service |
Чтобы убедиться, что сервис успешно запущен и работает, выполните:
sudo systemctl status delight.embeddings.service |
sudo journalctl -u delight.embeddings.service |
Доступные в модуле события
| Имя события | Когда вызывается | Параметры | |
| OnBeforeExec | Перед исполнением shell-команд |
| |
| OnAfterExec | После исполнения shell-команд |
| |
| OnBeforeEval | Перед исполнением PHP-кода |
| |
| OnAfterEval | После исполнения PHP-кода |
| |
| OnBeforeSql | Перед исполнением SQL-кода |
| |
| OnAfterSql | После исполнения SQL-кода |
| |
| OnBeforeGenerateEmbedding | Перед отправкой данных в сервис генерации эмбеддингов |
| |
| OnAfterGenerateEmbedding | После получения данных от сервиса генерации эмбеддингов |
|
Вы можете поучаствовать в улучшении модуля, создав Pull Request в репозитории на GitHub с вашими доработками.
Стандартная техническая поддержка платная.
При обращении за технической поддержкой обязательно указывайте ссылку на сайт, доступы в админку и FTP!
Пишите на dronazzz@mail.ru или https://t.me/delighter
Для покупки товара в нашем интернет-магазине выберите понравившийся товар и добавьте его в корзину. Далее перейдите в Корзину и нажмите на «Оформить заказ» или «Быстрый заказ».
Если оформляете быстрый заказ: напишите ФИО, телефон и e-mail. Вам перезвонит менеджер и уточнит условия заказа. По результатам разговора вам придет подтверждение оформления товара на почту или через СМС. Теперь останется только ждать доставки и радоваться новой покупке.
Оформление заказа в стандартном режиме выглядит следующим образом. Заполняете полностью форму по последовательным этапам: адрес, способ доставки, оплаты, данные о себе. Советуем в комментарии к заказу написать информацию, которая поможет курьеру вас найти. Нажмите кнопку «Оформить заказ».
Оплачивайте покупки удобным способом. В интернет-магазине доступно 3 варианта оплаты:
- Наличные при самовывозе или доставке курьером. Специалист свяжется с вами в день доставки, чтобы уточнить время и заранее подготовить сдачу с любой купюры. Вы подписываете товаросопроводительные документы, вносите денежные средства, получаете товар и чек.
- Безналичный расчет при самовывозе или оформлении в интернет-магазине: карты МИР. Чтобы оплатить покупку на сайте, система перенаправит вас на сервер платежной системы. Здесь нужно ввести номер карты, срок действия и имя держателя.
- Электронные системы при онлайн-заказе: ЮMoney. Для совершения покупки система перенаправит вас на страницу платежного сервиса. Здесь необходимо заполнить форму по инструкции.
- Безналичная оплата на наш расчетный счет по выставленному счету.
Экономьте время на получении заказа. В интернет-магазине доступно 4 варианта доставки:
- Электронная поставка - все необходимые сведения о лицензии, праве пользования, кодах, ключах и др. высылаются покупателю на его e-mail.
- Курьерская доставка. Когда товар будет отправлен с нашего склада, Вам придет уведомление. В день доставки с Вами заблаговременно свяжется курьер для уточнения времени и деталей доставки. Доставка производится "до двери". Осмотрите упаковку на целостность и соответствие указанной комплектации.
- Постамат. Когда заказ поступит на точку, на Ваш телефон или e-mail придет уникальный код. Заказ нужно оплатить в терминале постамата. Срок хранения — 3 дня.
- Доставка Почтой России. Когда заказ придет в отделение, на Ваш адрес придет извещение о посылке. Перед оплатой Вы можете оценить состояние коробки: вес, целостность. Вскрывать коробку самостоятельно Вы можете только после оплаты заказа. Один заказ может содержать не больше 10 позиций и его стоимость не должна превышать 100 000 р.
Дополнительная информация.
Изучите полный алгоритм продления лицензий на модули 1С-Битрикс: Маркетплейс, включая активацию льготных купонов. Мы детально разбираем все условия: обязательный 30-дневный срок для сохранения максимальной выгоды, пропорциональное ценообразование (12,5%, 25%, 50% от цены модуля) и ограничение по минимальной сумме в 500 рублей. Этот гайд поможет вам эффективно планировать бюджет и гарантировать актуальность вашего проекта.