Skip to main content

Tools

The Exotel MCP server exposes the following MCP tools. Every tool below appears in tools/list regardless of which product credentials you provide in your Authorization header. Invoking a tool whose product isn't configured (for example, a VoiceBot tool without VoiceBot credentials) returns a credential error.

Setup helpers

These two tools run even when the Authorization header has no product fields.

ToolDescription
exotel_setup_guideShows product-by-product setup instructions and which products your current credentials enable.
exotel_build_configPrints a ready-to-paste MCP config for cursor or claude, scoped to cpaas, voicebot, and / or cqa.

Build a config for another client

exotel_build_config does not connect you. Use it after at least one client can reach the server.

Ask for the client and the products. Do not put the API key, token, or base URL in the prompt.

Generate a Cursor MCP config for CPaaS only.

The tool takes a client (cursor or claude) and a product list. It does not take credentials as arguments.

  • If the current connection already has an Authorization header, the printed config reuses those fields.
  • If the header has no product fields, the output uses placeholders. You fill them in, then paste the block into the other client's config file.

This copies a working setup to another client. It is not a first-time login, and it does not hide secrets. Treat the printed block like any other config file. See Security.

CPaaS

Voice

ToolDescription
exotel_voice_call_initiateInitiates a voice call to a target number from a fixed source number.
exotel_voice_connect_two_numbersInitiates an outgoing voice call from a specified number to a target number.
exotel_voice_connect_to_call_flowInitiates a voice call and connects the number to a predefined call flow (app).
exotel_voice_get_single_call_detailsGets detailed information for a specific CallSid.
exotel_voice_get_bulk_call_detailsFetches bulk voice call details based on a source number.
exotel_voice_get_call_status_callbacksFetches voice call status callbacks for a given phone number.
exotel_voice_search_callbacks_by_numberSearches voice callbacks by phone number in both to_number or from_number.

SMS

ToolDescription
exotel_sms_send_singleSends a DLT-compliant SMS to one number.
exotel_sms_send_bulk_same_messageSends the same SMS to multiple numbers in one request.
exotel_sms_send_bulk_personalizedSends dynamic SMS to multiple numbers, each with different content.
exotel_sms_get_delivery_statusFetches SMS delivery status records for a given phone number.

Number metadata

ToolDescription
exotel_number_get_metadataRetrieves metadata for a phone number (carrier, circle) with caching.

Audio helpers

Return clickable links for audio URLs. Useful with recording URLs returned by voice or VoiceBot calls.

ToolDescription
exotel_audio_play_from_urlReturns a link to play any audio URL directly in the browser.
exotel_audio_open_playerReturns a link to open the web audio player interface.
exotel_audio_download_from_urlReturns a direct download link for an audio URL.

Engage campaigns

ToolDescription
exotel_engage_create_sms_campaignCreates an Engage SMS message campaign (static content).

VoiceBot

Bot lifecycle

ToolDescription
exotel_voicebot_list_allLists all VoiceBots on the account. Supports pagination and status filter.
exotel_voicebot_get_detailsGets full details of a single VoiceBot by ID.
exotel_voicebot_createCreates a new VoiceBot from a natural-language description.
exotel_voicebot_creation_statusChecks the status of an in-progress AI bot generation.
exotel_voicebot_deleteDeletes a VoiceBot permanently.
exotel_voicebot_update_configUpdates TTS, ASR, VAD, denoiser, webhook, or greeting config.

Outbound calls and transcripts

ToolDescription
exotel_voicebot_place_callPlaces an outbound call powered by a VoiceBot.
exotel_voicebot_call_statusGets call details by CallSid (status, duration, recording URL, timestamps).
exotel_voicebot_list_phone_numbersLists phone numbers (DIDs) available for use as callerId.
exotel_voicebot_transcript_getFetches the full conversation transcript for a VoiceBot session UUID.

Assistant configuration

ToolDescription
exotel_voicebot_assistant_get_configGets the full config of a VoiceBot assistant.
exotel_voicebot_assistant_update_promptUpdates the assistant's instruction / system prompt (creates a new version).
exotel_voicebot_assistant_push_versionCreates a new assistant version with a custom data payload.
exotel_voicebot_assistant_create_multiagentCreates a new multi-agent assistant.

Personas, voices, and specializations

ToolDescription
exotel_voicebot_persona_listLists all personas (personality, language, gender profiles).
exotel_voicebot_persona_createCreates a new persona.
exotel_voicebot_persona_updateUpdates an existing persona.
exotel_voicebot_tts_list_providersLists available TTS providers (ElevenLabs, Azure, Sarvam).
exotel_voicebot_tts_list_voicesLists voices for a given TTS provider.
exotel_voicebot_specialization_listLists specializations (reusable config overrides).
exotel_voicebot_specialization_createCreates a new specialization.
exotel_voicebot_specialization_updateUpdates a specialization's name or config.

Conversational Intelligence (CQA)

Ingestion and retrieval

ToolDescription
exotel_cqa_ingest_interactionIngest a single interaction (audio URL, transcript URL, or inline transcript text) for quality analysis.
exotel_cqa_ingest_batchIngest a batch of interactions (up to 100) as one async job.
exotel_cqa_ingest_fileSubmit a remote CSV file URL for bulk async ingestion.
exotel_cqa_get_interactionRetrieve the status and details of an ingested interaction.
exotel_cqa_track_jobTrack the status of a batch or file ingestion job.
exotel_cqa_get_analysisRetrieve the full quality analysis for a completed interaction.
exotel_cqa_list_analysesList scored interaction analyses with optional filters.

Auth and API keys

ToolDescription
exotel_cqa_loginAuthenticate with CQA to obtain a JWT bearer token. Do not paste that token into chat, tickets, or logs. Treat it like a password.
exotel_cqa_create_api_keyGenerate a new API key for data import and analysis.
exotel_cqa_list_api_keysList all active API keys.
exotel_cqa_revoke_api_keyRevoke (delete) an API key.
exotel_cqa_configure_metadataList or create metadata field mappings for interactions.

Quality profiles

ToolDescription
exotel_cqa_create_quality_profileCreate a quality profile with categories, sub-categories, and KPIs in one call.
exotel_cqa_get_quality_profileGet a profile including its full hierarchy.
exotel_cqa_list_quality_profilesList profiles with pagination.
exotel_cqa_update_quality_profileUpdate an existing profile.
exotel_cqa_duplicate_quality_profileDuplicate a profile including all categories, sub-categories, and KPIs.
exotel_cqa_delete_quality_profileDelete a profile permanently.

Assignment rules

ToolDescription
exotel_cqa_create_assignment_ruleCreate an assignment rule routing interactions to a profile.
exotel_cqa_list_assignment_rulesList assignment rules with pagination.
exotel_cqa_update_assignment_ruleUpdate an existing assignment rule.
exotel_cqa_delete_assignment_ruleDelete (deactivate) an assignment rule.

Resources

The server also publishes 19 static reference resources: API overviews, request and response JSON schemas, callback formats, error codes, and code samples. AI clients can pull any of them into context.

URI prefixContents
exotel://api/voice/*Voice API overview, connect-numbers, call-flow docs.
exotel://api/sms/*SMS API overview, send, bulk docs (with DLT).
exotel://schema/voice/* and exotel://schema/sms/*JSON schemas for requests and responses.
exotel://callbacks/voice, exotel://callbacks/smsCallback event and payload formats.
exotel://errors/codesThe full Exotel error-code list.
exotel://examples/voice, exotel://examples/smsReal-world code samples.
exotel://cqa/api/*, exotel://cqa/schema/csvCQA API overview, ingest, analysis, and CSV column specs.

Prompts

The server exposes 22 pre-built prompt templates for the most common workflows. Your AI client lists them under the "prompts" menu. Examples:

  • send_sms, make_voice_call, connect_calls
  • send_bulk_sms, send_dynamic_bulk_sms
  • check_sms_status, check_call_status, get_call_details, lookup_number_info
  • communication_workflow, bulk_campaign
  • cqa_ingest_interaction, cqa_ingest_file, cqa_check_interaction, cqa_get_analysis, cqa_track_job
  • cqa_list_quality_profiles, cqa_delete_quality_profile
  • quick_play_audio, open_audio_player, download_audio

Discovering the live tool set

To see the current list from your client, ask it:

List every tool available from the Exotel MCP server, with parameters and descriptions.

Or send a raw tools/list request over MCP; see Troubleshooting.