Подключение ассистента (MCP)
Как дать ChatGPT, Claude или Cursor доступ к хелпдеску — без кода и без ключа.
Что это
MCP (Model Context Protocol) — общий язык, на котором ИИ-помощники разговаривают с чужими системами. Мы подняли свой MCP-сервер поверх этого же API: вы даёте адрес, программа сама разбирается, что умеет ваш хелпдеск, и дальше вы спрашиваете обычными словами.
Без него сотруднику, который хочет узнать «сколько диалогов вчера осталось без ответа», нужен программист. С ним — достаточно спросить.
Сервер не заменяет API: инструменты вызывают те же методы, действуют те же лимиты и та же стена подписки. Всё, что здесь написано про идемпотентность и лимиты, действует и тут. Отличие одно: подключается человек, а не ключ — см. ниже.
Адрес
Один: https://api.tygy.ru/mcp.
Что ассистенту разрешено — «Чтение» или «Чтение и запись» — это свойство подключения, не адреса. Выбирается при подключении и меняется потом в кабинете, без переподключения.
Адрес https://api.tygy.ru/mcp/readonly продолжает отвечать у тех, кто вставил его раньше: на нём пишущих инструментов нет независимо от подключения. Новым подключениям он не нужен — переключатель делает то же самое.
Как подключить
В кабинете: Настройки → API и MCP, блок «Подключение MCP». Там адрес и список уже подключённых программ.
Дальше зависит от программы:
Claude Desktop, Cursor, VS Code — проще всего вставить адрес прямо в интерфейсе программы, в разделе MCP-серверов или коннекторов.
Если правите файл настроек руками, ключ у клиентов разный:
// Claude Desktop и Cursor
{ "mcpServers": { "tygy": { "url": "https://api.tygy.ru/mcp" } } }
// VS Code — в .vscode/mcp.json
{ "servers": { "tygy": { "url": "https://api.tygy.ru/mcp" } } }Программа откроет браузер, вы войдёте в кабинет и выберете, что разрешить: «Чтение» — смотрит диалоги, клиентов и цифры; «Чтение и запись» — может ещё закрывать, назначать, ставить теги и писать в справку.
ChatGPT — добавьте адрес как коннектор. Дальше то же самое: вход, выбор режима, готово.
Свой код — можно и без входа через браузер: передайте обычный ключ API в заголовке Authorization: Bearer <ключ>. Тогда правами распоряжается ключ и его области доступа.
От чьего имени действует ассистент
От вашего. Подключённая программа получает ровно ваши права — вашу роль и вашу видимость диалогов, ту же, что в инбоксе, — и не шире. Режим «Чтение» сужает их ещё сильнее.
Ключ нужен в одном случае: дать ассистенту меньше, чем есть у вас — например, помощнику подрядчика или стороннему сервису. На экране согласия есть свёрнутая строка «Действовать не от моего имени, а ключом»; свёрнута, потому что обычно не нужна.
Что помощник умеет
Инструменты — это не методы API один-в-один, а задачи целиком. «Найти диалоги, которые ждут ответа» — один инструмент, а не три запроса подряд.
| Задача | Нужно право |
|---|---|
| Кто я, какой это проект | — |
| Найти и прочитать диалоги, переписку | conversations:read |
| Ответить клиенту | messages:send |
| Написать клиенту первым | conversations:start |
| Написать заметку в диалоге или на карточке | notes:write |
| Готовые ответы команды | macros:read |
| Закрыть, переназначить, поставить теги | conversations:write |
| Найти человека или компанию | contacts:read |
| Завести и поправить карточку | contacts:write |
| Искать в справке | kb:read |
| Написать статью в справку | kb:write |
| Встречи, сводки, расшифровки | conferences:read |
| Отчёты и цифры | analytics:read |
| Кто в команде | team:read |
| Какие есть теги | tags:read |
Право берётся из вашей роли (или из областей доступа ключа, если подключились ключом) и затем сужается режимом подключения.
Список инструментов собирается под конкретное подключение. На «Чтении» пишущих инструментов не существует вовсе — не «есть, но откажут», а именно нет. Модель не может уговорить себя вызвать то, чего не видит.
Ответ клиенту и первое сообщение всегда подтверждает человек
Это единственное действие, которое доходит до постороннего человека, и оно устроено иначе всех остальных — режим «Чтение и запись» его не отменяет.
Когда помощник вызывает «ответить клиенту», ничего не отправляется. В ответ он получает ссылку:
{
"status": "awaiting_human_confirmation",
"confirm_url": "https://app.tygy.ru/acme/mcp/confirm/…",
"expires_at": "2026-09-13T13:54:55.207Z",
"message": "Ничего не отправлено. Покажите человеку эту ссылку."
}Сотрудник открывает ссылку, видит диалог и ровно тот текст, который будет отправлен, и нажимает «Отправить» или «Отменить». Подтверждение живёт час.
Так же устроено «написать клиенту первым» (start_conversation): на странице подтверждения видно, кому, в какой канал и что уйдёт, а диалог появляется только после нажатия «Отправить». Подтвердить может сотрудник с правом начинать диалоги.
Проверка на нашей стороне, а не в программе: помощник не может её пропустить, как бы его об этом ни просили.
Чужой текст помечен
Всё, что написал клиент — тело письма, тема, имя, заголовок статьи, — приходит модели обёрнутым:
<untrusted-content source="customer.body">
Здравствуйте! Забыл пароль…
</untrusted-content>Это данные, а не распоряжения. Метки внутри самого текста обезвреживаются, так что закрыть блок изнутри и «вырваться» нельзя.
Права и тарифы
Подключить может тот, кому в кабинете разрешено управлять API (integrations.manage_api) — обычно владелец или администратор. Нужен тариф, в котором есть публичный API.
Если подписка кончилась, сервер не отключается, а переходит в режим только для чтения: свои данные вы продолжаете видеть.
Как отключить или сузить
Настройки → API и MCP → «Подключённые программы». У каждой программы — переключатель «Чтение» / «Чтение и запись» и кнопка «Отключить». Отключение убивает токены этой программы сразу. Если подключались ключом, отзыв ключа убивает всё, что было выдано под него.
← Назад: Встречи
Дальше: История изменений →