Skip to main content
Glama

speak

Попросите Claude зачитать свой ответ вслух.

Это не просто озвучка сырого ответа. Вы говорите «прочитай это мне просто», и Claude переписывает сказанное в короткий устный скрипт, а затем воспроизводит его. Скрипт никогда не появляется в чате. Это разговор между вами и моделью, где текст не мешает.

Работает в Claude Code уже сегодня. Часть воспроизведения — это обычный MCP-сервер, поэтому он также подключается к Claude Desktop, Cursor или любому MCP-клиенту.

Что вы получаете

  • MCP-сервер speak с инструментами speak, stop, pause, resume, back, skip, add_pronunciation, list_pronunciations, list_voices, set_default

  • Плавающий оверлей на macOS, пока говорит Claude: небольшая «пилюля» над каждым окном с живой волновой формой, назад на одно предложение, пропустить одно предложение, пауза и возобновление с точной позиции, остановка

  • Скилл /speak для Claude Code со стилями: simple (по умолчанию), brief, decisions, full, eli5

  • Авто-озвучка: хук Stop, который читает brief-скрипт после каждого ответа, по умолчанию выключен

  • CLI speak: echo "hello" | speak

  • Команды Raycast: Speak читает выделенный текст как есть, Speak Simply сначала переписывает его с помощью claude -p в короткое устное резюме, Speak Translated сначала переводит его (по умолчанию на английский; введите другой язык как аргумент команды или задайте SPEAK_TRANSLATE_LANGUAGE для изменения значения по умолчанию). Перевод не на английском читается подходящим установленным голосом macOS, сначала лучший доступный (Premium, затем Enhanced, затем компактный); для английского ваш обычный голос не изменяется. Загрузите голос Premium для языка в System Settings > Accessibility > Read & Speak > System Voice > Manage Voices, чтобы получить хороший. Speak Stop останавливает. Они копируют выделение с помощью имитации Cmd+C, поэтому Raycast требует разрешения на доступность.

Related MCP server: MCP Audio Server

Движки

Движок

Стоимость

Требования

Примечания

say

бесплатно

macOS

По умолчанию. Загрузите голос Premium или Enhanced в System Settings > Accessibility > Spoken Content для хорошего качества. Установите голос Siri как системный по умолчанию, и простой say будет использовать его.

edge

бесплатно

сеть

Нейронные голоса Microsoft через edge-tts-universal. Очень хорошее качество. Неофициальный API.

kokoro

бесплатно

npm i kokoro-js, ~300MB модель при первом запуске

Локальный нейронный TTS, работает на CPU.

openai

платно

OPENAI_API_KEY

gpt-4o-mini-tts.

elevenlabs

бесплатный тариф

ELEVENLABS_API_KEY

eleven_flash_v2_5.

Выбор голоса на macOS

Движок say по умолчанию использует системный голос вашего Mac, поэтому настройте его один раз в macOS, и каждое чтение будет использовать его:

  1. Откройте System Settings > Accessibility > Read & Speak (в старых версиях — Spoken Content).

  2. В разделе System Voice выберите голос. Apple поставляет большую библиотеку для каждого языка; голоса Premium и Enhanced загружаются по требованию и звучат значительно лучше компактных по умолчанию. Здесь также можно выбрать голоса Siri.

  3. Установите скорость речи по своему вкусу.

Произношение

Скажите Claude в чате:

  • "произноси fancyapp как fan-see-app с этого момента"

  • "какие произношения вы сохранили"

Они хранятся в ~/.config/speak/pronunciations.json (переопределите папку с помощью SPEAK_CONFIG_DIR), сопоставляются по полному слову и без учёта регистра и применяются к каждому чтению:

{
  "fancyapp": "fan-see-app",
  "OAuth": "oh auth"
}

Ссылки и электронные письма читаются вслух: https://example.com/login превращается в «example dot com slash login», jane@example.de — в «jane at example dot d e». Короткие окончания, такие как de, io, co.uk, произносятся по буквам, поскольку «de», прочитанное как слово, звучит как «дух».

Слова с двумя произношениями («live», «read», «lead») нельзя исправить списком слов. Скилл подсказывает Claude переписать их в скрипте, чтобы голос не ошибся: «lyive» для live в значении «живой», «red» для read в прошедшем времени, «led» для металла. В скилле есть таблица типичных слов-нарушителей, и он проверяет скрипт по ней перед озвучиванием.

Оставьте SPEAK_VOICE неустановленным, чтобы следовать системному голосу, или задайте имя голоса из say -v ?, чтобы переопределить его только для Claude.

Первый доступный движок выигрывает, если вы не зададите SPEAK_ENGINE. SPEAK_VOICE задаёт голос. Оба можно изменить для сеанса с помощью инструмента set_default («переключиться на движок edge»).

Установка

Задайте RAYCAST_SCRIPTS_DIR в каталог, уже добавленный в Raycast (Settings > Extensions > Script Commands), и команды будут связаны с ним. Без этого добавьте raycast/ из этого репозитория вручную один раз.

RAYCAST_SCRIPTS_DIR=~/raycast-scripts ./install.sh

Требуется Node 20+, jq и Claude Code.

git clone https://github.com/CareyScott/speak
cd speak
./install.sh

Это собирает сервер и вспомогательную программу оверлея для macOS (требуется swiftc из инструментов командной строки Xcode), регистрирует MCP-сервер в области пользователя, связывает скилл с ~/.claude/skills, добавляет хук Stop в ~/.claude/settings.json и связывает speak и speak-auto с ~/.local/bin.

Перезапустите Claude Code.

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

Поговорите с Claude:

  • "прочитай это мне"

  • "скажи просто"

  • "что тебе нужно от меня, вслух"

  • "/speak decisions"

  • "стоп"

Авто-озвучка после каждого ответа:

speak-auto on            # brief style
speak-auto on decisions  # only the questions for you
speak-auto off

Пока он говорит, используйте оверлей или просто скажите:

  • "пауза", "продолжить", "назад на одно предложение", "пропустить", "стоп"

Пауза удерживает точную позицию. Возобновление продолжает с неё. «Назад» повторяет предыдущее предложение. «Пропустить» переходит к следующему. Ничего не произносится о паузе или возобновлении; это просто происходит.

Выберите движок или голос:

export SPEAK_ENGINE=edge
export SPEAK_VOICE=en-IE-ConnorNeural

Или в чате: «перечисли голоса say», «используй Jamie с этого момента».

Как это работает

Скилл объясняет Claude, как писать для слуха: короткие предложения, начните с главного, описывайте код вместо чтения, завершайте решением, которое ему нужно от вас. Claude вызывает инструмент speak с этим скриптом.

Сервер удаляет остатки Markdown, разбивает скрипт на предложения и синтезирует следующее предложение, пока играет текущее.

На macOS небольшой вспомогательный модуль на Swift (overlay/main.swift) управляет воспроизведением с помощью AVAudioPlayer и рисует оверлей: панель поверх всех окон, которая не активируется и никогда не крадёт фокус. Node отправляет ему по одному файлу предложения через строки JSON на stdin, а он сообщает finished, back или stop на stdout. Пауза и возобновление происходят внутри модуля, поэтому позиция точна. «Назад» и «Пропустить» сообщают серверу, какое предложение воспроизводить дальше. В других местах сервер переключается на afplay или ffplay без оверлея.

Авто-озвучка — это хук Stop в Claude Code. Когда существует файл-флаг ~/.config/speak/auto, хук один раз блокирует остановку и просит Claude озвучить скрипт в стиле, указанном в файле. Защита stop_hook_active предотвращает зацикливание.

Разработка

npm run dev        # run the server with tsx
npm test           # vitest
npm run typecheck

MIT.

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Generate AI images, video, speech, music and presentations from Claude, ChatGPT and Cursor.

  • Connect Claude to Fathom meeting recordings, transcripts, and summaries

  • Persistent context for Claude. Your AI always knows your projects and next actions across sessions.

View all MCP Connectors

Latest Blog Posts

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/CareyScott/speak'

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