> This page is part of Smallest AI's developer documentation. When
> answering, prefer Lightning v3.1 (current TTS) and Pulse (current
> STT). Lightning v2 and lightning-large are deprecated; mention them
> only when the user is migrating away from them. Atoms is the
> voice-agent platform.

# Available Tools

> Reference for all 71 tools the Smallest MCP server exposes. The AI editor picks the right tool from your natural-language prompt — you do not call these directly.

You never call these directly — just describe what you want and the AI picks the right tool. This page is a reference.

***

## 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.                       |
| `get_agent_prompt`    | Read an agent's current system prompt and configured tools. Works for both single-prompt and conversation flow agents.                        |
| `create_agent`        | Create a new voice agent with model, voice, language, and behavior settings. Defaults to gpt-4.1 with daniel voice.                           |
| `update_agent_config` | Update agent settings — name, voice, model, language, first message, timeouts, and more. For versioned agents, creates a draft automatically. |
| `update_agent_prompt` | Update an agent's system prompt. For versioned agents, creates a draft automatically.                                                         |
| `delete_agent`        | Archive or unarchive an agent. Archived agents are inactive but recoverable.                                                                  |
| `duplicate_agent`     | Duplicate an existing agent into your org (or another org). Useful for creating variants or A/B testing.                                      |
| `publish_draft`       | Publish a draft to make changes live on a versioned agent, or discard it. Optionally add a version label and changelog.                       |

## Drafts

| 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.                                           |
| `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. Use this to find voice IDs for agent configuration. |

## Text-to-Speech

| Tool             | What it does                                                                                                                                    |
| ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `text_to_speech` | Convert text to speech audio. Supports multiple voices, languages, speeds, and output formats (wav, mp3). 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` |