Available Tools
You never call these directly — just describe what you want and the AI picks the right tool. This page is a reference.
Agents
Manage agents
| Tool | What it does |
|---|---|
get_agents | List all agents in your org with voice, model, language, and call stats. Supports filtering by name, workflow type, and sorting. |
get_agent | Get full details for a single agent — voice config, model, prompt, language, call behavior, timeouts, and version info. |
create_agent | Create a new voice agent with model, voice, language, and behavior settings. Defaults to gpt-4.1 with daniel voice. |
duplicate_agent | Duplicate an existing agent into your org (or another org). Useful for creating variants or A/B testing. |
delete_agent | Archive or unarchive an agent. Archived agents are inactive but recoverable. |
Configure agents
| Tool | What it does |
|---|---|
get_agent_prompt | Read an agent’s current system prompt and configured tools. Works for both single-prompt and conversation flow agents. |
update_agent_config | Update agent settings — name, voice, model, language, STT transcriber (Pulse / Pulse-Legacy), first message, timeouts, and more. For versioned agents, creates a draft automatically. |
update_agent_prompt | Update an agent’s system prompt and optionally the first message. For versioned agents, creates a draft automatically — or pass a draft_id to stack the change onto an existing draft. |
publish_draft | Publish a draft as a new version and activate it to make it live, or discard it. Publishing triggers an automatic security check on the prompt; the tool waits for it to pass before activating and reports the real outcome (activated, still pending, or failed). Optionally add a version label and changelog. |
Tools & pre-call API
| Tool | What it does |
|---|---|
add_agent_tool | Add or update one or more API-call tools on a single-prompt agent — HTTP requests the agent invokes during a call (e.g. look up an order, book an appointment). Pass one tool or a whole batch in a single call. Upserts by name and preserves existing tools. For versioned agents, creates a draft automatically — or pass a draft_id to stack onto an existing draft. |
remove_agent_tool | Remove a tool from an agent by name. For versioned agents, creates a draft automatically — or pass a draft_id to stack onto an existing draft. |
set_pre_call_api | Configure or disable an agent’s pre-call API — one HTTP request made before the call connects to enrich the agent with variables (e.g. fetch a customer record by phone number). For versioned agents, creates a draft automatically — or pass a draft_id to stack onto an existing draft. |
Drafts
On versioned agents, every config edit lands in a draft rather than going live directly. Edit tools (update_agent_prompt, add_agent_tool, set_pre_call_api, remove_agent_tool) accept an optional draft_id so multiple changes — prompt, pre-call API, and a full toolset — can be stacked into one draft and shipped with a single publish_draft. When adding several API-call tools to the same draft, pass them as one batch: the draft’s tools section is written wholesale, so the last write defines the full set.
| Tool | What it does |
|---|---|
list_drafts | List all active (unpublished) drafts for a versioned agent — name, revision count, last editor, and last edit time. |
get_draft | Get detailed info about a draft including its latest revision, edit history, and which config sections changed per revision. |
rename_draft | Rename a draft to keep multiple drafts organized. |
get_draft_diff | Compare a draft against its source version (or any published version) to review what changed before publishing. |
test_draft | Initiate a test call using a draft’s config before publishing. Supports webcall, chat, and telephony modes. |
Published Versions
| Tool | What it does |
|---|---|
list_versions | List all published versions for an agent (newest first). Shows version number, label, active status, and who published it. |
get_version | Get full details for a published version including resolved config across all sections (voice, LLM, prompt, language, etc.). |
update_version | Update a published version’s metadata — label, release notes, or pin status. Does not change the config (published versions are immutable). |
activate_version | Activate a published version to make it live. Use this to roll back to a previous version or switch between versions. |
diff_versions | Compare two published versions side-by-side to see exactly what config changed between them. |
compare_version_metrics | A/B compare call performance metrics (calls, duration, completion rate, cost) between two versions. Supports date range filtering. |
test_version | Initiate a test call using a specific published version’s config. Useful for verifying a rollback candidate. |
Calls
| Tool | What it does |
|---|---|
make_call | Initiate an outbound phone call using a specific agent. Triggers a real call — the agent follows its configured prompt. |
chat_with_agent | Hold a text conversation with a published agent over the realtime chat WebSocket — no audio, no phone. Send a list of messages, get the agent’s reply after each, and return the full transcript. Use it to test an agent’s prompt programmatically (build → test → refine): run a scripted conversation, read the transcript, adjust with update_agent_prompt, repeat. Places a real (chargeable) chat session. |
list_calls | Search and list calls across your org. Filter by status, type, date range, agent, phone number, or campaign. |
debug_call | Get detailed info about a single call — status, transcript, errors, post-call analytics, latency metrics, cost, and event timeline. Works for calls in any state. |
Voices
| Tool | What it does |
|---|---|
get_voices | List available voices with gender, language, and accent info, plus the models each supports (a voice listing lightning-v3.1-pro is a Lightning V3.1 Pro voice). Use this to find voice IDs for agent configuration. |
Text-to-Speech
| Tool | What it does |
|---|---|
text_to_speech | Convert text to speech audio with Waves Lightning V3.1 (or V3.1 Pro). Supports multiple voices, languages, speeds, and output formats (wav, mp3, pcm, ulaw, alaw). Saves the file and returns it inline. |
Speech-to-Text
| Tool | What it does |
|---|---|
transcribe_audio | Transcribe an audio file to text. Supports 32+ languages with auto-detection, word timestamps, speaker diarization, and emotion detection. |
Organization
| Tool | What it does |
|---|---|
invite_member | Invite one or more users to your organization by email. Supports bulk invites and role assignment (member or admin). Requires admin role. |
Audiences
| Tool | What it does |
|---|---|
get_audiences | List all audiences (contact lists) in your org — name, member count, linked campaigns, and phone number column. |
get_audience | Get details for a specific audience by ID. |
delete_audience | Delete an audience. Cannot delete if linked to a campaign. |
get_audience_members | List members in an audience with pagination. Each member has phone number and any extra fields from the CSV. |
search_audience_members | Search for members by general query or specific fields (phone number, name, etc.). Returns up to 10 results. |
add_audience_members | Add contacts to an existing audience. Each member must include the phone number column. Max 10,000 per request. |
delete_audience_members | Remove specific members from an audience by member ID. |
Campaigns
| Tool | What it does |
|---|---|
get_campaigns | List outbound calling campaigns with status, progress, audience, retry config, and execution details. |
get_campaign | Get detailed info about a specific campaign — status, execution progress, events timeline, and metrics. |
create_campaign | Create a new outbound campaign with an agent, audience, retry config, and optional schedule. |
start_campaign | Start a draft or resume a paused campaign. Calls begin asynchronously. |
pause_campaign | Pause a running campaign. Active calls complete, but no new calls start. |
delete_campaign | Permanently delete a campaign and its execution data. |
export_campaign_logs | Export call logs grouped by audience member — status, duration, transcript, cost, retries, and analytics. JSON or CSV. |
Phone Numbers
| Tool | What it does |
|---|---|
get_phone_numbers | List phone numbers owned by your org. Returns the product ID needed for outbound calls with a specific caller ID. |
Analytics — Summary
| Tool | What it does |
|---|---|
get_usage_stats | Total calls, pickup rate, average duration, cost, and unique users — each with period-over-period comparison. |
get_dashboard | Full analytics dashboard in a single call — summary KPIs, call volume, outcomes, pickup rates, hourly performance, and duration stats. |
get_credit_usage | Daily credit consumption over time. Useful for billing and budget tracking. |
Analytics — Trends & Timeseries
| Tool | What it does |
|---|---|
get_call_volume | Daily call volume over time. Shows how many calls were made each day. |
get_call_outcomes | Call outcome distribution — daily breakdown of completed, failed, and no-answer calls. |
get_weekly_trends | Week-over-week metrics — calls, average duration, and cost per week. |
get_call_counts_by_day | Simple daily call count histogram. |
Analytics — Performance
| Tool | What it does |
|---|---|
get_agent_performance | Compare agents by total calls, average duration, completion rate, and cost. Find top and bottom performers. |
get_hourly_performance | Metrics by hour of day (0-23) — call count, average duration, and cost. Identify peak hours. |
get_duration_stats | Call duration percentiles — average, median, min, max, and p95. |
get_attempt_cohorts | Success rate by attempt number (1st, 2nd, 3rd attempt). Useful for optimizing retry strategies. |
Analytics — Phone Numbers
| Tool | What it does |
|---|---|
get_pickup_rates | Pickup rate per outbound phone number — total calls, answered calls, and rate. Useful for optimizing caller IDs. |
get_phone_number_trends | Per-phone-number daily trends — calls, pickup rate, and average duration over time. |
Analytics — Real-Time
| Tool | What it does |
|---|---|
get_concurrency | Concurrent call counts for a specific date — minute-by-minute data plus per-agent max concurrency. |
get_call_start_distribution | How many calls started in each hour (0-23) for a specific date. Useful for capacity planning. |
get_daily_summary | Summary for a specific date — total, completed, failed, no-answer, in-progress, in-queue, average duration, and cost. |
Billing & Payments
| Tool | What it does |
|---|---|
get_credit_balance | Get your org’s current credit balance, plan info, and enterprise status. |
get_credit_ledger | View credit transaction history — purchases, usage deductions, bonuses, adjustments. Filter by date, type, or product scope. |
get_usage_breakdown | Breakdown of credit usage by feature and product scope (voice AI, voice models, platform). |
get_invoices | List all Stripe invoices for your org. |
get_payment_methods | List configured payment methods (cards) — brand, last 4 digits, expiry, and which is default. |
get_auto_reload | View auto-reload config — whether it’s enabled, the threshold that triggers a reload, and the reload amount. |
get_billing_alerts | View billing alert config — thresholds and notification email addresses. |
update_billing_alerts | Configure billing alerts — set up to 3 usage thresholds and additional notification emails. |
get_plans | List available plans and optionally view features included in a specific plan. |
get_features | Get the effective features for your org — actual access, limits, and credit rates after plan + overrides. |
validate_coupon | Check if a coupon code is valid and see how many credits it gives. Does not redeem it. |
redeem_coupon | Apply a coupon code to add credits to your org’s balance. |
Resources
The MCP server also exposes a Platform Overview resource that gives the AI context about terminology, call types, statuses, and cost breakdowns.
| Resource | URI |
|---|---|
| Platform Overview | atoms://docs/platform-overview |

