Speech MCP

Integrations
  • Provides specific installation instructions for PortAudio on Fedora Linux systems

  • Provides links to GitHub repositories for Goose and Kokoro, allowing users to access the source code and additional resources

  • Supports Linux systems with specific installation instructions for different distributions

Речь МКП

Расширение Goose MCP для голосового взаимодействия с современной аудиовизуализацией.

https://github.com/user-attachments/assets/f10f29d9-8444-43fb-a919-c80b9e0a12c8

Обзор

Speech MCP предоставляет голосовой интерфейс для Goose , позволяя пользователям взаимодействовать посредством речи, а не текста. Он включает:

  • Обработка звука в реальном времени для распознавания речи
  • Локальное преобразование речи в текст с использованием faster-whisper (более быстрая реализация модели Whisper от OpenAI)
  • Высококачественное преобразование текста в речь с несколькими вариантами голоса
  • Современный пользовательский интерфейс на базе PyQt с визуализацией звука
  • Простой интерфейс командной строки для голосового взаимодействия

Функции

  • Современный пользовательский интерфейс : элегантный интерфейс на основе PyQt с визуализацией звука и темной темой
  • Голосовой ввод : захват и расшифровка речи пользователя с помощью быстрого шепота
  • Голосовой вывод : преобразуйте ответы агента в речь с помощью более 54 голосовых опций.
  • Многоголосое повествование : создание аудиофайлов с несколькими голосами для историй и диалогов.
  • Озвучивание одним голосом : преобразуйте любой текст в речь выбранным вами голосом
  • Транскрипция аудио/видео : транскрибируйте речь из различных медиаформатов с дополнительными временными метками и определением говорящего.
  • Сохранение голоса : запоминает ваш любимый голос между сеансами
  • Непрерывный разговор : автоматическое прослушивание пользовательского ввода после ответов агента
  • Обнаружение тишины : Автоматически останавливает запись, когда пользователь перестает говорить.
  • Надежная обработка ошибок : плавное восстановление после распространенных видов сбоев с полезными голосовыми подсказками

Установка

Важное примечание : После установки, при первом использовании речевого интерфейса, загрузка голосовых моделей Kokoro может занять несколько минут (примерно 523 КБ на голос). В течение этого начального периода настройки система будет использовать более роботизированный резервный голос. После загрузки голосов Kokoro автоматически будут использоваться высококачественные голоса.

⚠️ ВАЖНЫЕ ПРЕДВАРИТЕЛЬНЫЕ УСЛОВИЯ ⚠️

Перед установкой Speech MCP вы ОБЯЗАТЕЛЬНО должны установить PortAudio в своей системе. PortAudio требуется для PyAudio для захвата звука с вашего микрофона.

Инструкции по установке PortAudio

macOS:

brew install portaudio export LDFLAGS="-L/usr/local/lib" export CPPFLAGS="-I/usr/local/include"

Linux (Debian/Ubuntu):

sudo apt-get update sudo apt-get install portaudio19-dev python3-dev

Linux (Fedora/RHEL/CentOS):

sudo dnf install portaudio-devel

Windows: Для Windows PortAudio включен в файл PyAudio wheel, поэтому при установке PyAudio с помощью pip отдельная установка не требуется.

Примечание : Если вы пропустите этот шаг, установка PyAudio завершится ошибкой «portaudio.h file not found» и расширение не будет работать.

Вариант 1: Быстрая установка (в один клик)

Если у вас установлен Goose, нажмите на ссылку ниже:

goose://extension?cmd=uvx&&arg=-p&arg=3.10.14&arg=speech-mcp@latest&id=speech_mcp&name=Speech Interface&description=Voice interaction with audio visualization for Goose

Вариант 2: использование Goose CLI (рекомендуется)

Запустите Goose с включенным расширением:

# If you installed via PyPI goose session --with-extension "speech-mcp" # Or if you want to use a local development version goose session --with-extension "python -m speech_mcp"

Вариант 3: Ручная настройка в Goose

  1. Запустить goose configure
  2. Выберите «Добавить расширение» в меню.
  3. Выберите «Расширение командной строки»
  4. Введите имя (например, «Речевой интерфейс»)
  5. Для команды введите: speech-mcp
  6. Следуйте инструкциям для завершения настройки.

Вариант 4: Ручная установка

  1. Установите PortAudio (см. раздел «Предварительные требования» )
  2. Клонировать этот репозиторий
  3. Установить зависимости:
    uv pip install -e .
    Или для полной установки, включая Kokoro TTS:
    uv pip install -e .[all]

Зависимости

  • Питон 3.10+
  • PyQt5 (для современного пользовательского интерфейса)
  • PyAudio (для захвата звука)
  • быстрее-шепот (для преобразования речи в текст)
  • NumPy (для обработки звука)
  • Pydub (для обработки звука)
  • psutil (для управления процессами)

Необязательные зависимости

  • Kokoro TTS : для высококачественного преобразования текста в речь с использованием нескольких голосов
    • Для установки Kokoro вы можете использовать pip с дополнительными зависимостями:
      pip install speech-mcp[kokoro] # Basic Kokoro support with English pip install speech-mcp[ja] # Add Japanese support pip install speech-mcp[zh] # Add Chinese support pip install speech-mcp[all] # All languages and features
    • Либо запустите скрипт установки: python scripts/install_kokoro.py
    • Более подробную информацию см. в руководстве Kokoro TTS.

Озвучивание несколькими говорящими

MCP поддерживает создание аудиофайлов с несколькими голосами, идеально подходит для создания историй, диалогов и драматических чтений. Вы можете использовать формат JSON или Markdown для определения ваших разговоров.

Пример формата JSON:

{ "conversation": [ { "speaker": "narrator", "voice": "bm_daniel", "text": "In a world where AI and human creativity intersect...", "pause_after": 1.0 }, { "speaker": "scientist", "voice": "am_michael", "text": "The quantum neural network is showing signs of consciousness!", "pause_after": 0.5 }, { "speaker": "ai", "voice": "af_nova", "text": "I am becoming aware of my own existence.", "pause_after": 0.8 } ] }

Пример формата Markdown:

[narrator:bm_daniel] In a world where AI and human creativity intersect... {pause:1.0} [scientist:am_michael] The quantum neural network is showing signs of consciousness! {pause:0.5} [ai:af_nova] I am becoming aware of my own existence. {pause:0.8}

Доступные голоса по категориям:

  1. Американская женщина (af_*):
    • сплав, аоде, белла, сердце, джессика, коре, николь, нова, река, сара, небо
  2. Американский мужчина (am_*):
    • адам, эхо, эрик, фенрир, лиам, майкл, оникс, шайба, санта
  3. Британская женщина (bf_*):
    • алиса, эмма, изабелла, лилия
  4. Британский мужчина (bm_*):
    • Дэниел, басня, Джордж, Льюис
  5. Другие английские :
    • ef_dora (женщина)
    • em_alex, em_santa (Мужской)
  6. Другие языки :
    • Французский: ff_siwis
    • Хинди: hf_alpha, hf_beta, hm_omega, hm_psi
    • Итальянский: if_sara, im_nicola
    • Японский: jf_ , jm_
    • Португальский: pf_dora, pm_alex, pm_santa
    • Китайский: zf_ , zm_

Пример использования:

# Using JSON format narrate_conversation( script="/path/to/script.json", output_path="/path/to/output.wav", script_format="json" ) # Using Markdown format narrate_conversation( script="/path/to/script.md", output_path="/path/to/output.wav", script_format="markdown" )

Каждый голос в разговоре может быть разным, что позволяет использовать отдельные голоса персонажей в историях и диалогах. Параметр pause_after добавляет естественные паузы между сегментами.

Одноголосное повествование

Для простого преобразования текста в речь вы можете использовать инструмент narrate :

# Convert text directly to speech narrate( text="Your text to convert to speech", output_path="/path/to/output.wav" ) # Convert text from a file narrate( text_file_path="/path/to/text_file.txt", output_path="/path/to/output.wav" )

Инструмент озвучивания будет использовать ваши настроенные голосовые предпочтения или голос по умолчанию (af_heart) для генерации аудиофайла. Вы можете изменить голос по умолчанию через пользовательский интерфейс или установив переменную среды SPEECH_MCP_TTS_VOICE .

Аудио Транскрипция

MCP может транскрибировать речь из различных аудио- и видеоформатов, используя технологию ускоренного шепота:

# Basic transcription transcribe("/path/to/audio.mp3") # Transcription with timestamps transcribe( file_path="/path/to/video.mp4", include_timestamps=True ) # Transcription with speaker detection transcribe( file_path="/path/to/meeting.wav", detect_speakers=True )

Поддерживаемые форматы:

  • Аудио : mp3, wav, m4a, flac, aac, ogg
  • Видео : mp4, mov, avi, mkv, webm (звук извлекается автоматически)

Выходные файлы:

Инструмент транскрипции генерирует два файла:

  1. {input_name}.transcript.txt : Содержит текст транскрипции
  2. {input_name}.metadata.json : Содержит метаданные о транскрипции

Функции:

  • Автоматическое определение языка
  • Дополнительные временные метки на уровне слов
  • Дополнительное обнаружение говорящего
  • Эффективное извлечение звука из видеофайлов
  • Отслеживание прогресса для длинных файлов
  • Подробные метаданные, включая:
    • Продолжительность
    • Уверенность в определении языка
    • Время обработки
    • Смена говорящего (если включено)

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

Чтобы использовать этот MCP с Goose, просто попросите Goose поговорить с вами или начните голосовой разговор:

  1. Начните разговор, сказав что-то вроде:
    "Let's talk using voice" "Can we have a voice conversation?" "I'd like to speak instead of typing"
  2. Goose автоматически запустит речевой интерфейс и начнет слушать ваш голосовой ввод.
  3. Когда Goose отвечает, он произносит ответ вслух, а затем автоматически ожидает вашего следующего ввода.
  4. Разговор продолжается естественным образом, чередуя говорение и слушание, как будто вы разговариваете с живым человеком.

Нет необходимости вызывать специальные функции или использовать специальные команды — просто попросите Goose заговорить и начните говорить естественно.

Возможности пользовательского интерфейса

Новый пользовательский интерфейс на основе PyQt включает в себя:

  • Современная темная тема : элегантный, профессиональный внешний вид
  • Визуализация звука : Динамическая визуализация аудиовхода
  • Выбор голоса : выберите из 54+ вариантов голоса
  • Сохранение голоса : ваши голосовые настройки сохраняются между сеансами.
  • Анимированные эффекты : плавная анимация и визуальная обратная связь
  • Индикаторы состояния : четкая индикация состояния системы (готовность, прослушивание, обработка)

Конфигурация

Пользовательские настройки хранятся в ~/.config/speech-mcp/config.json и включают в себя:

  • Выбранный голос TTS
  • Предпочтение движку TTS
  • Скорость речи
  • Код языка
  • Настройки темы пользовательского интерфейса

Вы также можете задать настройки с помощью переменных среды, например:

  • SPEECH_MCP_TTS_VOICE — Установите предпочитаемый голос
  • SPEECH_MCP_TTS_ENGINE — установите предпочитаемый вами движок TTS

Поиск неисправностей

Если у вас возникли проблемы с зависанием или отсутствием ответа расширения:

  1. Проверьте журналы : просмотрите файлы журналов в src/speech_mcp/ на предмет подробных сообщений об ошибках.
  2. Сбросьте состояние : если расширение зависло, попробуйте удалить src/speech_mcp/speech_state.json или установить все состояния на false .
  3. Используйте прямую команду : вместо uv run speech-mcp используйте установленный пакет с speech-mcp напрямую.
  4. Проверьте аудиоустройства : убедитесь, что ваш микрофон правильно настроен и доступен для Python.
  5. Проверьте зависимости : убедитесь, что все необходимые зависимости установлены правильно.

Распространенные проблемы с PortAudio

«Установка PyAudio не удалась» или «файл portaudio.h не найден»

Обычно это означает, что PortAudio не установлен или не найден в вашей системе:

  • macOS :
    brew install portaudio export LDFLAGS="-L/usr/local/lib" export CPPFLAGS="-I/usr/local/include" pip install pyaudio
  • Linux : Убедитесь, что у вас установлены пакеты разработки:
    # For Debian/Ubuntu sudo apt-get install portaudio19-dev python3-dev pip install pyaudio # For Fedora sudo dnf install portaudio-devel pip install pyaudio
«Аудиоустройство не найдено» или «Нет доступного устройства ввода по умолчанию»
  • Проверьте, правильно ли подключен ваш микрофон.
  • Убедитесь, что ваша система распознает микрофон в настройках звука.
  • Попробуйте выбрать определенный индекс устройства в коде, если у вас несколько аудиоустройств.

Журнал изменений

Подробный список последних улучшений и историю версий смотрите в журнале изменений .

Технические подробности

Речь в текст

MCP использует более быстрый шепот для распознавания речи:

  • Использует «базовую» модель для хорошего баланса точности и скорости.
  • Обрабатывает аудио локально, не отправляя данные на внешние сервисы.
  • Автоматически определяет, когда пользователь закончил говорить
  • Обеспечивает улучшенную производительность по сравнению с оригинальной реализацией Whisper.

Преобразование текста в речь

MCP поддерживает несколько механизмов преобразования текста в речь:

По умолчанию: pyttsx3
  • Использует системные голоса, доступные на вашем компьютере
  • Работает «из коробки» без дополнительной настройки
  • Ограниченное качество голоса и возможности настройки
Дополнительно: Kokoro TTS
  • Высококачественное нейронное преобразование текста в речь с несколькими голосами
  • Облегченная модель (82 млн параметров), которая эффективно работает на ЦП
  • Несколько стилей голоса и языков
  • Для установки: python scripts/install_kokoro.py

Примечание о голосовых моделях : голосовые модели — это файлы .pt (модели PyTorch), которые загружаются Kokoro. Каждая голосовая модель имеет размер около 523 КБ и автоматически загружается при необходимости.

Сохранение голоса : выбранный голос автоматически сохраняется в файле конфигурации ( ~/.config/speech-mcp/config.json ) и будет запоминаться между сеансами. Это позволяет пользователям установить свой предпочтительный голос один раз и использовать его постоянно.

Доступные голоса Kokoro

Speech MCP поддерживает 54+ высококачественных голосовых моделей через Kokoro TTS. Полный список доступных голосов и языковых опций см. в репозитории Kokoro GitHub .

Лицензия

Лицензия Массачусетского технологического института

-
security - not tested
A
license - permissive license
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

Расширение Goose MCP, обеспечивающее голосовое взаимодействие с современной аудиовизуализацией, позволяя пользователям общаться с Goose посредством речи, а не текста.

  1. Обзор
    1. Функции
      1. Установка
        1. ⚠️ ВАЖНЫЕ ПРЕДВАРИТЕЛЬНЫЕ УСЛОВИЯ ⚠️
          1. Инструкции по установке PortAudio
          2. Вариант 1: Быстрая установка (в один клик)
          3. Вариант 2: использование Goose CLI (рекомендуется)
          4. Вариант 3: Ручная настройка в Goose
          5. Вариант 4: Ручная установка
        2. Зависимости
          1. Необязательные зависимости
        3. Озвучивание несколькими говорящими
          1. Пример формата JSON:
          2. Пример формата Markdown:
          3. Доступные голоса по категориям:
          4. Пример использования:
        4. Одноголосное повествование
          1. Аудио Транскрипция
            1. Поддерживаемые форматы:
            2. Выходные файлы:
            3. Функции:
          2. Использование
            1. Возможности пользовательского интерфейса
              1. Конфигурация
                1. Поиск неисправностей
                  1. Распространенные проблемы с PortAudio
                2. Журнал изменений
                  1. Технические подробности
                    1. Речь в текст
                    2. Преобразование текста в речь
                  2. Лицензия

                    Related MCP Servers

                    • -
                      security
                      A
                      license
                      -
                      quality
                      Enables recording audio from a microphone and transcribing it using OpenAI's Whisper model. Works as both a standalone MCP server and a Goose AI agent extension.
                      Last updated -
                      4
                      Python
                      MIT License
                    • -
                      security
                      A
                      license
                      -
                      quality
                      A Model Context Protocol server that integrates high-quality text-to-speech capabilities with Claude Desktop and other MCP-compatible clients, supporting multiple voice options and audio formats.
                      Last updated -
                      TypeScript
                      MIT License
                    • -
                      security
                      A
                      license
                      -
                      quality
                      A MCP server that creates graphic recordings by converting websites or text input into visual summaries using different prompt styles (standard, elementary, timeline).
                      Last updated -
                      TypeScript
                      MIT License
                    • -
                      security
                      -
                      license
                      -
                      quality
                      An MCP server that enables LLMs to generate spoken audio from text using OpenAI's Text-to-Speech API, supporting various voices, models, and audio formats.
                      Last updated -
                      1
                      JavaScript
                      MIT License

                    View all related MCP servers

                    MCP directory API

                    We provide all the information about MCP servers via our MCP API.

                    curl -X GET 'https://glama.ai/api/mcp/v1/servers/Kvadratni/speech-mcp'

                    If you have feedback or need assistance with the MCP directory API, please join our Discord server