MCP (AI agents)
Connect AI agents and LLMs to Revox via the Model Context Protocol
Revox exposes a generic MCP server that mirrors the full REST API as MCP tools. Use it to place calls, manage assistants, run campaigns, and more.
MCP server URL
Section titled “MCP server URL”Use the /mcp endpoint (streamable HTTP) with your favorite tools — e.g. OpenClaw, Cursor, Postman, or any MCP client.
MCP endpoint: https://www.getrevox.com/api/mcp-servers/generic/mcp
Authentication
Section titled “Authentication”Use your Revox API key (same as the REST API). Send it as a Bearer token on every MCP request.
- Header:
Authorization: Bearer YOUR_API_KEY - Get your API key: Dashboard → API Keys
Tools (overview)
Section titled “Tools (overview)”The server exposes the same capabilities as the REST API, as MCP tools. Main tools for voice workflows:
| Tool | Description |
|---|---|
revox_create_campaign | Create a campaign (assistant, contact list, schedule). The primary way to launch bulk outbound calls. |
revox_get_campaign | Get campaign by ID — status, progress, and analytics. |
revox_list_campaigns | List campaigns (paginated). |
revox_make_call | Place a single call (phone number, custom prompt). Voice is auto-selected from the phone number’s country; override with voice_provider/voice_id. |
revox_get_call | Get call by ID. Use to poll once, or see revox_wait_for_call for periodic updates. |
revox_wait_for_call | Poll a call by ID every few seconds; receive status via notifications/message until complete. |
revox_get_call_history | List calls (paginated). |
revox_list_assistants | List assistants. |
revox_get_assistant | Get assistant by ID. |
revox_create_assistant | Create an assistant (name, prompt, optional voice for accent/language). |
revox_auth_status | Check if the API key is valid. |
Additional tools cover phone numbers, voices, users, billing, and Nango integrations.
Voice selection
Section titled “Voice selection”Automatic voice selection (calls)
Section titled “Automatic voice selection (calls)”When you place a call with revox_make_call, the voice is automatically selected based on the target phone number’s country. For example, calling a +33… (France) number picks a French voice, +49… (Germany) picks German, and so on. No extra parameters are needed — just pass the phone_number and prompt.
You can override this by explicitly passing voice_provider and voice_id.
Manual voice selection (assistants)
Section titled “Manual voice selection (assistants)”When you create an assistant with revox_create_assistant, set voice_provider and voice_id so the voice matches the language of your prompt (e.g. French prompt → French voice). If you omit them, the default is an American English voice.
- Call
revox_list_voicesto get available voices; filter bylanguage(e.g."fr"for French). - In
revox_create_assistant, passvoice_provider(e.g."cartesia") andvoice_id(the ID from the list). Example for French: Cartesia voice IDa249eaff-1e96-4d2c-b23b-12efa4f66f41. - Use
revox_update_assistantwithvoice_providerandvoice_idto change an existing assistant’s voice. Tool names follow the patternrevox_<action>_<resource>(e.g.revox_create_campaign,revox_list_phone_numbers).
Call status (no webhooks in MCP)
Section titled “Call status (no webhooks in MCP)”MCP does not support server-initiated webhooks. After revox_make_call you get a call.id; to know when the call is done:
- Poll: Call
revox_get_callwith that ID repeatedly until the call status indicates completion. - Periodic updates: Call
revox_wait_for_callwith the call ID. The server polls every few seconds (default 5), sends each status to the client vianotifications/message, and returns the final call when the call completes (or on timeout/abort). - Revox webhooks: When placing a call with a custom assistant, you can set
webhook_urlon the assistant. Revox will HTTP POST to that URL when the call ends. Your own server can then notify the agent or user.
Example: place a call and get completion
Section titled “Example: place a call and get completion”- Call
revox_make_callwithphone_numberandprompt. The voice is automatically matched to the phone number’s country (e.g. a French number gets a French voice). To override, passvoice_providerandvoice_idexplicitly (userevox_list_voicesto find IDs). - From the response, read
call.id. - Either call
revox_get_callwith thatidrepeatedly until completed, or callrevox_wait_for_callonce to receive periodic status updates and the final result. - Use the call result (e.g. transcript, recording) as needed.
REST API reference
Section titled “REST API reference”For request/response shapes and optional parameters, see the API Reference. The MCP tool inputs map to the same request bodies and query parameters — see Campaigns, Calls, Assistants, and Voices.