Skip to main content
Glama
yangsenessa

Voice Recognition MCP Service

by yangsenessa

Служба распознавания голоса MCP

Эта служба обеспечивает возможности распознавания голоса и извлечения текста как в режимах stdio, так и в режимах MCP.

Функции

  • Распознавание голоса из файла

  • Распознавание голоса из данных, закодированных в base64

  • Извлечение текста

  • Поддержка режимов stdio и MCP

  • Структурированные результаты распознавания голоса

Related MCP server: GhostMinutes MCP

Структура проекта

  • voice_service.py — реализация основного сервиса

  • stdio_server.py - точка входа в режим stdio

  • mcp_server.py — точка входа в режим MCP

  • build.py — скрипт сборки исполняемых файлов

  • build_exec.sh — скрипт выполнения сборки

  • test_*.sh — тестовые скрипты для различных функций

Установка

  1. Клонируйте репозиторий:

git clone https://github.com/AIO-2030/mcp_voice_identify.git
cd mcp_voice_identify
  1. Установите зависимости:

pip install -r requirements.txt
  1. Настройте переменные среды в .env :

API_URL=your_api_url
API_KEY=your_api_key

Использование

Режим stdio

  1. Запустите службу:

python stdio_server.py
  1. Отправляйте запросы JSON-RPC через stdin:

{
    "jsonrpc": "2.0",
    "method": "help",
    "params": {},
    "id": 1
}
  1. Или используйте исполняемый файл:

./dist/voice_stdio

Режим МКП

  1. Запустите службу:

python mcp_server.py
  1. Или используйте исполняемый файл:

./dist/voice_mcp

Результаты распознавания голоса

Сервис предоставляет структурированные результаты распознавания голоса. Вот пример формата ответа:

Исходный ответ API

{
    "jsonrpc": "2.0",
    "result": {
        "message": "input processed successfully",
        "results": "test test test",
        "label_result": "<|en|><|EMO_UNKNOWN|><|Speech|><|woitn|>test test test"
    },
    "id": 1
}

Реструктурированный ответ

{
    "jsonrpc": "2.0",
    "result": {
        "message": "input processed successfully",
        "results": "test test test",
        "label_result": {
            "lan": "en",
            "emo": "unknown",
            "type": "speech",
            "speaker": "woitn",
            "text": "test test test"
        }
    },
    "id": 1
}

Поля результатов метки

Поле label_result содержит следующую структурированную информацию:

Поле

Описание

Пример значения

лан

Код языка

"ru"

эмо

Эмоциональное состояние

"неизвестный"

тип

Тип аудио

"речь"

спикер

Идентификатор говорящего

"woitn"

текст

Распознанное текстовое содержимое

"тест тест тест"

Специальные этикетки

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

  • <|en|> - Код языка

  • <|EMO_UNKNOWN|> - Состояние эмоций

  • <|Speech|> - Тип аудио

  • <|woitn|> - Идентификатор говорящего

Создание исполняемых файлов

  1. Сделайте скрипт сборки исполняемым:

chmod +x build_exec.sh
  1. Собрать исполняемый файл в режиме stdio:

./build_exec.sh
  1. Собрать исполняемый файл режима MCP:

./build_exec.sh mcp

Исполняемые файлы будут созданы по адресу:

  • режим stdio: dist/voice_stdio

  • Режим MCP: dist/voice_mcp

Тестирование

Запустите тестовые скрипты:

chmod +x test_*.sh
./test_help.sh
./test_voice_file.sh
./test_voice_base64.sh

Лицензия

Данный проект лицензирован по лицензии MIT — подробности см. в файле LICENSE.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    A powerful speech-to-text MCP server that supports multiple audio formats and recognition engines including remote APIs (Bailian, OpenAI Whisper, iFLYTEK), Google Speech Recognition, and CMU Sphinx.
    1
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    A high-performance speech recognition MCP server based on Faster Whisper, providing efficient audio transcription capabilities with support for multiple model sizes, batch processing, and various output formats.
    17
    -