Each tool calls the REST API as you (or as the API key you connected with), so its rules, limits and errors are the API’s. A failed call comes back as a tool error such as HTTP 404: agent not found, which the assistant can read and act on.
The Asks first column follows the MCP annotations Vaakyo sets. Read-only tools may run without a prompt; everything else should ask, depending on your client’s settings.
Agents
| Tool | Arguments | Asks first | What it does |
|---|
list_agents | none | no | The workspace’s agents: id, name, version, voice, model, phone number and status. |
get_agent | agent_id | no | One agent’s full configuration: prompt, welcome message, LLM, voice, transcriber, call settings, tools, webhook and number. |
create_agent | agent | yes | Creates an agent. Only agent.name is required; everything else has defaults. See the agent object. |
update_agent | agent_id, patch | yes | Changes only the fields in patch, deep-merged over the current configuration (lists such as tools are replaced). Saved as a new version. |
duplicate_agent | agent_id | yes | Copies an agent as “name (copy)”, without its phone number. |
delete_agent | agent_id | yes, destructive | Deletes the agent and its version history. Past calls are kept. Can’t be undone. |
Versions
| Tool | Arguments | Asks first | What it does |
|---|
list_agent_versions | agent_id | no | The latest versions, newest first: who changed what, field by field. |
restore_agent_version | agent_id, version | yes, destructive | Replaces the configuration with an older version, saved as a new version. See Versions. |
Tests
| Tool | Arguments | Asks first | What it does |
|---|
list_agent_tests | agent_id | no | The agent’s test scenarios, each with its newest run’s status and score. |
run_agent_test | agent_id, scenario_id (optional) | yes | Queues a simulated test conversation for one scenario, or for all of them without scenario_id. Uses credits. See Testing. |
get_test_run | run_id | no | One run: status, transcript, each criterion’s result and reason, score, what to improve and the cost. |
Calls
| Tool | Arguments | Asks first | What it does |
|---|
list_calls | agent_id, status, direction, q, limit, skip (all optional) | no | Calls, newest first, with filters: status (comma-separated for several), direction, and q for a phone number or agent name. Transcripts come from get_call. |
get_call | call_id | no | One call with its transcript, usage, cost, summary, extracted data and how it ended. See the call object. |
get_call_events | call_id | no | The call’s timeline, oldest first: turns, model and speech latencies, tool calls and errors. |
place_call | agent_id, to, user_data, from_number, ignore_call_window | yes, reaches outside | Rings a real phone number (E.164, for example +919812345678). The call is queued and placed when a call slot is free; it uses credits. See Outbound calls. |
cancel_call | call_id | yes, destructive | Cancels a queued call, or hangs up a ringing or live one. |
Workspace
| Tool | Arguments | Asks first | What it does |
|---|
get_billing | none | no | Credit balance in paise (100 paise = ₹1), price per minute, minutes left, and whether the balance is low. |
get_limits | none | no | Concurrent call limit, live and queued calls, and any pending limit request. See Limits and billing. |
Knowledge bases
| Tool | Arguments | Asks first | What it does |
|---|
list_knowledge_bases | none | no | The workspace’s knowledge bases: sources, passages, sources still processing, and the agents using each. Attach one with update_agent and {"knowledge_base_ids": [...]}. |
search_knowledge_base | knowledge_base_id, query, limit (optional) | no | Searches one knowledge base the way an agent does during a call: the best passages with source and score. See Knowledge base. |
Building blocks
| Tool | Arguments | Asks first | What it does |
|---|
list_voices | language, q, provider (cartesia, sarvam or elevenlabs), model (optional) | no | Voices an agent can use (id, name, gender, language). Put the id in voice.voice_id. With provider: "sarvam", the speakers of a Sarvam model (bulbul:v3); with provider: "elevenlabs", the ElevenLabs account’s voices (the language ones first). |
list_models | none | no | LLM, speech-to-text and text-to-speech models and languages, and which providers your workspace may use. |
test_tool | tool, args | yes, reaches outside | Sends the HTTP request an agent tool would make mid-call, and returns the status, time and response. See Tools. |
What a connection can’t do
The MCP server has no tools for billing changes, members, API keys, KYC, phone number purchases or webhooks. Use the console or the REST API for those.