mcp-say
@blacktop
About mcp-say
MCP Server for Text to Speech
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"mcp-say": {
"command": "npx",
"args": [
"skills",
"add",
"https://github.com/blacktop/mcp-tts",
"--skill",
"speak"
]
}
}
}Tools
No tools detected
Fetch the live tool list by running this server in a temporary sandbox using the button above.
Overview
What is mcp-say?
mcp-say is an MCP server that adds text-to-speech capabilities to AI assistants like Claude Desktop and Cursor IDE. It provides four tools: say_tts (macOS built-in), elevenlabs_tts, google_tts, and openai_tts, each offering different voices and options.
How to use mcp-say?
Install via go install github.com/blacktop/mcp-tts@latest. Configure in Claude Desktop's claude_desktop_config.json or via command line for Claude Code, Codex CLI, or Gemini CLI. Set required API keys as environment variables. Invoke by calling the appropriate TTS tool (e.g., say_tts, openai_tts) through the MCP protocol.
Key features of mcp-say
- Four TTS providers: macOS say, ElevenLabs, Google Gemini, OpenAI
- Sequential (default) or concurrent speech via
--sequential-ttsflag - Save audio to disk with
MCP_TTS_OUTPUT_DIRand optional--no-play - Suppress "Speaking:" output with
MCP_TTS_SUPPRESS_SPEAKING_OUTPUT - OpenAI TTS supports speed control (0.25x–4.0x) and custom voice instructions
- Multi-instance protection prevents overlapping speech across Claude Desktop instances
Use cases of mcp-say
- Enable an AI assistant to read responses aloud for accessibility
- Add voice feedback to automated workflows or agents
- Generate audio files programmatically from text
- Test and compare different TTS providers in one tool
FAQ from mcp-say
Which API keys are required?
ElevenLabs API key for elevenlabs_tts, Google AI API key for google_tts, and OpenAI API key for openai_tts. The say_tts tool uses macOS built-in and requires no API key.
Can I use mcp-say on Windows or Linux?
The say_tts tool relies on the macOS say binary and works only on macOS. The other three cloud-based tools (ElevenLabs, Google, OpenAI) are platform-independent.
How do I prevent overlapping speech?
By default, TTS requests are sequential—only one plays at a time. Set MCP_TTS_ALLOW_CONCURRENT=true or use --sequential-tts=false to allow concurrent speech.
Can I save the audio to a file instead of playing it?
Yes. Set MCP_TTS_OUTPUT_DIR to a directory path. Optionally set MCP_TTS_NO_PLAY=true to skip playback and only save the file. Files are named tts_{timestamp}_{hash}.{ext} with formats AIFF (say), MP3 (ElevenLabs/OpenAI), WAV (Google).
What is the behavior for free-tier ElevenLabs API keys?
Free-tier ElevenLabs API keys can only use premade voices. Voice Library (community/professional) voices will return a 402 paid_plan_required error.
Frequently asked questions
Which API keys are required?
ElevenLabs API key for `elevenlabs_tts`, Google AI API key for `google_tts`, and OpenAI API key for `openai_tts`. The `say_tts` tool uses macOS built-in and requires no API key.
Can I use mcp-say on Windows or Linux?
The `say_tts` tool relies on the macOS `say` binary and works only on macOS. The other three cloud-based tools (ElevenLabs, Google, OpenAI) are platform-independent.
How do I prevent overlapping speech?
By default, TTS requests are sequential—only one plays at a time. Set `MCP_TTS_ALLOW_CONCURRENT=true` or use `--sequential-tts=false` to allow concurrent speech.
Can I save the audio to a file instead of playing it?
Yes. Set `MCP_TTS_OUTPUT_DIR` to a directory path. Optionally set `MCP_TTS_NO_PLAY=true` to skip playback and only save the file. Files are named `tts_{timestamp}_{hash}.{ext}` with formats AIFF (say), MP3 (ElevenLabs/OpenAI), WAV (Google).
What is the behavior for free-tier ElevenLabs API keys?
Free-tier ElevenLabs API keys can only use premade voices. Voice Library (community/professional) voices will return a `402 paid_plan_required` error.
Basic information
More Other MCP servers
🚀 Model Context Protocol (MCP) Curriculum for Beginners
microsoftThis open-source curriculum introduces the fundamentals of Model Context Protocol (MCP) through real-world, cross-language examples in .NET, Java, TypeScript, JavaScript, Rust and Python. Designed for developers, it focuses on practical techniques for building modular, scalable,
Blender
ahujasidOpen-source MCP to use Blender with any LLM
Inbox Zero AI MCP
elie222The world's best AI personal assistant for email. Open source app to help you reach inbox zero fast.
Mcp
browsermcpBrowser MCP is a Model Context Provider (MCP) server that allows AI applications to control your browser
AutoBrowser MCP
autobrowser-aiBrowser MCP is a Model Context Provider (MCP) server that allows AI applications to control your browser
Comments