> For the complete documentation index, see [llms.txt](https://docs.dapta.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.dapta.ai/dapta-mcp/skills/voice-agents.md).

# Voice Agents

These skills cover the full voice-agent lifecycle: building and configuring agents, then understanding how they perform. Just describe what you want, and the matching skill takes over.

{% hint style="info" %}
Writes use a **preview, then commit** flow, with one exception: `create-voice-agent` creates the agent directly once you provide the details.
{% endhint %}

## Build & configure

### create-voice-agent

**What it does:** Builds a brand-new voice agent for you in a few guided steps. You pick a template (Dapti, Lia, Alex, or Julia), choose a language, and share your company details, and Claude writes the prompt and creates the agent on Dapta, ready for a test call.

**Use it when:** You want to set up a new voice agent from scratch and have it created on the platform.

**Try saying:**

* "I want to create a voice agent for my dental clinic"
* "Set up a new outbound cold-call agent in English"
* "Build me a receptionist voice agent for my company"

**You get back:** A created voice agent on Dapta, plus its two IDs (the Dapta agent UUID and the Retell provider ID) and instructions to test it via the platform's **Test Call** button. Claude can auto-extract your company info from your website URL if you provide one.

**Writes data?** Yes. Claude collects your template, language, and company info, then creates the agent directly. This create flow has no separate preview gate.

**Behind the scenes:** `create_voice_agent`, plus `tavily_extract` and `generate_research_document` when you provide a website to auto-build company context.

***

### voice-agent-config

**What it does:** Lets you inspect and change an existing voice agent's settings: speaking speed, voice naturalness, interruption sensitivity, webhook, model, and post-call data extraction. Every change is shown to you before it is applied.

**Use it when:** You want to review how an agent is configured, or adjust a setting like "it talks too fast" or "it gets interrupted too easily."

**Try saying:**

* "My agent speaks too fast, can you slow it down?"
* "What model and voice settings does my agent use?"
* "Make my agent's voice sound more natural"

**You get back:** A clear view of the current configuration, and for changes, a preview of exactly what will change (before and after) that you confirm before it goes live.

**Writes data?** Yes, via preview then commit. Claude shows the change and waits for your explicit yes before applying it.

**Behind the scenes:** `get_agent`, `list_agents`, `get_agent_call_statistics`, and the write pair `preview_update_voice_agent` and `commit_update_voice_agent`. Prompt edits route to `voice-prompt-improver`.

***

### voice-agent-variables

**What it does:** Explains what data an agent captures: the information passed into each call (input variables) and the fields it extracts after each call (output variables), and how often those fields actually get filled.

**Use it when:** You want to understand what an agent records or extracts, before digging into call results.

**Try saying:**

* "What does this agent extract from calls?"
* "Which variables are actually getting filled in?"
* "Show me the distribution of values for the call-result field"

**You get back:** A breakdown of the agent's variables (names, types, fill rates, sample values), and counts or averages grouped by a variable's values.

**Writes data?** No, read-only. To change an agent's output variables, use the Dapta platform's agent editor.

**Behind the scenes:** `get_agent_post_call_schema`, `find_input_variables`, `discover_variables_from_calls`, `analyze_variable_usage`, `aggregate_variable_results`.

***

### voice-agent-ownership

**What it does:** Confirms that a specific voice agent belongs to your workspace. A quick yes-or-no safety check before any sensitive action like editing the agent, pulling call audio, or accessing lead data.

**Use it when:** You want to verify an agent is yours before working on it, or you are unsure whether an agent ID belongs to your account.

**Try saying:**

* "Do I own the agent called Julia?"
* "Is agent 8d96f09e... in my workspace?"
* "Confirm this agent belongs to me before I edit it"

**You get back:** A clear verdict: confirmed (with the agent's name and ID) or not confirmed (with the reason). Checking agents across multiple workspaces is not available yet; this verifies one agent in your current workspace.

**Writes data?** No, read-only.

**Behind the scenes:** `verify_agent_ownership` (the primary check), with `list_agents` to resolve a name to an ID and `get_agent` to show details.

***

### voice-prompts

**What it does:** A prompt-writing expert that creates a new voice agent prompt from scratch, fully rewrites an existing one, or refines a single section, following voice best practices (proper structure, pronunciation rules, one question at a time, no emojis).

**Use it when:** You want help writing or improving the wording of an agent's prompt, but only as text, without saving it to the live agent.

**Try saying:**

* "Write a prompt for a lead-qualification voice agent"
* "Help me improve the wording of my agent's prompt"
* "Refine just the objection-handling section of this prompt"

**You get back:** The prompt text itself: a full structured prompt, an improved version with a summary of changes, or a refined section ready to drop in. It does not apply anything to your live agent.

**Writes data?** No. This skill only generates prompt text. To save and apply changes to a live agent, use `voice-prompt-improver`.

**Behind the scenes:** Knowledge-only prompt engineering (no agent-write tool calls). For creating a whole agent it routes to `create-voice-agent`.

***

### voice-prompt-improver

**What it does:** Improves an existing agent's prompt based on its real call data, then applies the new prompt to the live agent, showing you a before-and-after diff to confirm first.

**Use it when:** You want to fix or upgrade how an agent talks (for example, better objection handling, correct pronunciation) and save those changes to the live agent.

**Try saying:**

* "Improve my voice agent's prompt and apply it"
* "My agent doesn't handle objections well, fix it"
* "Update my agent's prompt to fix how it reads phone numbers"

**You get back:** A diagnosed, improved prompt grounded in your recent calls, a before-and-after preview to approve, and, once confirmed, the new prompt live on your agent. If you cancel, you get the improved prompt as copy-paste text.

**Writes data?** Yes, via preview then commit. Claude shows the before-and-after prompt change and waits for your explicit confirmation before applying.

**Behind the scenes:** `get_agent` (with the prompt), `get_call_outcomes`, `get_agent_call_statistics`, and the prompt-only write pair `preview_update_voice_agent_prompt` and `commit_update_voice_agent_prompt`.

***

## Analytics

### voice-call-analytics

**What it does:** Analyzes your voice call activity: totals, connection and success rates, average duration, credits used, sentiment, disconnection reasons, and call categorization, and presents it the way the platform's metrics dashboard does.

**Use it when:** You want to know how your agent is performing, how many calls happened, or how calls break down by outcome or category.

**Try saying:**

* "Analyze my agent and give me a full report"
* "How many calls did I get this week and what was the connection rate?"
* "Categorize my last 100 calls by outcome"

**You get back:** A metrics summary (credits used, total calls, contacts called, connection rate, average duration), outcome and sentiment breakdowns, call-category distributions with example calls, and actionable insights.

**Writes data?** No, read-only.

**Behind the scenes:** `get_agent_complete_analysis`, `get_agent_call_statistics`, `list_calls`, `get_connection_rate`, `get_call_outcomes`, `search_calls_by_phone`, plus `discover_variables_from_calls` and `aggregate_variable_results` for categorization.

***

### voice-call-feedback

**What it does:** Analyzes the thumbs-up and thumbs-down votes and written comments people leave on your calls, giving you satisfaction rates, sentiment trends over time, and a way to dig into negative feedback.

**Use it when:** You want to know how satisfied users are with calls, see recent comments, or investigate the calls that got negative votes.

**Try saying:**

* "What's my agent's satisfaction rate?"
* "Show me recent negative feedback and comments"
* "How has satisfaction trended over the last month?"

**You get back:** A satisfaction summary (vote counts, positive and negative split, comment count), recent comments with call context, a deep dive into negative votes, daily satisfaction trends, and keyword-based comment sentiment. If no feedback exists yet, it explains how feedback is collected and offers call analysis instead.

**Writes data?** No, read-only.

**Behind the scenes:** `get_feedback_summary`, `list_recent_feedback`, `list_negative_feedback`, `get_feedback_trends`, `get_comment_sentiment` (with `list_agents` to find the agent).

***

### voice-call-audio

**What it does:** Pulls up your voice call recordings so you can listen back to actual conversations, with each call's details and a playable recording link laid out in a clean table.

**Use it when:** You want to hear what was actually said on calls, to spot-check agent performance, review a specific conversation, or grab a recording to share.

**Try saying:**

* "Show me the recordings from my last 20 calls."
* "Let me listen to the calls Sofia handled this week."
* "Pull up call recordings from February 3rd."

**You get back:** A table of calls that have recordings: call ID, agent, date, duration, phone numbers, a recording URL you can open in a browser or media player, and how the call ended. Not every call has a recording.

**Writes data?** No, read-only.

**Behind the scenes:** `list_calls_with_audio`. Supports optional filters for agent, date range, and number of calls (up to 50).

***

### voice-dialing-hours-analysis

**What it does:** Looks at your historical call data to tell you the best hours and days to dial for the highest connection and success rates, so you can schedule outbound calling when it actually works.

**Use it when:** You want to optimize an outbound calling schedule: figuring out the golden hours, the best weekdays, and the time windows to avoid.

**Try saying:**

* "What are the best hours to call for my sales agent?"
* "Which days of the week get the highest connection rates?"
* "When should I schedule outbound calls to reach the most people?"

**You get back:** Your top calling hours, the best days of the week, "avoid" windows with low connection rates, and a confidence level based on how much call data you have. If the agent does not have enough history yet, it tells you to keep dialing before relying on the recommendations.

**Writes data?** No, read-only.

**Behind the scenes:** `get_agent_call_volume_check` (to confirm there is enough data), `get_hourly_call_distribution`, `get_weekday_call_distribution`. Analysis is timezone-aware (defaults to America/Bogota and the last 90 days).

***

### voice-lead-intelligence

**What it does:** Finds your qualified leads from voice calls by first figuring out what "qualified" actually means for each specific agent, then pulling the leads that match and showing you a conversion funnel.

**Use it when:** You want to identify and extract sales-ready leads from your call data, and understand how many calls turned into connections and then into qualified leads.

**Try saying:**

* "Find me the qualified leads from my outbound campaign."
* "Who from these calls is actually ready to buy?"
* "Show me a conversion funnel for my sales agent's calls."

**You get back:** A plain explanation of what your agent tracks and what counts as "qualified" for it, then a list of qualified leads with contact info, plus a funnel showing total calls, connected, and qualified with percentages.

**Writes data?** No, read-only.

**Behind the scenes:** `discover_agent_qualification_schema` (run first to learn the agent's definition of qualified), then `find_qualified_leads`. Can also use `get_agent_post_call_schema`. Recognizes qualification signals in any language.

***

### legacy-voice-analytics

**What it does:** Lists and searches your voice agents and shows what you have spent on different features. The starting point for finding the right agent before deeper call analysis.

**Use it when:** You want to see what agents you have, find a specific agent by name, check an agent's configuration, or review credit and feature spend.

**Try saying:**

* "What voice agents do I have?"
* "Find my agent named Sofia."
* "How much did we spend on features this month?"

**You get back:** A list of your agents (name, type, status, and a link to open each one), full configuration details for a specific agent when asked, or feature usage broken down with costs in US dollars.

**Writes data?** No, read-only. Editing settings is not available here: use the Dapta platform's agent editor.

**Behind the scenes:** `list_agents` (search and listing), `get_agent` (full config), `get_feature_usage` (spend). Connection-rate and "how many calls" questions route to `voice-call-analytics`.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.dapta.ai/dapta-mcp/skills/voice-agents.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
