
Разработчикам
Подключите Руководителя аппарата и его команду к своим инструментам и ИИ-приложениям.
Работайте с командой прямо в Claude, ChatGPT и собственных программах. Через MCP, REST API и подписанные вебхуки ИИ-приложение или ваш код может находить звонки, контакты и задачи, следить за работой ваших Агентов и, с вашего разрешения, поручить Агенту позвонить.
С чего начать
Все, что нужно для подключения
- MCP-серверОдин адрес для любого MCP-клиента, со входом через OAuth или по API-ключу.
- REST APIJSON-эндпоинты для рабочего пространства, Агентов, звонков, контактов, задач и кампаний, с понятными ошибками.
- Спецификация OpenAPIМашиночитаемая спецификация для генераторов кода и инструментов для работы с API.
- Инструкции для каждого приложенияПошагово для Claude, ChatGPT, Claude Code, Cursor, VS Code и других.
- Подписанные вебхукиЗвонки, задачи и поручения приходят в вашу систему в момент изменения.
- Навык для ИИ-приложенияНаучите ИИ-приложение безопасно работать с вашей командой.
MCP-сервер
https://agentwaves.net/mcpОдин URL для подключения
Добавьте его как коннектор или MCP-сервер, войдите и выберите, что приложению разрешено делать.
Инструкции по подключениюИнструкции по подключению
Подключение за пару минут
Приложения со входом через аккаунт подключаются к вашему аккаунту AgentWaves. Остальные используют API-ключ, который вы создаете в AgentWaves. В обоих случаях приложение действует от вашего имени и в рамках вашей роли. Шаги приведены на английском: в них пункты меню названы так, как они выглядят в самих приложениях.
ClaudeВход
- In Claude (web, desktop or mobile), open Settings, then Connectors, and choose Add custom connector. Team and Enterprise: an admin adds it under Organization settings, Connectors.
- Name it AgentWaves and paste the connector URL. Leave the advanced OAuth fields empty.
- Click Add, then Connect. The AgentWaves sign-in opens: pick the workspace and what Claude may do, then Allow.
- In a new chat, turn on AgentWaves in the tools menu and ask: Where am I with AgentWaves?
ChatGPTВход
- In ChatGPT, open Settings, then Apps and Connectors, then Advanced settings, and turn on Developer mode (Plus, Pro, Business and Enterprise plans).
- Choose Create, name it AgentWaves, paste the connector URL and keep OAuth as the authentication.
- Save, then Connect: approve the AgentWaves sign-in with the workspace and access you want.
- In a chat, choose AgentWaves from the tools and ask what you need.
Claude CodeВход
- Run this in your terminal:
- Then type /mcp in Claude Code and choose AgentWaves to sign in. To use an API key instead, add --header "Authorization: Bearer YOUR_AGENTWAVES_KEY".
claude mcp add --transport http agentwaves https://agentwaves.net/mcp
CursorAPI-ключ
- In AgentWaves, open Developers and create an API key.
- Open Cursor Settings, then MCP, then Add new MCP server (or edit ~/.cursor/mcp.json) and add:
{
"mcpServers": {
"agentwaves": {
"url": "https://agentwaves.net/mcp",
"headers": { "Authorization": "Bearer YOUR_AGENTWAVES_KEY" }
}
}
}VS Code (Copilot)API-ключ
- In AgentWaves, open Developers and create an API key.
- Add this to .vscode/mcp.json in your project (or your user MCP settings), then start the server from the MCP list:
{
"servers": {
"agentwaves": {
"type": "http",
"url": "https://agentwaves.net/mcp",
"headers": { "Authorization": "Bearer YOUR_AGENTWAVES_KEY" }
}
}
}WindsurfAPI-ключ
- In AgentWaves, open Developers and create an API key.
- Edit ~/.codeium/windsurf/mcp_config.json and add:
{
"mcpServers": {
"agentwaves": {
"serverUrl": "https://agentwaves.net/mcp",
"headers": { "Authorization": "Bearer YOUR_AGENTWAVES_KEY" }
}
}
}Gemini CLIAPI-ключ
- In AgentWaves, open Developers and create an API key.
- Edit ~/.gemini/settings.json and add:
{
"mcpServers": {
"agentwaves": {
"httpUrl": "https://agentwaves.net/mcp",
"headers": { "Authorization": "Bearer YOUR_AGENTWAVES_KEY" }
}
}
}Any MCP clientAPI-ключ
- Transport: Streamable HTTP at the connector URL.
- Authentication: send an API key as Authorization: Bearer YOUR_AGENTWAVES_KEY, or use OAuth 2.1 sign-in (discovery at /.well-known/oauth-protected-resource, PKCE S256, dynamic client registration).
- Start with the get_started tool.
Справочник инструментов
Что ИИ-приложение может делать в AgentWaves
Инструменты чтения работают при любом подключении. Инструментам действий нужен доступ на чтение и действия, и каждый из них проверяет роль самого человека. Ваши одобрения по-прежнему в силе: если у Агента включено «Спрашивать меня перед звонком», звонок, порученный из приложения, ждет вашего нажатия на странице «Сегодня» или вашего «да» в WhatsApp, а контакту из списка «не звонить» никто не позвонит. Каждое действие записывается в журнал аудита.
Чтение
Только поиск и просмотр. Ничего не меняется.
get_startedНачните отсюда. Рабочее пространство, его тариф, Агенты, телефонные номера, звонки, потенциальные клиенты и задачи за последние 7 дней, а также что разрешено этому подключению.
list_agentsКаждый Агент со статусом (в работе, выключен или не опубликован), направлением работы, языком, телефонными номерами, номером WhatsApp и числом звонков.
list_callsПоследние телефонные звонки, от новых к старым, со сводкой и итогом. Фильтры по имени Агента, направлению, части номера телефона и числу прошедших дней.
get_callОдин звонок целиком: данные, сводка, извлеченные сведения (имя, почта, компания, следующий шаг) и расшифровка.
find_contactsПоиск контактов и потенциальных клиентов по имени, телефону, компании или метке (* для самых новых), с тем, что Агенты помнят о каждом.
get_contactОдин контакт: данные, согласие на связь, что помнят Агенты, открытые задачи и последние звонки.
list_tasksЗадачи по итогам писем, WhatsApp, звонков и поручений. Показывает открытые (по умолчанию), выполненные или все.
get_taskОдна задача со всеми заметками, письмом, из которого она появилась, и контактом.
order_progressНа каком этапе звонок, порученный через order_call: ждет одобрения, запланирован, идет вызов, идет разговор или завершен. Со временем каждого шага, действиями Агента во время звонка, а после завершения с итогом и сводкой. Передайте task_id (или approval_id), который вернул order_call.
list_campaignsИсходящие кампании со статусом, Агентом и ходом выполнения.
search_knowledgeПоиск по тому, что Агент знает о бизнесе (сайт, документы, заметки).
Действие
Что-то меняет или совершает звонок. ИИ-приложению стоит сначала уточнить у вас.
order_callПоручите Агенту позвонить по номеру и что-то сделать (узнать цену, подтвердить доставку, о чем-то напомнить), сейчас или в назначенное время. Это становится поручением и задачей, а итог записывается в задачу. Звонки другим людям соблюдают часы звонков, а на сохраненный телефон владельца Агент звонит в любое время. Сначала подтвердите номер и суть поручения с пользователем.
add_task_noteЗапишите заметку к задаче (что произошло, что дальше). Открытая задача переходит в статус «в работе».
set_task_statusОтметьте задачу как открытую, в работе, выполненную или отмененную.
update_contactИзмените имя, почту, компанию или должность контакта, внесите его в список «не звонить» или уберите из него.
set_agent_onВыключите Агента (он перестает отвечать на звонки и сообщения) или включите его снова.
REST API
Те же возможности из вашего кода
Обычный HTTPS и JSON на тех же инструментах, что и MCP-сервер, поэтому правила доступа и журнал аудита полностью совпадают. Передавайте API-ключ из AgentWaves как bearer-токен.
Что доступно сейчас
- 01Рабочее пространство: тариф, Агенты, номера и последние 7 дней.
- 02Агенты: список, выключение и повторное включение, поиск по знаниям Агента.
- 03Звонки: список и просмотр, поручение позвонить и отслеживание до конца.
- 04Контакты: поиск, просмотр и изменение, включая список «не звонить».
- 05Задачи и поручения: список и просмотр, заметки и смена статуса.
- 06Кампании: список с ходом выполнения.
Дел, целей, документов и одобрений в API пока нет. С ними работайте в приложении.
- Ответ приходит в поле data. Ошибка приходит в поле error с полями code и message, вместе с обычным HTTP-статусом.
- Ключ только для чтения видит лишь эндпоинты чтения. Эндпоинты действий дополнительно проверяют роль человека.
- До 300 запросов в минуту на ключ. Каждое изменение попадает в журнал аудита рабочего пространства.
Пример
curl "https://agentwaves.net/api/v1/calls?days=7" \
-H "Authorization: Bearer $AGENTWAVES_KEY"
curl -X POST https://agentwaves.net/api/v1/call-orders \
-H "Authorization: Bearer $AGENTWAVES_KEY" \
-H "Content-Type: application/json" \
-d '{"agent": "Layla", "phone": "+14155550123", "task": "Confirm the appointment tomorrow at 10:00"}'Рабочее пространство
- GET
/workspaceРабочее пространство, тариф, Агенты, номера, последние 7 дней и что разрешено этому ключуЧтение
Агенты
- GET
/agentsКаждый Агент со статусом, направлением работы, языком и номерамиЧтение - PATCH
/agents/{agent}Выключить Агента или включить сноваДействие - GET
/agents/{agent}/knowledgeПоиск по тому, что Агент знает о бизнесеЧтение
Звонки
- GET
/callsПоследние звонки, от новых к старым, со сводкой и итогомЧтение - GET
/calls/{call_id}Один звонок со сводкой, извлеченными сведениями и расшифровкойЧтение - POST
/call-ordersПоручить Агенту позвонить по номеру сейчас или в назначенное времяДействие - GET
/call-orders/statusНа каком этапе порученный звонок и его итог после завершенияЧтение
Контакты
- GET
/contactsПоиск контактов по имени, телефону, компании или меткеЧтение - GET
/contacts/{contact_id}Один контакт с согласием, памятью, открытыми задачами и последними звонкамиЧтение - PATCH
/contacts/{contact_id}Изменить данные контакта или его статус «не звонить»Действие
Задачи
- GET
/tasksЗадачи по итогам звонков, WhatsApp, писем и порученийЧтение - GET
/tasks/{task_id}Одна задача с заметками, источником и контактомЧтение - PATCH
/tasks/{task_id}Отметить задачу как открытую, в работе, выполненную или отмененнуюДействие - POST
/tasks/{task_id}/notesЗаписать заметку к задачеДействие
Кампании
- GET
/campaignsИсходящие кампании со статусом, Агентом и ходом выполненияЧтение
Вебхуки
Узнавайте об изменениях сразу
AgentWaves отправляет подписанный JSON методом POST в вашу систему, когда меняются звонки, задачи и поручения. Ваша CRM, таблицы и бэк-офис остаются в актуальном состоянии без постоянных опросов. Подписи соответствуют спецификации Standard Webhooks, поэтому их проверяют готовые библиотеки.
- Ответьте любым кодом 2xx в течение 10 секунд. Иначе доставка повторяется через 1 минуту, 5 минут, 30 минут, затем через 2, 5, 10 и 14 часов.
- Одно и то же событие может прийти дважды: пропускайте повторы по webhook-id. Порядок не гарантирован, поэтому ориентируйтесь на метку времени.
- Только публичные адреса https. Эндпоинт, который не отвечает три дня подряд, отключается, и мы сообщаем вам об этом.
- Добавьте эндпоинт в AgentWaves в разделе «Разработчикам», выберите события и скопируйте секрет подписи: он показывается только один раз.
События
call.startedЗвонок начинается, входящий или исходящий.call.endedЗвонок завершен, с длительностью и итогом.call.summarizedСводка звонка и данные, которые собрал Агент, готовы.task.createdСоздана задача по итогам звонка, WhatsApp, письма или поручения.task.updatedЗадача изменилась: статус, ответственный, заметки или срок.order.createdКто-то поручает Агенту позвонить или написать человеку.order.updatedПоручение продвигается: запланировано, идет звонок или новая заметка Агента.order.completedПоручение выполнено или отменено, с последней заметкой Агента.
Что приходит
POST /your/endpoint
webhook-id: evt_3f1c0b9a7d2e4c5b6a7f8e9d
webhook-timestamp: 1792494954
webhook-signature: v1,K5oZfzN95Z9UVu1EsfQmfVNQhnkZ2pj9o9NDN/H/pI4=
{
"id": "evt_3f1c0b9a7d2e4c5b6a7f8e9d",
"type": "call.ended",
"timestamp": "2026-10-20T09:15:54.000Z",
"workspaceId": "cmw1org00001",
"data": {
"id": "cmw1call0001",
"direction": "inbound",
"status": "completed",
"from": "+14155550123",
"to": "+14155550199",
"agent": {
"id": "cmw1agent001",
"name": "Layla"
},
"contact": {
"id": "cmw1contact1",
"name": "Daniel Reyes"
},
"campaignId": null,
"startedAt": "2026-10-20T09:14:02.000Z",
"answeredAt": "2026-10-20T09:14:03.000Z",
"endedAt": "2026-10-20T09:15:54.000Z",
"durationSeconds": 112,
"outcome": "appointment_booked",
"endReason": "caller_hung_up",
"link": "https://agentwaves.net/app/calls/cmw1call0001"
}
}Проверка подписи
import crypto from "node:crypto";
// body: the raw request body, as text, before any JSON parsing.
export function verifyAgentWaves(secret, headers, body) {
const id = headers["webhook-id"];
const ts = headers["webhook-timestamp"];
if (Math.abs(Date.now() / 1000 - Number(ts)) > 300) return false;
const key = Buffer.from(secret.replace("whsec_", ""), "base64");
const expected = "v1," + crypto.createHmac("sha256", key).update(`${id}.${ts}.${body}`).digest("base64");
return headers["webhook-signature"].split(" ").some(
(sig) => sig.length === expected.length && crypto.timingSafeEqual(Buffer.from(sig), Buffer.from(expected)),
);
}Навык для ИИ-приложения
Навык, который учит ИИ-приложение этой работе
Короткий файл SKILL.md, который ИИ-приложение загружает, когда вы спрашиваете о звонках, контактах, задачах или Агентах вашей команды. Он знает, какой инструмент отвечает на какой вопрос, и правила, которые защищают ваших клиентов.
- 01Начинает каждую сессию с get_started, поэтому никогда не угадывает имена
- 02Перед тем как поручить звонок, повторяет номер, Агента и цель
- 03Никогда не звонит контакту из списка «не звонить»
- 04Сообщает, когда порученный звонок ждет вашего одобрения, и следит за ним до конца
Доступ и безопасность
Ваши данные на ваших условиях
Вход через OAuth 2.1
PKCE и динамическая регистрация клиентов. Человек сам выбирает рабочее пространство и уровень доступа и может отозвать его в любой момент.
Только чтение или чтение и действия
Выбирается для каждого приложения или API-ключа. Подключения только для чтения не видят инструментов действий.
Ваша роль по-прежнему действует
Приложение никогда не сможет сделать больше, чем человек, который его подключил.
Каждое действие в журнале
Порученные звонки, измененные задачи и отредактированные контакты записываются на имя человека с пометкой, что действие пришло из ИИ-приложения.
Пусть ваша команда работает в ИИ-приложениях, которыми вы уже пользуетесь.
Выберите тариф, познакомьтесь со своим Руководителем аппарата и подключите Claude или ChatGPT за минуту.
