Skip to main content
Glama

Say MCP Server

say-mcp-server

macOS System Voice Settings

An MCP server that provides text-to-speech functionality using macOS's built-in say command.

Requirements

  • macOS (uses the built-in say command)
  • Node.js >= 14.0.0

Configuration

Add the following to your MCP settings configuration file:

{ "mcpServers": { "say": { "command": "node", "args": ["/path/to/say-mcp-server/build/index.js"] } } }

Installation

npm install say-mcp-server

Tools

speak

The speak tool provides access to macOS's text-to-speech capabilities with extensive customization options.

Basic Usage

Use macOS text-to-speech to speak text aloud.

Parameters:

  • text (required): Text to speak. Supports:
    • Plain text
    • Basic punctuation for pauses
    • Newlines for natural breaks
    • [[slnc 500]] for 500ms silence
    • [[rate 200]] for changing speed mid-text
    • [[volm 0.5]] for changing volume mid-text
    • [[emph +]] and [[emph -]] for emphasis
    • [[pbas +10]] for pitch adjustment
  • voice (optional): Voice to use (default: "Alex")
  • rate (optional): Speaking rate in words per minute (default: 175, range: 1-500)
  • background (optional): Run speech in background to allow further MCP interaction (default: false)
Advanced Features
  1. Voice Modulation:
use_mcp_tool({ server_name: "say", tool_name: "speak", arguments: { text: "[[volm 0.7]] This is quieter [[volm 1.0]] and this is normal [[volm 1.5]] and this is louder", voice: "Victoria" } });
  1. Dynamic Rate Changes:
use_mcp_tool({ server_name: "say", tool_name: "speak", arguments: { text: "Normal speed [[rate 300]] now speaking faster [[rate 100]] and now slower", voice: "Fred" } });
  1. Emphasis and Pitch:
use_mcp_tool({ server_name: "say", tool_name: "speak", arguments: { text: "[[emph +]] Important point! [[emph -]] [[pbas +10]] Higher pitch [[pbas -10]] Lower pitch", voice: "Samantha" } });
Integration Examples
  1. With Marginalia Search:
// Search for a topic and have the results read aloud const searchResult = await use_mcp_tool({ server_name: "marginalia-mcp-server", tool_name: "search", arguments: { query: "quantum computing basics", count: 1 } }); await use_mcp_tool({ server_name: "say", tool_name: "speak", arguments: { text: searchResult.results[0].description, voice: "Daniel", rate: 150 } });
  1. With YouTube Transcripts:
// Read a YouTube video transcript const transcript = await use_mcp_tool({ server_name: "youtube-transcript", tool_name: "get_transcript", arguments: { url: "https://youtube.com/watch?v=example", lang: "en" } }); await use_mcp_tool({ server_name: "say", tool_name: "speak", arguments: { text: transcript.text, voice: "Samantha", rate: 175 } });
  1. Background Speech with Multiple Actions:
// Start long speech in background await use_mcp_tool({ server_name: "say", tool_name: "speak", arguments: { text: "This is a long speech that will run in the background...", voice: "Rocko (Italian (Italy))", rate: 69, background: true } }); // Immediately perform another action while speech continues await use_mcp_tool({ server_name: "marginalia-mcp-server", tool_name: "search", arguments: { query: "parallel processing" } });
  1. With Apple Notes:
// Read notes aloud const notes = await use_mcp_tool({ server_name: "apple-notes-mcp", tool_name: "search-notes", arguments: { query: "meeting notes" } }); if (notes.length > 0) { await use_mcp_tool({ server_name: "say", tool_name: "speak", arguments: { text: notes[0].content, voice: "Karen", rate: 160 } }); }

Example:

use_mcp_tool({ server_name: "say", tool_name: "speak", arguments: { text: "Hello, world!", voice: "Victoria", rate: 200 } });

list_voices

List all available text-to-speech voices on the system.

Example:

use_mcp_tool({ server_name: "say", tool_name: "list_voices", arguments: {} });

Configuration

Add the following to your MCP settings configuration file:

{ "mcpServers": { "say": { "command": "node", "args": ["/path/to/say-mcp-server/build/index.js"] } } }

Requirements

  • macOS (uses the built-in say command)
  • Node.js >= 14.0.0

Contributors

License

MIT

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

local-only server

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

Enables text-to-speech functionality on macOS using the say command, offering extensive control over speech parameters like voice, rate, volume, and pitch for a customizable auditory experience.

  1. Requirements
    1. Configuration
      1. Installation
        1. Tools
          1. speak
          2. list_voices
        2. Recommended Voices
          1. Configuration
            1. Requirements
              1. Contributors
                1. License

                  Related MCP Servers

                  • A
                    security
                    A
                    license
                    A
                    quality
                    Enables interaction with Apple apps like Messages, Notes, and Contacts through the MCP protocol to send messages, search, and open app content using natural language.
                    Last updated -
                    6
                    756
                    1,385
                    TypeScript
                    MIT License
                    • Apple
                  • -
                    security
                    F
                    license
                    -
                    quality
                    Integrates ElevenLabs Text-to-Speech capabilities with Cursor through the Model Context Protocol, allowing users to convert text to speech with selectable voices within the Cursor editor.
                    Last updated -
                    1
                    Python
                    • Linux
                    • Apple
                  • -
                    security
                    F
                    license
                    -
                    quality
                    Provides text-to-speech capabilities through the Model Context Protocol, allowing applications to easily integrate speech synthesis with customizable voices, adjustable speech speed, and cross-platform audio playback support.
                    Last updated -
                    2
                    Python
                  • -
                    security
                    F
                    license
                    -
                    quality
                    A Model Context Protocol server that provides text-to-speech capabilities using the Kokoro TTS model, offering multiple voice options and customizable speech parameters.
                    Last updated -
                    239
                    JavaScript
                    • Apple
                    • Linux

                  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/bmorphism/say-mcp-server'

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