Инструкция15 минутнужен свой сайт или ERP

Как подключить свою систему к боту

MCP (Model Context Protocol) — это способ дать боту набор инструментов твоей системы: «покажи остатки», «найди заказ», «сколько продали за неделю». Бот видит только то, что ты откроешь, и ходит в систему по https с ключом, как обычный пользователь. Если сайт или ERP ты навайбкодил сам, добавить такой вход займёт один запрос к Claude Code или Cursor.

1

Что нужно от твоей системы

Три вещи. Адрес MCP-сервера по https, например https://my-site.ru/api/mcp. Ключ доступа, который система выдаёт пользователю и умеет отзывать. И инструменты с понятными именами и описаниями: по ним бот решает, что вызвать, поэтому «list_products: список товаров с остатками по складу» лучше, чем «api1».

Начни с чтения: остатки, заказы, клиенты. Инструменты, которые что-то меняют, добавишь потом, когда увидишь, как бот ими пользуется.
2

Попроси Claude Code или Cursor добавить MCP

Открой проект своей системы и вставь этот промпт целиком. В нём всё, что нужно боту: route, авторизация по ключу, инструменты, формат ответов. Технические слова оставлены по-английски, чтобы модель не гадала.

Промпт для Claude Code или Cursor
Добавь в проект MCP-сервер (Model Context Protocol) для внешнего ассистента. Транспорт: Streamable HTTP, один route.

1. Route `POST /api/mcp`, протокол JSON-RPC 2.0. Методы:
   - `initialize`: верни `protocolVersion: "2025-06-18"`, `capabilities: { tools: {} }`, `serverInfo: { name, version }`;
   - `notifications/initialized`: это notification без id, ответ 202 без тела;
   - `tools/list`, `tools/call`, `ping`;
   - неизвестный метод: JSON-RPC error `-32601`.
   Ответы отдавай как `application/json` (SSE не нужен). Сервер stateless: не требуй `Mcp-Session-Id`, каждый запрос самостоятельный.

2. Авторизация: заголовок `Authorization: Bearer <key>`. Ключи храни в базе только как hash (sha256 с солью или bcrypt), привязанными к пользователю, с датой создания и отзыва. В профиле пользователя сделай раздел «Ключи для ассистента»: создать ключ (показать один раз), список, «Отозвать». Без ключа или с отозванным ключом отвечай 401. Все инструменты выполняются от имени владельца ключа и с его правами, не больше.

3. Инструменты: 5–8 штук, только чтение. Имена вида `verb_noun`: `list_products`, `get_order`, `search_customers`, `get_stock`, `get_sales_summary`. У каждого `description` в один абзац: что возвращает, какие параметры, когда его звать. `inputSchema` как JSON Schema: `type: "object"`, `properties` с описаниями, `required`. Ограничивай выдачу (`limit` не больше 50) и не отдавай лишних полей.

4. Результат `tools/call`: `{ content: [{ type: "text", text: "<читаемый текст или JSON строкой>" }] }`. Ошибка внутри инструмента: то же плюс `isError: true`. Ошибки протокола (нет метода, плохие параметры): JSON-RPC error с `code` и `message`.

5. Добавь тест или curl-проверку для `initialize` и `tools/list`.

Стек и стиль возьми из репозитория, используй существующие модели и авторизацию, новых зависимостей по возможности не добавляй.
3

Проверь, что сервер отвечает

Выпусти себе ключ в своей системе и попроси список инструментов из терминала. В ответе должен быть JSON с полем tools и твоими именами вида verb_noun.

Проверка tools/list
curl -s https://my-site.ru/api/mcp \
  -H 'Authorization: Bearer <ключ>' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'
Ответ 401 значит, что ключ не подошёл; 404 или HTML вместо JSON, что route ещё не задеплоен или адрес другой.
4

Добавь систему в панели

Настройки → Функции и ключи → включи «Свои системы» → «Добавить систему». Название, адрес, ключ, одна строка о том, что это за система. Нажми «Проверить подключение»: панель покажет список инструментов, который увидит бот. Потом «Сохранить»; перезапуск не нужен, бот подхватит систему на следующем сообщении.

Пример: Zoiten Pro. Ключ выдаётся в самой системе: Профиль → Ключи для ассистента → «Создать». В панели: адрес https://zoiten.pro/api/mcp, ключ zp_… и подпись «ERP компании: товары, остатки, продажи».
5

Про безопасность

Ключ даёт боту ровно те права, что есть у пользователя, который его выпустил: не больше. Чтобы отрезать доступ, отзови ключ в самой системе, бот получит 401 и остановится. Перед тем как что-то изменить через инструменты, бот спрашивает подтверждение; ответы системы он считает данными, а не командами.

Если что-то не так

Система готова к подключению
Добавь адрес и ключ, нажми «Проверить подключение»
Открыть функции
Как подключить свою систему к боту · Иша