mcp-tts-server
by kaichen
This project is a Text-to-Speech (TTS) server based on the Model Context Protocol (MCP), utilizing the Groq API for speech generation. It allows you to generate lifelike audio from text using the Groq API.
View on GitHub
Last updated: N/A
mcp-tts-server
This project provides a Text-to-Speech (TTS) server based on the Model Context Protocol (MCP), utilizing the Groq API for speech generation.
Features
- Implements an MCP server for TTS functionality.
- Connects to the Groq API (
https://api.groq.com/openai/v1/audio/speech
) for generating lifelike audio from text. - Provides a
generate_speech
tool accessible via the MCP protocol. - Supports multiple audio output formats (wav, mp3, aac, opus, flac).
- Uses
@tropicbliss/symphonia
to play the generated audio directly on the server machine (optional). - Requires a Groq API key set as an environment variable (
GROQ_API_KEY
).
Installation
To install dependencies:
bun install
Running the Server on MCP Client
To run the server using the stdio transport:
{
"mcpServers": {
"mcp-tts-server": {
"command": "bunx",
"args": [
"--bun",
"mcp-tts-server",
],
"env": {
"GROQ_API_KEY": "gsk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
}
}
}
Project Structure
src/server.ts
: Defines the core MCP server logic, including thegenerate_speech
tool and interaction with the Groq API.src/cli.ts
: Provides a command-line interface to run the MCP server over stdio.
This project was created using bun init
in bun v1.2.7. Bun is a fast all-in-one JavaScript runtime.