Свой код
Свой код: инструменты сайта на Битриксе из Python, бота или крона
Иногда модель не нужна вовсе: задача по расписанию должна прочитать остатки и прислать сводку, бот должен ответить на «где заказ», а скрипт после выгрузки проверить каталог. Инструменты сервиса доступны любому коду по протоколу MCP (открытый стандарт вызова инструментов) с ключом интеграции в заголовке. Ниже минимальный клиент на официальном SDK для Python; на других языках принцип тот же.
- Отдельный ключ: один сайт, только чтение или изменения, срок
- Изменения только после предпросмотра и вашего «да»
- Каждое действие записано, откат в течение 30 дней
Что понадобится
На стороне сайта
- Сайт на «1С-Битрикс: Управление сайтом» по HTTPS, PHP 8.1 или новее.
- Кабинет сервиса (регистрация по e-mail) и установленный модуль с отмеченными разделами.
- Ключ интеграции: создаётся в кабинете за минуту, показывается один раз.
На стороне свой код
Python 3.10 или новее и пакет mcp (официальный SDK) либо любой HTTP-клиент на вашем языке, способный держать поток Streamable HTTP. Ключ интеграции с правами под задачу.
Ограничений по стране нет: код обращается к нашему шлюзу, а модель, если она нужна, вы выбираете сами.
Подключение по шагам
Создайте ключ под задачу
В кабинете на странице «Подключить ассистента» выберите «свой код». Отчёт по остаткам: «только чтение», один сайт, срок год. Обновление остатков из таблицы: «чтение и изменения», один сайт, срок 90 дней. Назовите ключ по задаче, чтобы в журнале было понятно, кто что делал.
Установите SDK
pip install mcp. Пакет даёт клиент Streamable HTTP и сессию с методами списка и вызова инструментов.Получите список инструментов
Скрипт ниже подключается к
https://mcp.bxmcp.ru/mcpс заголовком авторизации, инициализирует сессию и печатает имена инструментов с описаниями. Имена стабильны, напримерbitrix_list_sites,bitrix_list_elements,bitrix_get_stock,bitrix_set_stock.Вызовите инструмент
await session.call_tool("bitrix_list_sites", {})возвращает текст и структурированные данные. Аргументы описаны в схеме каждого инструмента из списка; полеsiteможно не передавать, если у ключа один сайт.Обрабатывайте отказы
Ключ «только чтение» получит отказ на изменение с понятным текстом, истёкший ключ 401, превышение бесплатного лимита чтения сообщение с адресом тарифов. Логируйте эти ответы и не повторяйте вызов в цикле.
import asyncio
from mcp import ClientSession
from mcp.client.streamable_http import streamablehttp_client
URL = "https://mcp.bxmcp.ru/mcp"
HEADERS = {"Authorization": "Bearer ВАШ_КЛЮЧ"}
async def main():
async with streamablehttp_client(URL, headers=HEADERS) as (read, write, _):
async with ClientSession(read, write) as session:
await session.initialize()
tools = await session.list_tools()
for t in tools.tools:
print(t.name, "-", (t.description or "")[:60])
sites = await session.call_tool("bitrix_list_sites", {})
print(sites.content[0].text)
asyncio.run(main())
Вместо ВАШ_КЛЮЧ подставьте ключ из кабинета. В кабинете на странице «Подключить ассистента» этот блок показывается уже с вашим ключом.
Проверка
Напишите ассистенту: Вызовите bitrix_list_sites и убедитесь, что в ответе ваш сайт и режим ключа.
Пункты меню взяты из документации свой код и могут отличаться в вашей версии: ищите слова «MCP», «Streamable HTTP» и «заголовки». Сам шлюз с таким подключением проверен тестами; на живом аккаунте свой код мы его не прогоняли.
Если не получилось
401 Unauthorized
Ключ скопирован не полностью, отозван или истёк. Заголовок должен быть Authorization: Bearer ключ, без кавычек и переносов.
Таймаут или обрыв потока
Некоторые прокси режут длинные соединения. Используйте адрес https://mcp.bxmcp.ru/mcp напрямую, без корпоративного прокси, или транспорт SSE по адресу https://mcp.bxmcp.ru/sse.
«Изменения этим ключом недоступны»
Ключ «только чтение» или сайт переведён в режим чтения. Создайте ключ с правом на запись; подтверждения в коде нет, поэтому проверьте данные перед вызовом.
Нужна модель, а не прямой вызов
Возьмите langchain-mcp-adapters или SDK вашей модели с поддержкой инструментов: список инструментов из MCP передаётся модели как есть. Пример с GigaChat на отдельной странице.
Что это даёт по сравнению с REST или прямым SQL
Инструменты уже описаны и проверяют права: код не может случайно обновить не тот сайт или удалить лишнее, потому что у ключа есть границы, а у шлюза журнал и откат на 30 дней. Не нужно писать и поддерживать собственный API на сайте клиента, открывать базу или держать отдельный REST-модуль. Набор инструментов общий с ChatGPT и Claude, поэтому то, что менеджер делает в чате, скрипт делает теми же вызовами.
Ограничения тоже общие: только отмеченные в модуле разделы, до 500 элементов за одно изменение, 200 карточек за одну замену текста, никакого доступа к коду и файлам сайта. Для массовых загрузок по тысячам товаров это медленнее прямого импорта, зато безопасно и с откатом.

Три готовых сценария
Утренняя сводка: cron вызывает bitrix_get_stock по разделу, считает нули и шлёт в Telegram. Ключ «только чтение», один сайт. Синхронизация остатков: скрипт читает таблицу поставщика и вызывает bitrix_set_stock по каждой позиции, расхождения пишет в лог. Ключ с изменениями, один сайт, срок 90 дней, запуск сначала на тестовом разделе. Проверка после выгрузки из 1С: bitrix_list_elements страницами, фильтр по пустой картинке и цене, отчёт ответственному.
Любой из них можно дополнить моделью, если нужны формулировки для людей: модель получает те же инструменты через адаптер и пишет сводку словами. Но для большинства скриптов модель лишняя, и это нормально: сервис не требует её.
Что остаётся под вашим контролем
Предпросмотр
Массовые операции (цены, активность товаров, замена текста) ассистент сначала только показывает списком «было → станет». Изменения применяются после вашего «да».
Откат
Почти любое изменение можно отменить фразой «верни как было» или кнопкой в кабинете: цены, остатки, тексты, SEO, поля карточек. Отмена доступна 30 дней, если эти же данные не правили позже.
Журнал
Каждое действие записывается: что, когда и на каком сайте. В кабинете видно последние изменения и оценку сэкономленного времени.
Только выбранные разделы
Ассистент видит только те разделы сайта (инфоблоки), которые вы отметили в настройках модуля. Код сайта и системные файлы Битрикса он не меняет.
Ваше «да» на каждое изменение
Любое добавление, изменение или удаление ассистент сначала показывает и ждёт подтверждения. Это проверяет сам сервис, а не нейросеть: без вашего «да» изменение на сайт не уйдёт.
Видно, кто что сделал
У каждого сотрудника свой вход и своя строка в истории. На самом сайте правки подписаны пользователем «Ассистент bxmcp», их легко отличить от правок людей.
Первые фразы
-
bitrix_list_sites
Первый вызов: сайт и режим ключа.
-
bitrix_list_elements с фильтром по разделу и страницей 100
Проход по каталогу страницами; поля карточки в ответе.
-
bitrix_get_stock по разделу
Остатки для сводки или сверки с таблицей.
-
bitrix_set_stock по одному товару
Нужен ключ с изменениями. Запись в журнал, откат из кабинета 30 дней.
Частые вопросы
Есть ли ограничение по числу вызовов?
В бесплатном режиме до 30 запросов к сайту в сутки на один сайт. На платных тарифах действует общий лимит частоты шлюза, достаточный для скриптов по расписанию; про массовые загрузки лучше спросить нас заранее.
На каких языках, кроме Python, это работает?
На любом с поддержкой Streamable HTTP: есть официальные SDK для TypeScript, Java, C#, Kotlin и другие. Адрес, заголовок и имена инструментов те же.
Как узнать аргументы инструментов?
Из схемы в ответе на список инструментов: у каждого описание и JSON-схема аргументов. Их же видят модели.
Можно ли откатить изменения скрипта?
Да, в кабинете в истории каждое изменение помечено ключом и откатывается кнопкой в течение 30 дней, если данные не правили позже.
Где хранить ключ?
В переменной окружения или секрете вашей платформы. В журнале кабинета видно, когда ключ использовался в последний раз; неиспользуемые отзывайте.
Что будет через 14 дней?
14 дней считаются с подключения сайта. После них ассистент перейдёт в бесплатный режим: один сайт, до 10 изменений в месяц и до 30 запросов в сутки. Сайты, история и настройки сохранятся. Чтобы менять без ограничений, выберите тариф в кабинете: от 990 ₽ в месяц за один сайт.
Нужно ли уметь программировать?
Нет. Модуль ставится из админки Битрикса, дальше вы пишете в чат обычными словами. Если застрянете на установке, оставьте заявку на главной странице, и мы поможем.
Подключите за 14 дней бесплатно
- Сначала кабинет и модуль
- Потом свой код по шагам выше
- Изменения от 990 ₽ в месяц
Другие ассистенты и системы
Cherry Studio для Битрикс
Бесплатная программа для компьютера, в которой любая модель по API, в том числе локальная, получает инструменты вашего сайта. Один JSON из кабинета.
Подключение ассистентовClaude Code и Codex для Битрикс
Для тех, кто работает в терминале: одна команда добавляет сайт как MCP-сервер в Claude Code или Codex, вход по паролю кабинета, без ключей в файлах.
Подключение ассистентовCursor для Битрикс
Разработчику студии: сайт клиента как инструмент прямо в Cursor. Ключ интеграции на один сайт, файл mcp.json, остатки и тексты правятся из редактора.
Подключение ассистентовDeepSeek для Битрикс
Как подключить DeepSeek к сайту на Битриксе через Cherry Studio: ключ API DeepSeek, ключ интеграции в кабинете, один JSON, и можно задавать вопросы каталогу.
Подключение ассистентовDify для Битрикс
Как дать агенту или чат-боту в Dify доступ к сайту на Битриксе: MCP-сервер с заголовком, ключ интеграции, бот для менеджеров и сценарии с расписанием.
Подключение ассистентовGigaChat для Битрикс
Как связать GigaChat от Сбера с сайтом на Битриксе: агент на GigaChain с MCP-адаптером и ключ интеграции. Для разработчиков и студий, 40 строк кода.
Подключение ассистентовYandexGPT и Алиса для Битрикс
Как подключить YandexGPT к сайту на Битриксе через Yandex AI Studio: агент с внешними инструментами, ключ интеграции, без кода. Почему Алиса AI напрямую не подходит.
Что поручить после подключения
GigaChat для Битрикс
Как связать GigaChat от Сбера с сайтом на Битриксе: агент на GigaChain с MCP-адаптером и ключ интеграции. Для разработчиков и студий, 40 строк кода.
Обзорыn8n, Dify и Yandex AI Studio с Битриксом
Подключите к сайту на Битриксе не чат, а систему автоматизации: отдельный ключ, только чтение или изменения, на один сайт, со сроком.
Остатки и наличиеОбновление остатков
Внесите новые остатки по списку из склада прямо в чате: ассистент сверит старые значения и запишет новые по очереди.