Skip to main content
Glama
theYahia

salutespeech-mcp

by theYahia

SaluteSpeech MCP — распознавание и синтез русской речи для ИИ-ассистента

Если вы искали, как расшифровать созвон или голосовое сообщение в текст, озвучить текст голосом Сбера или подключить русский speech-to-text к Claude без собственного бэкенда — это оно. 5 инструментов поверх Sber SaluteSpeech API: распознавание речи (STT) и синтез речи (TTS).

npm License: MIT

Часть серии WWmcp (46 серверов) от @theYahia.

Установка

Claude Desktop

{
  "mcpServers": {
    "salutespeech": {
      "command": "npx",
      "args": ["-y", "@theyahia/salutespeech-mcp"],
      "env": { "SALUTESPEECH_API_KEY": "your-base64-key" }
    }
  }
}

Claude Code

claude mcp add salutespeech -e SALUTESPEECH_API_KEY=your-key -- npx -y @theyahia/salutespeech-mcp

Режим Streamable HTTP

SALUTESPEECH_API_KEY=your-key npx @theyahia/salutespeech-mcp --http --port=3000
# POST http://localhost:3000/mcp
# GET  http://localhost:3000/health

Авторизация

Три варианта (проверяются по порядку):

Переменная

Формат

SALUTESPEECH_API_KEY

Base64 от строки client_id:client_secret

SALUTE_AUTH_KEY

То же самое (устаревший алиас)

SALUTE_SPEECH_CLIENT_ID + SALUTE_SPEECH_CLIENT_SECRET

Сырые учётные данные (кодируются автоматически)

OAuth-токены запрашиваются и обновляются автоматически. Scope по умолчанию — SALUTE_SPEECH_PERS (физлица); для корпоративных аккаунтов задайте SALUTE_SPEECH_SCOPE (SALUTE_SPEECH_CORP — постоплата, SALUTE_SPEECH_B2B — предоплата). Учётные данные выдаются на developers.sber.ru.

Инструменты (5)

Инструмент

Описание

recognize_speech

Распознавание речи из аудио в Base64

synthesize_speech

Синтез речи, возвращает аудио в Base64

list_models

Список моделей распознавания и голосов синтеза

get_task_status

Статус асинхронной задачи распознавания

recognize_file

Распознавание речи из локального файла по пути

Навыки (Skills)

  • skill-transcribe — пошаговый сценарий расшифровки аудио

  • skill-synthesize — пошаговый сценарий синтеза речи

Примеры

Расшифруй аудиофайл /tmp/meeting.wav
Озвучь «Привет, мир» голосом Bys_24000 в формате wav16
Покажи доступные голоса

Ограничения

recognize_speech и recognize_file работают через синхронный эндпоинт с лимитом 2 МБ / 1 минута аудио (файл больше — HTTP 413). Для многоканального аудио распознаётся только первый канал. Длинные записи требуют асинхронного сценария (data:uploadspeech:async_recognizetask:getdata:download) — он пока не вынесен в инструменты; шаг опроса статуса покрывает get_task_status.

Текст для синтеза ограничен 4000 символами (включая пробелы и SSML-разметку).

Решение проблем

self-signed certificate in certificate chain / UNABLE_TO_VERIFY_LEAF_SIGNATURE

Эндпоинты Сбера используют Russian Trusted Root CA (НУЦ Минцифры), которого нет в дефолтном хранилище доверенных корневых сертификатов Node.js — поэтому самый первый OAuth-запрос падает, пока вы его не добавите.

Решение: скачайте корневой сертификат (russian_trusted_root_ca_pem.crt) с gosuslugi.ru/crt и укажите его Node.js:

export NODE_EXTRA_CA_CERTS=/path/to/russian_trusted_root_ca_pem.crt

В MCP-клиенте добавьте эту переменную в блок env сервера. Не ставьте NODE_TLS_REJECT_UNAUTHORIZED=0 в продакшене — это полностью отключает проверку TLS. Официальная инструкция: сертификаты SaluteSpeech.

Лицензия

MIT


Часть WWmcp · Telegram: @vhodvai