Перейти к основному содержимому

Инструменты MCP-коннектора

Коннектор https://mcp.alphasms.ua/mcp отдаёт ассистенту 11 инструментов. Инструменты чтения выполняются сразу; инструменты отправки требуют confirm: true — без него коннектор отвечает отказом и в API не обращается.

Каждый вызов — JSON-RPC методом POST, ключ в заголовке Authorization. Коды, которые возвращает message_status, совпадают с обычным API — см. Статусы сообщений.

Чтение

balance

Остаток на счету и валюта.

Параметры

Параметров нет.

Пример запроса

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "balance",
"arguments": {}
}
}

senders_list

Зарегистрированные имена отправителя со статусом каждого. Отправлять можно только с активного имени.

Параметры

Параметров нет.

Пример запроса

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "senders_list",
"arguments": {}
}
}

message_status

Статус отправленного сообщения. Возвращает числовой код и расшифровку.

Пример запроса

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "message_status",
"arguments": {
"id": 1730112045
}
}
}

hlr_lookup

HLR-запрос: существует ли номер, в какой он сети, не перенесён ли к другому оператору. Услуга платная — один запрос на номер.

Пример запроса

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "hlr_lookup",
"arguments": {
"phone": "380671234567"
}
}
}

Отправка

Общее для всех отправок

confirm: true обязателен. Один вызов — один номер, массовых рассылок нет. phone — только цифры в международном формате, имя отправителя должно быть зарегистрировано и активно. В ответе приходит идентификатор, а не факт доставки: статус спрашивайте через message_status.

send_sms

Одно SMS на один номер. 160 символов латиницей или 70 кириллицей в первом сообщении, дальше делится на части, каждая тарифицируется отдельно.

Пример запроса

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "send_sms",
"arguments": {
"phone": "380671234567",
"signature": "ALPHASMS",
"message": "Ваш код 1234",
"confirm": true
}
}
}

send_viber

Одно сообщение в Viber. Тип коннектор собирает сам по переданным полям: текст, текст с картинкой или текст с картинкой и кнопкой.

Пример запроса

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "send_viber",
"arguments": {
"phone": "380671234567",
"signature": "AlphaSMS",
"message": "Ваш заказ отправлен",
"image": "https://example.com/promo.jpg",
"link": "https://example.com/order/42",
"button": "Отследить",
"confirm": true
}
}
}

send_viber_with_sms_fallback

Каскад: сначала Viber, если он не доставлен — SMS. Списывается за то, что реально ушло, поэтому недоставленный Viber с досылкой стоит дороже одиночного SMS. Тексты задаются отдельно — в SMS обычно нужен более короткий.

Пример запроса

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "send_viber_with_sms_fallback",
"arguments": {
"phone": "380671234567",
"viber_signature": "AlphaSMS",
"viber_message": "Ваш заказ отправлен, отследить: https://example.com/order/42",
"sms_signature": "ALPHASMS",
"sms_message": "Заказ отправлен",
"confirm": true
}
}
}

send_rcs

Одно сообщение RCS. Доходит только на устройства с поддержкой RCS — для остальных нужен отдельный запасной канал.

Пример запроса

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "send_rcs",
"arguments": {
"phone": "380671234567",
"signature": "AlphaSMS",
"message": "Ваш код 1234",
"confirm": true
}
}
}

send_voice

Синтезированный голосовой вызов с зачитыванием текста.

Пример запроса

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "send_voice",
"arguments": {
"phone": "380671234567",
"message": "Ваш код подтверждения: 1 2 3 4",
"language": "uk",
"confirm": true
}
}
}

send_whatsapp

Работает, только если получатель ранее написал первым или дал согласие, и требует отдельно зарегистрированного имени и верифицированного аккаунта Facebook.

Пример запроса

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "send_whatsapp",
"arguments": {
"phone": "380671234567",
"message": "Ваш заказ готов к выдаче",
"confirm": true
}
}
}

send_verification_code

Отправляет одноразовый код и сам его генерирует. У операции отдельный адрес и свой набор полей: возвращается verify_id, по которому код потом сверяется.

Пример запроса

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "send_verification_code",
"arguments": {
"phone": "380671234567",
"signature": "AlphaSMS",
"channel": "sms",
"confirm": true
}
}
}

Ошибки

Коннектор передаёт ошибки API как есть, без переформулирования. Частые случаи: