home / mcp / elevenlabs mcp server
MCP server that integrates with ElevenLabs TTS, providing audio generation, multi-voice scripting, and history with a sample web client.
Configuration
View docs{
"mcpServers": {
"mamertofabian-elevenlabs-mcp-server": {
"command": "npx",
"args": [
"-y",
"@smithery/cli",
"install",
"elevenlabs-mcp-server",
"--client",
"claude"
],
"env": {
"ELEVENLABS_STYLE": "0.1",
"ELEVENLABS_API_KEY": "YOUR_API_KEY",
"ELEVENLABS_MODEL_ID": "eleven_flash_v2",
"ELEVENLABS_VOICE_ID": "YOUR_VOICE_ID",
"ELEVENLABS_STABILITY": "0.5",
"ELEVENLABS_OUTPUT_DIR": "output",
"ELEVENLABS_SIMILARITY_BOOST": "0.75"
}
}
}
}You run an MCP server that talks to ElevenLabs text-to-speech, enabling you to generate audio from text, manage multiple voices and script parts, and keep a persistent history. It includes a sample web client to manage voice generation tasks and downloads, making it easy to automate and organize voice assets across projects.
Install or run the ElevenLabs MCP Server and connect it to an MCP client. You can generate audio from plain text or from structured scripts with multiple voices and actors. You’ll access a voice library, review history, and download produced audio files.
Once the server is running, use your MCP client to perform common tasks: generate audio from text, create multi-voice scripts, delete jobs, fetch audio files, and list available voices. You can also retrieve voiceover history to replay or re-download previous outputs.
Keep your ElevenLabs API key and related identifiers secure. Do not expose keys in client-side code or shared configurations. Use environment variables as shown in the configuration examples to keep secrets out of source control.
If audio output fails, verify that your API key and voice IDs are correct, and that the server process has network access to ElevenLabs. Check the output directory exists and is writable, and review your environment variable values for any typographical errors.
The server runs as a standard MCP server process. You’ll provide API credentials and configuration through environment variables, and you may choose to run the server directly on your machine or via a container/runtime like uvx.
The sample SvelteKit client supports a set of actions to manage voice generation and history: generate_audio_simple, generate_audio_script, delete_job, get_audio_file, list_voices, and get_voiceover_history. It also provides routes to access voice history and the voice list for quick selection.
From the client, you can fetch an audio file by its ID and review the history of generated voiceovers. History entries enable playback or re-downloads of prior outputs.
Generate audio from plain text using default voice settings.
Generate audio from a structured script with multiple voices and actors.
Delete a voice generation job by its ID.
Retrieve the generated audio file by its ID.
List all available voices for selection.
Fetch the history of voiceover jobs; optionally target a specific job by ID.