elevenlabs-mcp
Provides tools for text-to-speech, speech-to-text, voice cloning, voice design, sound effects, music generation, audio isolation, dubbing, voice management, and account tools via the ElevenLabs API.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@elevenlabs-mcpRead this text aloud in a British accent."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
elevenlabs-mcp
A full-featured Model Context Protocol (MCP) server for the ElevenLabs API — bring text‑to‑speech, speech‑to‑text, voice cloning, voice design, sound effects, music, audio isolation, dubbing, and account tools directly into Claude Code (or any MCP client).
Built in Python with FastMCP and the official elevenlabs SDK (2.x), managed with uv.
Audio‑producing tools save their output to a folder on disk (your Desktop by default) and return the file path. Data tools return JSON. Your API key is read from the environment and is never written to the repo.
Features
28 tools across the ElevenLabs surface:
Category | Tools |
🔊 Speech generation |
|
🎚️ Voice transformation |
|
🎵 Audio generation |
|
🧹 Audio cleanup |
|
📝 Transcription |
|
🧬 Voice design & cloning |
|
🗂️ Voice management |
|
🧠 Models & account |
|
🕓 History |
|
🌍 Dubbing |
|
Related MCP server: ElevenLabs MCP Server
Requirements
Python 3.10+
An ElevenLabs API key — create one at https://elevenlabs.io/app/settings/api-keys
Installation
git clone https://github.com/neomorrison/elevenlabs-mcp.git
cd elevenlabs-mcp
uv syncuv sync creates a virtual environment and installs the server plus its dependencies.
Add to Claude Code
Register the server with the Claude Code CLI. Replace the path with wherever you cloned the repo, and paste your real key:
Windows (PowerShell):
claude mcp add elevenlabs -s user -e ELEVENLABS_API_KEY=sk_your_key_here -- uv run --directory C:\path\to\elevenlabs-mcp elevenlabs-mcpmacOS / Linux:
claude mcp add elevenlabs -s user -e ELEVENLABS_API_KEY=sk_your_key_here -- uv run --directory /path/to/elevenlabs-mcp elevenlabs-mcpThen verify:
claude mcp listYou should see elevenlabs listed as Connected. Restart Claude Code (or start a new session) and the tools become available.
-s userinstalls the server for your user across all projects. Use-s local(the default) to scope it to the current project, or-s projectto share it via a checked‑in.mcp.json.
Other MCP clients (Claude Desktop, etc.)
Add this to your client's MCP config (e.g. claude_desktop_config.json):
{
"mcpServers": {
"elevenlabs": {
"command": "uv",
"args": ["run", "--directory", "/path/to/elevenlabs-mcp", "elevenlabs-mcp"],
"env": { "ELEVENLABS_API_KEY": "sk_your_key_here" }
}
}
}Configuration
Configuration is via environment variables (passed with -e in claude mcp add, or in a local .env for development — see .env.example):
Variable | Required | Default | Description |
| ✅ | — | Your ElevenLabs API key. |
|
| Where generated audio/media files are written. ( | |
|
| Voice used when a tool call omits | |
|
| Default TTS model. |
Usage
Once installed, just ask Claude in natural language. Examples:
“Use ElevenLabs to read this paragraph in George's voice and save the mp3.”
“List my ElevenLabs voices.”
“Generate a 10‑second sound effect of rain on a tin roof.”
“Transcribe
C:\\recordings\\interview.wavwith speaker diarization.”“Design a voice: a calm, wise elderly narrator, then save the second preview.”
“Clone a voice named ‘Studio’ from these three sample files.”
“How many characters do I have left this month?”
“Dub
intro.mp4into Spanish.”
Generated files land in your output directory (Desktop by default); each tool returns the absolute path.
Development
uv sync
# run the server directly over stdio (Ctrl+C to stop)
uv run elevenlabs-mcpInspect the tools with the MCP Inspector:
uv run mcp dev src/elevenlabs_mcp/server.pyProject layout:
src/elevenlabs_mcp/
__init__.py
server.py # FastMCP server + all toolsNotes & limitations
Most audio tools make paid ElevenLabs API calls — usage counts against your plan.
Dubbing is asynchronous: call
dub_audio, pollget_dubbing_statusuntilstatusisdubbed, thendownload_dubbed_audio.The server never prints to stdout (that channel belongs to the MCP transport); logs go to stderr.
License
MIT © neomorrison
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/neomorrison/elevenlabs-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server