> ## Documentation Index
> Fetch the complete documentation index at: https://developers.cloudtalk.io/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP Recipes

> Ready-to-use prompts for getting real work done with CloudTalk through Claude, Cursor, or any MCP client. Copy, paste, adapt.

You don't call CloudTalk tools by name. You ask in plain language and the assistant picks the right tools for you. These are proven prompt chains you can copy, paste, and adapt.

Each recipe names the [profile](/guides/mcp/overview#profiles) it works best in. Connect that profile's URL for the sharpest results, or use the full catalogue if you move between jobs.

<Tip>
  Prompts run in sequence, like a conversation. Send the first, read what comes back, then send the next. You can always ask the assistant to explain what it's about to do before it does it.
</Tip>

## Before you start

Every recipe assumes your account can do what it asks. The conditions below don't raise an error when they aren't met — they quietly change the answer, which is worse. Skim them once before your first run.

* **Coaching recipes need Conversation Intelligence.** Summaries, sentiment, topics, smart notes and transcripts exist only for calls CI has analysed. Without it those fields come back empty rather than failing, so the assistant answers from nothing rather than telling you it can't.
* **The sentiment filter drops unanalysed calls.** A call CI hasn't analysed carries no verdict and is **excluded** from a sentiment-filtered result — not counted as neutral. So "negative calls last week" can return zero while hundreds of real calls sit in the window, and read as "no unhappy customers". Ask for the unfiltered total first, then the filtered one, and compare.
* **AI Voice Agent calls don't return a transcript.** Their transcripts don't reach Conversation Intelligence, so the transcript tools answer `transcription: null` with reason `no_transcript` — a normal answer, not an error, and not worth retrying. The two AI Voice Agent recipes below end at a transcript step; review those calls in the Dashboard instead.
* **SMS needs a sender that can reach the recipient.** Pick a company number whose `sms_supported` is true *and* that is permitted to message the recipient's country. Neither is checked in the preview, so a wrong sender is only rejected after you confirm the send.
* **Get the agent online before you confirm a dial.** Click-to-call rings the agent first, and the preview does not check availability. An agent who is offline or already on a call is rejected only once you've confirmed — so ask who is online, then dial.
* **Journey and performance aggregates are lower bounds.** They cover only the calls actually fetched, which `max_calls` caps. Read `calls_total_in_window` for how many exist in the window; a `null` there means the count could not be read, never that there were none. **Talk time follows the same rule, and this one bites:** agent-filtered call rows do not currently report durations, so an agent's talk-time total can come back `null` — unknown, not an idle agent. Compare `talk_reported_count` with `answered` to see how much of the window the figure actually covers, and open a single call for its exact duration.
* **Deduplicate with the exact-email lookup, not with a text search.** A free-text contact search matches anywhere on the record, and a query carrying a digit also matches phone numbers by substring — so searching for an address nobody has can come back with a large slice of your contact book, which a naive dedup reads as "they all exist". Ask for an exact email lookup instead: it returns the contacts holding that address, or none.

## Coaching and quality

*Analytics profile. Read-only, nothing changes.*

**Weekly QA review**

> "Pull the calls our support team answered last week." <br />
> "Run the insights on the five most recent: any negative sentiment or open action items?" <br />
> "Check the talk-listen ratios: is anyone talking over customers?"

**Find out what customers are calling about**

> "What are customers calling about most this week? Pull the topics across our answered calls." <br />
> "Which of those ended with negative sentiment?" <br />
> "Summarize the three worst and list the action items our agents committed to."

**Review one agent's month**

> "Aggregate agent 4412's activity for August: call counts, talk time, top contacts and tags." <br />
> "Sample their recent calls for sentiment: any pattern in the negative ones?"

## On a live call

*Agent assist profile.*

**Know who is calling before you pick up**

> "What's the story with +14155550123: who are they, when did we last talk, how did it go?" <br />
> "Summarize the open issues from their last two calls."

**Follow up after the call**

> "Add a note on that contact that we agreed to send the renewal quote by Friday." <br />
> "Text them from our UK number to confirm we'll follow up." *(you'll be asked to confirm before it sends)* <br />
> "Log the SMS as an activity on their contact."

**Put a human on an outbound call**

> "Who's online and free right now?" <br />
> "Start a call from my line to +14155550123." *(you'll be asked to confirm before it dials)*

## AI Voice Agents

*Voice agents profile.*

**Build and test a voice agent**

> "Create a knowledge base from our pricing page." *(you'll be asked to confirm before it's created)* <br />
> "Create an inbound voice agent in English that answers pricing questions from it." *(and again before the agent is saved)* <br />
> "Show me transcripts of its calls from today: where did it struggle?" *(see [Before you start](#before-you-start) — this step comes back empty)*

**Have a voice agent make a call**

> "List my voice agents: which one handles outbound?" <br />
> "Have it call +14155550123 to confirm their appointment." *(you'll be asked to confirm before it dials)* <br />
> "Once the call is done, show me the transcript and what the customer agreed to." *(see [Before you start](#before-you-start) — this step comes back empty)*

## Contacts and data

*Contacts profile.*

**Import a list of contacts without creating duplicates**

> "Here is a list of 20 contacts. Before creating any, search each one by email and skip the ones that already exist." <br />
> "Create the rest, and tag them '2026-import'." <br />
> "Show me which you skipped and which you created."

<Warning>
  The MCP does not check for duplicates on its own: creating the same person twice makes two contacts, and there is no tool to delete a contact through the MCP. Always ask the assistant to **search first, then create only the ones that are missing**, as above — and to search by **exact email**, not by free text. A free-text query matches anywhere on the record, and one carrying a digit also matches phone numbers by substring, so a query for an address nobody has can come back with a large slice of your contact book; read as "they all exist", it skips the entire import.
</Warning>

**Segment and tag a set of contacts**

> "Find contacts with 'acme.com' in their email." <br />
> "Tag them all 'acme-account' and log an activity noting the June import." *(tagging many at once asks for confirmation)*

<Note>
  The two halves cost very different amounts. Tagging is one call for up to 500 contacts; activities are logged one contact at a time, so a 500-contact segment is 500 more calls against the 60-per-minute limit — roughly nine minutes. For a large segment, tag first, then ask for the activity log in batches, or narrow the segment.
</Note>

**Prep a contact record before a meeting**

> "Pull the full journey for contact 90210: every call, note and activity." <br />
> "Add a note that I'm meeting them Thursday about expansion."

## Good habits

* **Let it preview.** Tools that send, dial, delete, or change many records show you exactly what they will do and wait for your go-ahead. Read the preview before confirming.
* **Search before you create.** There is no automatic duplicate check on contacts, so ask the assistant to look for an existing record first.
* **Mind the pace.** CloudTalk allows **60 requests per minute per company**. For a large job (tagging hundreds of contacts, sampling many calls) the assistant works in batches; if you hit the limit, wait a minute and continue.
* **Narrow big reads.** Call search covers about three months per query and returns up to 10,000 results. For older or larger sets, give a tighter date range or add a filter.


## Related topics

- [CloudTalk MCP](/guides/mcp/overview.md)
- [Changelog](/changelog.md)
- [CloudTalk MCP Tool Reference](/guides/mcp/tools.md)
