Elevenlabs MCP

Elevenlabs MCP

Official ElevenLabs Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech and audio processing APIs.

8.7K

24 Tools

Packaged by
Requires Configuration
Requires Secrets
Add to Docker Desktop

Version 4.43 or later needs to be installed to add the server automatically

Use cases

About

Elevenlabs MCP MCP Server

Official ElevenLabs Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech and audio processing APIs.

What is an MCP Server?

MCP Info

Image Building InfoDockerfile|https://github.com/elevenlabs/elevenlabs-mcp/blob/main/Dockerfile

Docker Image built by|Docker Inc. Docker Scout Health Score| Docker Scout Health ScoreVerify Signature|COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/elevenlabs --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pubLicence|MIT License

Available Tools (24)

Tools provided by this ServerShort Description
add_knowledge_base_to_agentAdd a knowledge base to ElevenLabs workspace.
check_subscriptionCheck the current subscription status.
compose_musicConvert a prompt to music and save the output audio file to a given directory.
create_agentCreate a conversational AI agent with custom configuration.
create_composition_planCreate a composition plan for music generation.
create_voice_from_previewAdd a generated voice to the voice library.
get_agentGet details about a specific conversational AI agent
get_conversationGets conversation with transcript.
get_voiceGet details of a specific voice
isolate_audioIsolate audio from a file.
list_agentsList all available conversational AI agents
list_conversationsLists agent conversations.
list_modelsList all available models
list_phone_numbersList all phone numbers associated with the ElevenLabs account
make_outbound_callMake an outbound call using an ElevenLabs agent.
play_audioPlay an audio file.
search_voice_librarySearch for a voice across the entire ElevenLabs voice library.
search_voicesSearch for existing voices, a voice that has already been added to the user's ElevenLabs voice library.
speech_to_speechTransform audio from one voice to another using provided audio files.
speech_to_textTranscribe speech from an audio file.
text_to_sound_effectsConvert text description of a sound effect to sound effect with a given duration.
text_to_speechConvert text to speech with a given voice.
text_to_voiceCreate voice previews from a text prompt.
voice_cloneCreate an instant voice clone of a voice using provided audio files.

Tools Details

Tool: add_knowledge_base_to_agent

Add a knowledge base to ElevenLabs workspace. Allowed types are epub, pdf, docx, txt, html.

⚠️ COST WARNING: This tool makes an API call to ElevenLabs which may incur costs. Only use when explicitly requested by the user.
ParametersTypeDescription
agent_idstringID of the agent to add the knowledge base to.
knowledge_base_namestringName of the knowledge base.
input_file_pathstringoptionalPath to the file to add to the knowledge base.
textstringoptionalText to add to the knowledge base.
urlstringoptionalURL of the knowledge base.

Tool: check_subscription

Check the current subscription status. Could be used to measure the usage of the API.

Tool: compose_music

Convert a prompt to music and save the output audio file to a given directory. Directory is optional, if not provided, the output file will be saved to $HOME/Desktop.

ParametersTypeDescription
composition_planstringoptionalComposition plan to use for the music. Must provide either prompt or composition_plan.
music_length_msstringoptionalLength of the generated music in milliseconds. Cannot be used if composition_plan is provided.
output_directorystringoptionalDirectory to save the output audio file
promptstringoptionalPrompt to convert to music. Must provide either prompt or composition_plan.

Tool: create_agent

Create a conversational AI agent with custom configuration.

⚠️ COST WARNING: This tool makes an API call to ElevenLabs which may incur costs. Only use when explicitly requested by the user.
ParametersTypeDescription
first_messagestringFirst message the agent will say i.e. "Hi, how can I help you today?"
namestringName of the agent
system_promptstringSystem prompt for the agent
asr_qualitystringoptionalQuality of the ASR. high or low.
languagestringoptionalISO 639-1 language code for the agent
llmstringoptionalLLM to use for the agent
max_duration_secondsintegeroptionalMaximum duration of a conversation in seconds. Defaults to 600 seconds (10 minutes).
max_tokensstringoptionalMaximum number of tokens to generate.
model_idstringoptionalID of the ElevenLabs model to use for the agent.
optimize_streaming_latencyintegeroptionalOptimize streaming latency. Range is 0 to 4.
record_voicebooleanoptionalWhether to record the agent's voice.
retention_daysintegeroptionalNumber of days to retain the agent's data.
similarity_boostnumberoptionalSimilarity boost for the agent. Range is 0 to 1.
stabilitynumberoptionalStability for the agent. Range is 0 to 1.
temperaturenumberoptionalTemperature for the agent. The lower the temperature, the more deterministic the agent's responses will be. Range is 0 to 1.
turn_timeoutintegeroptionalTimeout for the agent to respond in seconds. Defaults to 7 seconds.
voice_idstringoptionalID of the voice to use for the agent

Tool: create_composition_plan

Create a composition plan for music generation. Usage of this endpoint does not cost any credits but is subject to rate limiting depending on your tier. Composition plans can be used when generating music with the compose_music tool.

ParametersTypeDescription
promptstringPrompt to create a composition plan for
music_length_msstringoptionalThe length of the composition plan to generate in milliseconds. Must be between 10000ms and 300000ms. Optional - if not provided, the model will choose a length based on the prompt.
source_composition_planstringoptionalAn optional composition plan to use as a source for the new composition plan

Tool: create_voice_from_preview

Add a generated voice to the voice library. Uses the voice ID from the text_to_voice tool.

⚠️ COST WARNING: This tool makes an API call to ElevenLabs which may incur costs. Only use when explicitly requested by the user.
ParametersTypeDescription
generated_voice_idstring
voice_descriptionstring
voice_namestring

Tool: get_agent

Get details about a specific conversational AI agent

ParametersTypeDescription
agent_idstring

Tool: get_conversation

Gets conversation with transcript. Returns: conversation details and full transcript. Use when: analyzing completed agent conversations.

ParametersTypeDescription
conversation_idstringThe unique identifier of the conversation to retrieve, you can get the ids from the list_conversations tool.

Tool: get_voice

Get details of a specific voice

ParametersTypeDescription
voice_idstring

Tool: isolate_audio

Isolate audio from a file. Saves output file to directory (default: $HOME/Desktop).

⚠️ COST WARNING: This tool makes an API call to ElevenLabs which may incur costs. Only use when explicitly requested by the user.
ParametersTypeDescription
input_file_pathstring
output_directorystringoptional

Tool: list_agents

List all available conversational AI agents

Tool: list_conversations

Lists agent conversations. Returns: conversation list with metadata. Use when: asked about conversation history.

ParametersTypeDescription
agent_idstringoptional
call_start_after_unixstringoptional
call_start_before_unixstringoptional
cursorstringoptional
max_lengthintegeroptional
page_sizeintegeroptional

Tool: list_models

List all available models

Tool: list_phone_numbers

List all phone numbers associated with the ElevenLabs account

Tool: make_outbound_call

Make an outbound call using an ElevenLabs agent. Automatically detects provider type (Twilio or SIP trunk) and uses the appropriate API.

⚠️ COST WARNING: This tool makes an API call to ElevenLabs which may incur costs. Only use when explicitly requested by the user.
ParametersTypeDescription
agent_idstringThe ID of the agent that will handle the call
agent_phone_number_idstringThe ID of the phone number to use for the call
to_numberstringThe phone number to call (E.164 format: +1xxxxxxxxxx)

Tool: play_audio

Play an audio file. Supports WAV and MP3 formats.

ParametersTypeDescription
input_file_pathstring

Tool: search_voice_library

Search for a voice across the entire ElevenLabs voice library.

ParametersTypeDescription
pageintegeroptionalPage number to return (0-indexed)
page_sizeintegeroptionalNumber of voices to return per page (1-100)
searchstringoptionalSearch term to filter voices by

Tool: search_voices

Search for existing voices, a voice that has already been added to the user's ElevenLabs voice library. Searches in name, description, labels and category.

ParametersTypeDescription
searchstringoptionalSearch term to filter voices by. Searches in name, description, labels and category.
sortstringoptionalWhich field to sort by. created_at_unix might not be available for older voices.
sort_directionstringoptionalSort order, either ascending or descending.

Tool: speech_to_speech

Transform audio from one voice to another using provided audio files. Saves output file to directory (default: $HOME/Desktop).

⚠️ COST WARNING: This tool makes an API call to ElevenLabs which may incur costs. Only use when explicitly requested by the user.
ParametersTypeDescription
input_file_pathstring
output_directorystringoptional
voice_namestringoptional

Tool: speech_to_text

Transcribe speech from an audio file. When save_transcript_to_file=True: Saves output file to directory (default: $HOME/Desktop). When return_transcript_to_client_directly=True, always returns text directly regardless of output mode.

⚠️ COST WARNING: This tool makes an API call to ElevenLabs which may incur costs. Only use when explicitly requested by the user.
ParametersTypeDescription
input_file_pathstring
diarizebooleanoptionalWhether to diarize the audio file. If True, which speaker is currently speaking will be annotated in the transcription.
language_codestringoptionalISO 639-3 language code for transcription. If not provided, the language will be detected automatically.
output_directorystringoptionalDirectory where files should be saved (only used when saving files).
return_transcript_to_client_directlybooleanoptionalWhether to return the transcript to the client directly.
save_transcript_to_filebooleanoptionalWhether to save the transcript to a file.

Tool: text_to_sound_effects

Convert text description of a sound effect to sound effect with a given duration. Saves output file to directory (default: $HOME/Desktop).

Duration must be between 0.5 and 5 seconds.

⚠️ COST WARNING: This tool makes an API call to ElevenLabs which may incur costs. Only use when explicitly requested by the user.
ParametersTypeDescription
textstringText description of the sound effect
duration_secondsnumberoptionalDuration of the sound effect in seconds
loopbooleanoptionalWhether to loop the sound effect. Defaults to False.
output_directorystringoptionalDirectory where files should be saved (only used when saving files).
output_formatstringoptional

Tool: text_to_speech

Convert text to speech with a given voice. Saves output file to directory (default: $HOME/Desktop).

Only one of voice_id or voice_name can be provided. If none are provided, the default voice will be used.

⚠️ COST WARNING: This tool makes an API call to ElevenLabs which may incur costs. Only use when explicitly requested by the user.
ParametersTypeDescription
textstring
languagestringoptionalISO 639-1 language code for the voice.
model_idstringoptional
output_directorystringoptional
output_formatstringoptional
similarity_boostnumberoptional
speednumberoptional
stabilitynumberoptional
stylenumberoptional
use_speaker_boostbooleanoptional
voice_idstringoptional
voice_namestringoptional

Tool: text_to_voice

Create voice previews from a text prompt. Creates three previews with slight variations. Saves output file to directory (default: $HOME/Desktop).

If no text is provided, the tool will auto-generate text.

Voice preview files are saved as: voice_design_(generated_voice_id)_(timestamp).mp3

Example file name: voice_design_Ya2J5uIa5Pq14DNPsbC1_20250403_164949.mp3

⚠️ COST WARNING: This tool makes an API call to ElevenLabs which may incur costs. Only use when explicitly requested by the user.
ParametersTypeDescription
voice_descriptionstring
output_directorystringoptional
textstringoptional

Tool: voice_clone

Create an instant voice clone of a voice using provided audio files.

⚠️ COST WARNING: This tool makes an API call to ElevenLabs which may incur costs. Only use when explicitly requested by the user.
ParametersTypeDescription
filesarray
namestring
descriptionstringoptional

Use this MCP Server

{
  "mcpServers": {
    "elevenlabs": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "ELEVENLABS_API_KEY",
        "-v",
        "/local-directory:/local-directory",
        "mcp/elevenlabs"
      ],
      "env": {
        "ELEVENLABS_API_KEY": "<ELEVENLABS_API_KEY>"
      }
    }
  }
}

Why is it safer to run MCP Servers with Docker?

Manual installation

You can install the MCP server using:

Installation for

Related servers