Речь МКП
Расширение 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:
Linux (Debian/Ubuntu):
Linux (Fedora/RHEL/CentOS):
Windows: Для Windows PortAudio включен в файл PyAudio wheel, поэтому при установке PyAudio с помощью pip отдельная установка не требуется.
Примечание : Если вы пропустите этот шаг, установка PyAudio завершится ошибкой «portaudio.h file not found» и расширение не будет работать.
Вариант 1: Быстрая установка (в один клик)
Если у вас установлен Goose, нажмите на ссылку ниже:
Вариант 2: использование Goose CLI (рекомендуется)
Запустите Goose с включенным расширением:
Вариант 3: Ручная настройка в Goose
- Запустить
goose configure
- Выберите «Добавить расширение» в меню.
- Выберите «Расширение командной строки»
- Введите имя (например, «Речевой интерфейс»)
- Для команды введите:
speech-mcp
- Следуйте инструкциям для завершения настройки.
Вариант 4: Ручная установка
- Установите PortAudio (см. раздел «Предварительные требования» )
- Клонировать этот репозиторий
- Установить зависимости:Или для полной установки, включая Kokoro TTS:
Зависимости
- Питон 3.10+
- PyQt5 (для современного пользовательского интерфейса)
- PyAudio (для захвата звука)
- быстрее-шепот (для преобразования речи в текст)
- NumPy (для обработки звука)
- Pydub (для обработки звука)
- psutil (для управления процессами)
Необязательные зависимости
- Kokoro TTS : для высококачественного преобразования текста в речь с использованием нескольких голосов
- Для установки Kokoro вы можете использовать pip с дополнительными зависимостями:
- Либо запустите скрипт установки:
python scripts/install_kokoro.py
- Более подробную информацию см. в руководстве Kokoro TTS.
- Для установки Kokoro вы можете использовать pip с дополнительными зависимостями:
Озвучивание несколькими говорящими
MCP поддерживает создание аудиофайлов с несколькими голосами, идеально подходит для создания историй, диалогов и драматических чтений. Вы можете использовать формат JSON или Markdown для определения ваших разговоров.
Пример формата JSON:
Пример формата Markdown:
Доступные голоса по категориям:
- Американская женщина (af_*):
- сплав, аоде, белла, сердце, джессика, коре, николь, нова, река, сара, небо
- Американский мужчина (am_*):
- адам, эхо, эрик, фенрир, лиам, майкл, оникс, шайба, санта
- Британская женщина (bf_*):
- алиса, эмма, изабелла, лилия
- Британский мужчина (bm_*):
- Дэниел, басня, Джордж, Льюис
- Другие английские :
- ef_dora (женщина)
- em_alex, em_santa (Мужской)
- Другие языки :
- Французский: ff_siwis
- Хинди: hf_alpha, hf_beta, hm_omega, hm_psi
- Итальянский: if_sara, im_nicola
- Японский: jf_ , jm_
- Португальский: pf_dora, pm_alex, pm_santa
- Китайский: zf_ , zm_
Пример использования:
Каждый голос в разговоре может быть разным, что позволяет использовать отдельные голоса персонажей в историях и диалогах. Параметр pause_after
добавляет естественные паузы между сегментами.
Одноголосное повествование
Для простого преобразования текста в речь вы можете использовать инструмент narrate
:
Инструмент озвучивания будет использовать ваши настроенные голосовые предпочтения или голос по умолчанию (af_heart) для генерации аудиофайла. Вы можете изменить голос по умолчанию через пользовательский интерфейс или установив переменную среды SPEECH_MCP_TTS_VOICE
.
Аудио Транскрипция
MCP может транскрибировать речь из различных аудио- и видеоформатов, используя технологию ускоренного шепота:
Поддерживаемые форматы:
- Аудио : mp3, wav, m4a, flac, aac, ogg
- Видео : mp4, mov, avi, mkv, webm (звук извлекается автоматически)
Выходные файлы:
Инструмент транскрипции генерирует два файла:
{input_name}.transcript.txt
: Содержит текст транскрипции{input_name}.metadata.json
: Содержит метаданные о транскрипции
Функции:
- Автоматическое определение языка
- Дополнительные временные метки на уровне слов
- Дополнительное обнаружение говорящего
- Эффективное извлечение звука из видеофайлов
- Отслеживание прогресса для длинных файлов
- Подробные метаданные, включая:
- Продолжительность
- Уверенность в определении языка
- Время обработки
- Смена говорящего (если включено)
Использование
Чтобы использовать этот MCP с Goose, просто попросите Goose поговорить с вами или начните голосовой разговор:
- Начните разговор, сказав что-то вроде:
- Goose автоматически запустит речевой интерфейс и начнет слушать ваш голосовой ввод.
- Когда Goose отвечает, он произносит ответ вслух, а затем автоматически ожидает вашего следующего ввода.
- Разговор продолжается естественным образом, чередуя говорение и слушание, как будто вы разговариваете с живым человеком.
Нет необходимости вызывать специальные функции или использовать специальные команды — просто попросите Goose заговорить и начните говорить естественно.
Возможности пользовательского интерфейса
Новый пользовательский интерфейс на основе PyQt включает в себя:
- Современная темная тема : элегантный, профессиональный внешний вид
- Визуализация звука : Динамическая визуализация аудиовхода
- Выбор голоса : выберите из 54+ вариантов голоса
- Сохранение голоса : ваши голосовые настройки сохраняются между сеансами.
- Анимированные эффекты : плавная анимация и визуальная обратная связь
- Индикаторы состояния : четкая индикация состояния системы (готовность, прослушивание, обработка)
Конфигурация
Пользовательские настройки хранятся в ~/.config/speech-mcp/config.json
и включают в себя:
- Выбранный голос TTS
- Предпочтение движку TTS
- Скорость речи
- Код языка
- Настройки темы пользовательского интерфейса
Вы также можете задать настройки с помощью переменных среды, например:
SPEECH_MCP_TTS_VOICE
— Установите предпочитаемый голосSPEECH_MCP_TTS_ENGINE
— установите предпочитаемый вами движок TTS
Поиск неисправностей
Если у вас возникли проблемы с зависанием или отсутствием ответа расширения:
- Проверьте журналы : просмотрите файлы журналов в
src/speech_mcp/
на предмет подробных сообщений об ошибках. - Сбросьте состояние : если расширение зависло, попробуйте удалить
src/speech_mcp/speech_state.json
или установить все состояния наfalse
. - Используйте прямую команду : вместо
uv run speech-mcp
используйте установленный пакет сspeech-mcp
напрямую. - Проверьте аудиоустройства : убедитесь, что ваш микрофон правильно настроен и доступен для Python.
- Проверьте зависимости : убедитесь, что все необходимые зависимости установлены правильно.
Распространенные проблемы с PortAudio
«Установка PyAudio не удалась» или «файл portaudio.h не найден»
Обычно это означает, что PortAudio не установлен или не найден в вашей системе:
- macOS :
- Linux : Убедитесь, что у вас установлены пакеты разработки:
«Аудиоустройство не найдено» или «Нет доступного устройства ввода по умолчанию»
- Проверьте, правильно ли подключен ваш микрофон.
- Убедитесь, что ваша система распознает микрофон в настройках звука.
- Попробуйте выбрать определенный индекс устройства в коде, если у вас несколько аудиоустройств.
Журнал изменений
Подробный список последних улучшений и историю версий смотрите в журнале изменений .
Технические подробности
Речь в текст
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 .
Лицензия
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Расширение Goose MCP, обеспечивающее голосовое взаимодействие с современной аудиовизуализацией, позволяя пользователям общаться с Goose посредством речи, а не текста.
- Обзор
- Функции
- Установка
- ⚠️ ВАЖНЫЕ ПРЕДВАРИТЕЛЬНЫЕ УСЛОВИЯ ⚠️
- Зависимости
- Озвучивание несколькими говорящими
- Одноголосное повествование
- Аудио Транскрипция
- Использование
- Возможности пользовательского интерфейса
- Конфигурация
- Поиск неисправностей
- Журнал изменений
- Технические подробности
- Лицензия
Related Resources
Related MCP Servers
- -securityAlicense-qualityEnables 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 -4PythonMIT License
- -securityAlicense-qualityA 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 -TypeScriptMIT License
- -securityAlicense-qualityA MCP server that creates graphic recordings by converting websites or text input into visual summaries using different prompt styles (standard, elementary, timeline).Last updated -TypeScriptMIT License
- -security-license-qualityAn 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 -1JavaScriptMIT License