ElevenLabs MCP Server
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.
Features
- Generate audio from text using ElevenLabs API
- Support for multiple voices and script parts
- SQLite database for persistent history storage
- Sample SvelteKit MCP Client for:
- Simple text-to-speech conversion
- Multi-part script management
- Voice history tracking and playback
- Audio file downloads
Installation
Installing via Smithery
To install ElevenLabs MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install elevenlabs-mcp-server --client claude
Using uvx (recommended)
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"
}
}
}
}
Development Installation
- Clone this repository
- Install dependencies:
uv venv - Copy
.env.exampleto.envand 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"
}
}
}
}
Using the Sample SvelteKit MCP Client
- Navigate to the web UI directory:
cd clients/web-ui - Install dependencies:
pnpm install - Copy
.env.exampleto.envand configure as needed - Run the web UI:
pnpm dev - Open http://localhost:5174 in your browser
Available Tools
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.
Available Resources
voiceover://history/{job_id}: Get the audio file by its IDvoiceover://voices: List all available voices
License
This project is licensed under the MIT License - see the LICENSE file for details.
Recommend MCP Servers 💡
@hyperdrive-eng/mcp-nodejs-debugger
An MCP server enabling Cursor/Claude Code to debug Node.js at runtime
cycode-cli
Cycode CLI's MCP command starts a server to expose Cycode's security scanning capabilities (secrets, SCA, IaC, SAST) to AI systems via stdio, SSE, or streamable-http transports.
nostr-code-snippet-mcp
A MCP server for providing code snippets via Nostr
@r-mcp/boilerplate
A starter template for building MCP servers that integrate with AI assistants like Claude and Cursor.
@first-to-fly/code-cleanup
A MCP server for cleaning up code files using Google's Generative AI, with stash backup and custom prompts.
ffmpeg-mcp
Using ffmpeg command line to achieve an mcp server, can be very convenient, through the dialogue to achieve the local video search, tailoring, stitching, playback,clip, overlay, concat and other functions