say
MCP server for macOS text-to-speech functionality
claude mcp add --transport stdio bmorphism-say-mcp-server node /path/to/say-mcp-server/build/index.js
How to use
This MCP server exposes macOS's built-in text-to-speech via a Say-based tool set. Once the say-mcp-server is running, you can invoke the speak tool to have text spoken aloud using the system voices, with support for in-text modifiers to adjust volume, rate, and pitch. The server also provides a list_voices capability to enumerate available voices on the host, helping you pick the best voice for your use case. Tools can be combined with other MCP servers (for example marginalia-mcp-server or youtube-transcript) to fetch or generate content and then read it aloud through the Say interface.
To use Speak, call the speak tool with arguments such as text, voice, rate, and background. The text supports inline directives like [[volm 0.7]] to adjust volume, [[rate 300]] to change speaking speed, [[pbas +10]] to alter pitch, and [[emph +]] / [[emph -]] for emphasis. You can also run the speech in the background so you can perform other MCP actions without waiting for the speech to finish. The list_voices tool will help you discover which macOS voices are available on your system, enabling you to choose a voice that matches your preferences or accessibility needs.
How to install
Prerequisites:
- macOS (the Say tool is macOS-specific)
- Node.js v14 or newer
- A working MCP setup with the say-mcp-server package installed
Step-by-step installation:
- Ensure you have Node.js installed. Verify: node -v
- Install the say-mcp-server package: npm install say-mcp-server
- Build or point to the compiled server entry. The configuration expects: command: "node" args: ["/path/to/say-mcp-server/build/index.js"]
- Start your MCP engine or ensure your MCP config references the say server correctly. Example configuration snippet is provided in the README.
- Verify the server is reachable via your MCP orchestration tool and test with the speak tool.
Additional notes
Notes and tips:
- This MCP server relies on macOS's say command; it will not work on non-macOS environments.
- Ensure the path in the MCP configuration points to the built index.js of the say-mcp-server project.
- If you encounter voice issues, use the list_voices tool to discover available voices and test with a known-good voice such as 'Alex' or other system voices.
- The inline text modifiers enable nuanced speech patterns; experiment with rate, volume, and pitch to achieve natural results.
- If running in background, confirm your environment allows background tasks for audio playback and that your MCP client handles asynchronous tool responses appropriately.
Related MCP Servers
zen
Selfhosted notes app. Single golang binary, notes stored as markdown within SQLite, full-text search, very low resource usage
MCP -Deepseek_R1
A Model Context Protocol (MCP) server implementation connecting Claude Desktop with DeepSeek's language models (R1/V3)
mcp-fhir
A Model Context Protocol implementation for FHIR
mcp
Inkdrop Model Context Protocol Server
mcp-appium-gestures
This is a Model Context Protocol (MCP) server providing resources and tools for Appium mobile gestures using Actions API..
dubco -npm
The (Unofficial) dubco-mcp-server enables AI assistants to manage Dub.co short links via the Model Context Protocol. It provides three MCP tools: create_link for generating new short URLs, update_link for modifying existing links, and delete_link for removing short links.