Skip to main content
Glama
easyonthesauce

elevenlabs-agents-mcp-server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ELEVENLABS_API_KEYYesYour ElevenLabs API key
ELEVENLABS_API_BASE_URLNoBase URL for the ElevenLabs API (use residency endpoints if applicable)https://api.elevenlabs.io

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
elevenlabs_list_agentsA

List conversational AI agents in the ElevenLabs workspace.

Use this first to discover the agent_id needed by elevenlabs_make_outbound_call.

Args:

  • search (string, optional): filter by agent name

  • page_size (number): 1-100, default 30

  • cursor (string, optional): pagination cursor

Returns JSON: { agents: [{ agent_id, name, created_at_unix_secs }], has_more, next_cursor }

elevenlabs_list_phone_numbersA

List phone numbers imported into ElevenLabs (including SIP trunk numbers, e.g. a Vonage SIP trunk DID).

Use this to discover the agent_phone_number_id required by elevenlabs_make_outbound_call. SIP trunk numbers have provider 'sip_trunk'.

Args: none

Returns JSON: { phone_numbers: [{ phone_number_id, phone_number, label, provider, assigned_agent }] }

elevenlabs_make_outbound_callA

Place an outbound telephone call via an ElevenLabs agent over a SIP trunk (e.g. Vonage).

This starts the call and returns immediately — it does NOT wait for the call to finish. To get the outcome, follow up with elevenlabs_wait_for_call_completion using the returned conversation_id.

Args:

  • agent_id (string): agent that will speak on the call

  • agent_phone_number_id (string): SIP trunk number ID to originate from

  • to_number (string): destination in E.164 format, e.g. +61355551234

  • dynamic_variables (object, optional): variables for the agent's prompt

  • first_message_override (string, optional)

  • prompt_override (string, optional; agent must allow overrides)

Returns JSON: { success, message, conversation_id, sip_call_id } Save conversation_id — it is needed to retrieve the outcome and transcript.

Error handling: 422 usually means a bad to_number format or invalid IDs.

elevenlabs_get_call_reportA

Get a compact outcome report for a call/conversation: status, success evaluation, summary, duration, termination reason, extracted data-collection results, and evaluation criteria results. Does NOT include the transcript (use elevenlabs_get_call_transcript).

Note: analysis fields (call_successful, summary, data collection) are only populated after the call ends and post-call processing completes (status 'done'). If status is 'initiated'/'in-progress'/'processing', poll again or use elevenlabs_wait_for_call_completion.

Args:

  • conversation_id (string)

Returns JSON: { conversation_id, status, call_successful, summary, duration_secs, termination_reason, error, cost_credits, evaluation_criteria_results, data_collection_results, transcript_turns, has_audio }

elevenlabs_wait_for_call_completionA

Block until a call reaches a terminal status ('done' or 'failed') or the timeout elapses, then return the outcome report (same shape as elevenlabs_get_call_report).

This is the recommended follow-up after elevenlabs_make_outbound_call: place the call, then call this to get the result in one step.

Args:

  • conversation_id (string)

  • timeout_secs (number): default 300

  • poll_interval_secs (number): default 5

Returns JSON: { timed_out, waited_secs, ...outcome report } If timed_out is true, the call is still in progress — call this tool again to keep waiting.

elevenlabs_get_call_transcriptA

Get the turn-by-turn transcript of a call.

Args:

  • conversation_id (string)

  • offset / limit: pagination over turns (default 0 / 200)

  • include_tool_calls (boolean): default false

Returns JSON: { conversation_id, status, total_turns, has_more, turns: [{ index, role, time_in_call_secs, message }] }

elevenlabs_list_callsA

List recent conversations/calls, newest first, with optional filters.

Args:

  • agent_id (string, optional)

  • call_successful ('success' | 'failure' | 'unknown', optional)

  • call_start_after_unix / call_start_before_unix (number, optional)

  • page_size (1-100, default 30), cursor (string, optional)

Returns JSON: { calls: [{ conversation_id, agent_id, agent_name, status, call_successful, start_time_unix_secs, call_duration_secs, direction }], has_more, next_cursor }

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

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/easyonthesauce/elevenlabs-agents-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server