by mamertofabian
ElevenLabs MCP Server is a Model Context Protocol (MCP) server that integrates with the ElevenLabs text-to-speech API. It allows users to generate full voiceovers with multiple voices and includes both a server component and a sample web-based MCP Client (SvelteKit) for managing voice generation tasks.
ElevenLabs MCP Server is a Model Context Protocol (MCP) server that integrates with the ElevenLabs text-to-speech API. It allows users to generate full voiceovers with multiple voices and includes both a server component and a sample web-based MCP Client (SvelteKit) for managing voice generation tasks.
There are several ways to install and use ElevenLabs MCP Server:
npx -y @smithery/cli install elevenlabs-mcp-server --client claude
for automatic installation with Claude Desktop.cline_mcp_settings.json
) specifying the command
, args
, and env
variables including your ElevenLabs API key and voice settings.uv venv
, and configure your .env
file with ElevenLabs credentials.To use the sample SvelteKit MCP Client, navigate to the clients/web-ui
directory, install dependencies with pnpm install
, configure the .env
file, and run pnpm dev
. Then, open http://localhost:5174
in your browser.
What are the available tools?
generate_audio_simple
: Generate audio from plain text.generate_audio_script
: Generate audio from a structured script with multiple voices.delete_job
: Delete a job by its ID.get_audio_file
: Get the audio file by its ID.list_voices
: List all available voices.get_voiceover_history
: Get voiceover job history.What are the available resources?
voiceover://history/{job_id}
: Get the audio file by its ID.voiceover://voices
: List all available voices.What is the license for this project?
A Model Context Protocol (MCP) server that integrates with ElevenLabs text-to-speech API, featuring both a server component and a sample web-based MCP Client (SvelteKit) for managing voice generation tasks.
To install ElevenLabs MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install elevenlabs-mcp-server --client claude
When using uvx
, no specific installation is needed.
Add the following configuration to your MCP settings file (e.g., cline_mcp_settings.json
for Claude Desktop):
{
"mcpServers": {
"elevenlabs": {
"command": "uvx",
"args": ["elevenlabs-mcp-server"],
"env": {
"ELEVENLABS_API_KEY": "your-api-key",
"ELEVENLABS_VOICE_ID": "your-voice-id",
"ELEVENLABS_MODEL_ID": "eleven_flash_v2",
"ELEVENLABS_STABILITY": "0.5",
"ELEVENLABS_SIMILARITY_BOOST": "0.75",
"ELEVENLABS_STYLE": "0.1",
"ELEVENLABS_OUTPUT_DIR": "output"
}
}
}
}
uv venv
.env.example
to .env
and fill in your ElevenLabs credentials{
"mcpServers": {
"elevenlabs": {
"command": "uv",
"args": [
"--directory",
"path/to/elevenlabs-mcp-server",
"run",
"elevenlabs-mcp-server"
],
"env": {
"ELEVENLABS_API_KEY": "your-api-key",
"ELEVENLABS_VOICE_ID": "your-voice-id",
"ELEVENLABS_MODEL_ID": "eleven_flash_v2",
"ELEVENLABS_STABILITY": "0.5",
"ELEVENLABS_SIMILARITY_BOOST": "0.75",
"ELEVENLABS_STYLE": "0.1",
"ELEVENLABS_OUTPUT_DIR": "output"
}
}
}
}
cd clients/web-ui
pnpm install
.env.example
to .env
and configure as neededpnpm dev
generate_audio_simple
: Generate audio from plain text using default voice settingsgenerate_audio_script
: Generate audio from a structured script with multiple voices and actorsdelete_job
: Delete a job by its IDget_audio_file
: Get the audio file by its IDlist_voices
: List all available voicesget_voiceover_history
: Get voiceover job history. Optionally specify a job ID for a specific job.voiceover://history/{job_id}
: Get the audio file by its IDvoiceover://voices
: List all available voicesThis project is licensed under the MIT License - see the LICENSE file for details.
Please log in to share your review and rating for this MCP.