Open in
Používajte ThunderPhone ako server MCP
Vytvárajte, testujte, overujte a prevádzkujte hlasových agentov ThunderPhone z Claude, ChatGPT, Claude Code, Codex, Cursor, VS Code alebo iného klienta Streamable HTTP MCP.
ThunderPhone poskytuje server Streamable HTTP Model Context Protocol na adrese:
https://api.thunderphone.com/v1/mcpIde o opačný smer než pri pripojení vzdialeného servera MCP k hlasovému agentovi:
| Smer | Výsledok |
|---|---|
| Vzdialený server MCP → agent ThunderPhone | Hlasový agent môže volať nástroje vzdialeného servera. |
| ThunderPhone → váš klient MCP | Váš programovací agent môže vytvárať, testovať a prevádzkovať ThunderPhone. |
Overenie
Pre klientov využívajúcich adresár predvolene použite OAuth: prihláste sa, vyberte organizáciu a schváľte požadované oprávnenia. Prístup odvoláte v časti Organizácia → Kľúče API → Autorizované aplikácie.
Pre klientov nakonfigurovaných s kľúčom API vytvorte kľúč sk_live_ v časti Organizácia → Kľúče a sprístupnite ho klientovi MCP ako THUNDERPHONE_API_KEY. Kľúč je viazaný na jednu organizáciu; ID patriace inej organizácii sa správa ako nenájdené.
Alternatívy CLI a stdio
CLI ThunderPhone môže zapísať konfiguráciu klienta so zachovaním nesúvisiacich serverov:
npx -y @thunderphone/mcp setup --client cursor --api-key-env THUNDERPHONE_API_KEY
npx thunderphone mcp setup --client claude-desktop --scope userPo globálnej inštalácii @thunderphone/mcp použite thunderphone-mcp setup s
rovnakými možnosťami. Nastavenie podporuje Claude Code, Codex, Cursor, VS Code, Gemini, Claude
Desktop a Windsurf. Uprednostňuje sa priame HTTP; Desktop používa stdio.
Pre každého klienta podporujúceho stdio nakonfigurujte command: "npx" s
args: ["-y", "@thunderphone/mcp"]. Obal najprv používa THUNDERPHONE_API_KEY,
potom prihlasovacie údaje z príkazu thunderphone login, pričom obnovuje
expirované tokeny, a následne OAuth prostredníctvom mcp-remote. Prihlásenie
zariadenia a OAuth vyžadujú príslušné zavedenie OAuth API. Cesta s kľúčom API ho
nevyžaduje. Priame konfigurácie HTTP nečítajú úložisko prihlasovacích údajov CLI;
na opätovné použitie prihlásenia zariadenia použite obal stdio.
Ide o alternatívy k manuálnym konfiguráciám klienta uvedeným nižšie.
Konfigurácia klienta
Claude a ChatGPT sa prihlasujú cez OAuth; nepoužíva sa žiadny kľúč API. Ak ešte nemáte účet ThunderPhone, na prihlasovacej stránke vyberte Vytvoriť účet a po overení e-mailu sa vrátite na obrazovku schválenia.
Claude (web, počítač a mobil)
- Otvorte Prispôsobiť → Konektory (v starších verziách Nastavenia → Konektory). Ak sa ThunderPhone zobrazuje v adresári konektorov, vyberte ho. V opačnom prípade vyberte Pridať vlastný konektor, pomenujte ho
ThunderPhonea zadajtehttps://api.thunderphone.com/v1/mcp. - Vyberte Pripojiť, prihláste sa do ThunderPhone, vyberte organizáciu a schváľte povolenia.
- V chate zapnite ThunderPhone v ponuke nástrojov a požiadajte o to, čo potrebujete, napríklad „Zobraziť zoznam mojich agentov“.
Claude sa pred prvým použitím každého nástroja opýta na potvrdenie. Ak chcete väčšinu týchto výziev preskočiť, otvorte Prispôsobiť → Konektory → ThunderPhone a nastavte Nástroje len na čítanie na vždy povoliť. Tieto nástroje iba vyhľadávajú informácie: agentov, hovory, prepisy, zostatky, dokumentáciu. Ak chcete vidieť každú zmenu pred jej vykonaním, ponechajte pri Nástrojoch na zápis/odstránenie možnosť schválenia.
Vlastné konektory vyžadujú platený plán Claude. Pri plánoch Team a Enterprise vlastník najprv pridá konektor v nastaveniach konektorov organizácie a potom si každý člen pripojí vlastný účet ThunderPhone.
ChatGPT
- Ak sa ThunderPhone zobrazuje v adresári aplikácií ChatGPT, vyberte ho a pripojte sa.
- V opačnom prípade otvorte Nastavenia → Aplikácie a konektory → Rozšírené nastavenia, zapnite Režim vývojára a vytvorte konektor s adresou URL
https://api.thunderphone.com/v1/mcpa autentifikáciou OAuth. - Prihláste sa do ThunderPhone, vyberte organizáciu a schváľte povolenia. Pridajte ThunderPhone do chatu z ponuky nástrojov.
Odstránenie agenta alebo telefónneho čísla, zahodenie konceptu, spustenie kampane a odoslanie testovacej požiadavky, ktorá môže zapisovať do externého systému, vyžadujú v oboch aplikáciách druhé potvrdenie; pozrite si časť Potvrdzovanie deštruktívnych akcií.
Claude Code
claude mcp add --transport http thunderphone https://api.thunderphone.com/v1/mcp \
--header "Authorization: Bearer $THUNDERPHONE_API_KEY"Codex
Pridajte toto do ~/.codex/config.toml:
[mcp_servers.thunderphone]
url = "https://api.thunderphone.com/v1/mcp"
bearer_token_env_var = "THUNDERPHONE_API_KEY"Cursor
Vytvorte .cursor/mcp.json:
{
"mcpServers": {
"thunderphone": {
"url": "https://api.thunderphone.com/v1/mcp",
"headers": {
"Authorization": "Bearer ${env:THUNDERPHONE_API_KEY}"
}
}
}
}Claude Desktop
Pridajte most mcp-remote do konfigurácie Claude Desktop:
{
"mcpServers": {
"thunderphone": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.thunderphone.com/v1/mcp",
"--header",
"Authorization: Bearer ${THUNDERPHONE_API_KEY}"
],
"env": {
"THUNDERPHONE_API_KEY": "sk_live_YOUR_API_KEY"
}
}
}
}VS Code
Vytvorte .vscode/mcp.json a zadajte kľúč prostredníctvom výzvy na zadanie vo VS Code:
{
"inputs": [
{
"type": "promptString",
"id": "thunderphone-api-key",
"description": "ThunderPhone organization API key",
"password": true
}
],
"servers": {
"thunderphone": {
"type": "http",
"url": "https://api.thunderphone.com/v1/mcp",
"headers": {
"Authorization": "Bearer ${input:thunderphone-api-key}"
}
}
}
}Nástroje
Každý nástroj obsahuje anotácie MCP. V tabuľkách R znamená iba na čítanie, D deštruktívny, I idempotentný a O interakciu s otvoreným svetom alebo sieťou. Pomlčka znamená, že nie je nastavená žiadna nápoveda.
Pripojenie
| Nástroj | Hlavné argumenty | Anotácie | Čo robí |
|---|---|---|---|
get_connection_identity | — | R, I | Overí poverenie a vráti jeho organizáciu a bezpečné metadáta poverenia. |
Agenti
| Nástroj | Hlavné argumenty | Anotácie | Čo robí |
|---|---|---|---|
list_agents | — | R, I | Zobrazí zoznam agentov. |
get_agent | agent_id | R, I | Získa jedného agenta. |
create_agent | konfigurácia agenta | — | Vytvorí agenta. |
update_agent | agent_id, zmenené polia | D | Pripraví polia v návrhu agenta a nahradí nimi pôvodný obsah návrhu. Spustí sa bez kroku potvrdenia: nasadený agent zostane nezmenený až do deploy_agent a discard_agent_draft vráti návrh späť. |
deploy_agent | agent_id, voliteľné if_updated_at | D, I | Povýši návrh do produkcie. |
discard_agent_draft | agent_id, voliteľné if_updated_at, confirmation_token pri druhej požiadavke | D, I | Zahodí pripravené zmeny. Dvojkroková akcia, pozrite si Potvrdzovanie deštruktívnych akcií. |
duplicate_agent | agent_id, voliteľné name | — | Skopíruje agenta v rámci organizácie. |
delete_agent | agent_id, confirmation_token pri druhej požiadavke | D, I | Natrvalo odstráni agenta. Dvojkroková akcia. |
list_agent_versions | agent_id | R, I | Zobrazí zoznam verzií nasadenej konfigurácie. |
Telefónne čísla a operátori
| Nástroj | Hlavné argumenty | Poznámky | Čo robí |
|---|---|---|---|
list_phone_numbers | — | R, I | Zobrazí čísla organizácie a smerovanie. |
get_phone_number_limits | — | R, I | Získa využitie a limity spravovaných čísel. |
provision_phone_number | voliteľné area_code, city, state, idempotency_key | D, O | Zakúpi prichádzajúce číslo spravované službou ThunderPhone. |
list_voip_connections | — | R, I | Zobrazí pripojených operátorov zákazníka. |
search_voip_numbers | connection_id, country, type, voliteľné area_code | R, I, O | Vyhľadá v inventári operátora. |
import_voip_numbers | connection_id, numbers | D, O | Importuje čísla, ktoré už vlastníte u operátora. |
update_phone_number | phone_number_id, polia smerovania/štítka/webhooku | D | Aktualizuje smerovanie čísla vrátane priradenia agenta. |
delete_phone_number | phone_number_id, confirm, voliteľné release_at_provider, confirmation_token pri druhej požiadavke | D, I, O | Uvoľní číslo. V dvoch krokoch. |
SMS
| Nástroj | Hlavné argumenty | Anotácie | Čo robí |
|---|---|---|---|
send_sms | from_number, to, body, idempotency_key | D, I, O | Odošle jednu SMS v čistom texte cez pripojené číslo Twilio alebo Telnyx. |
Hovory
| Nástroj | Hlavné argumenty | Anotácie | Čo robí |
|---|---|---|---|
list_calls | voliteľné filtre, limit, offset | R, I | Vypíše hovory pomocou filtrov histórie hovorov REST. |
get_call | call_id | R, I | Získa stav hovoru a metadáta. |
get_call_transcript | call_id, voliteľné live | R, I | Získa prepis hovoru. |
get_call_audio_url | call_id, voliteľné download | R, I, O | Vráti podpísanú URL adresu zvuku; zvuk nikdy neprenáša cez MCP. |
get_call_grade | call_id | R, I | Získa najnovšie hodnotenie hovoru. |
place_call | agent_id, from_number, to_number | D, O | Uskutoční jeden neidempotentný odchádzajúci hovor. |
export_calls | filtre hovorov, export_format | R, I | Exportuje až do limitu koncového bodu REST vo formáte JSON alebo CSV. |
Testovanie a overovanie
| Nástroj | Hlavné argumenty | Anotácie | Čo robí |
|---|---|---|---|
list_test_scenarios | agent_id | R, I | Zobrazí zoznam testovacích scenárov. |
create_test_scenario | agent_id, title, scenario_prompt, voliteľné podmienky | — | Vytvorí scenár. |
generate_test_scenarios | agent_id, voliteľné count, include_edge_cases, locale | O | Vygeneruje scenáre z výzvy agenta. |
run_agent_tests | agent_id, channel, consent_to_charge, voliteľný výber/matica | D, O | Spustí scenáre cez web alebo telefóniu. |
get_test_run | agent_id, batch_id | R, I | Získa stav dávky a výsledky jednotlivých scenárov. |
list_validation_runs | agent_id | R, I | Zobrazí zoznam nedávnych spustení validácie konceptov. |
get_validation_status | agent_id | R, I | Získa najnovší stav validácie a zhodu konceptu. |
Znalosti
| Nástroj | Hlavné argumenty | Anotácie | Čo robí |
|---|---|---|---|
list_knowledge_bases | — | R, I | Zobrazí zoznam znalostných báz. |
create_knowledge_base | name, voliteľné description | — | Vytvorí znalostnú bázu. |
add_knowledge_document | knowledge_base_id, name, content | — | Pridá text alebo Markdown. |
import_knowledge_url | url, voliteľné name | O | Zaradí verejnú stránku do frontu na bezpečné načítanie. |
search_knowledge | knowledge_base_id, query | R, I | Vyhľadáva prostredníctvom produkčného vyhľadávania. |
Integrácie, webhooky a vzdialené servery MCP
| Nástroj | Hlavné argumenty | Anotácie | Čo robí |
|---|---|---|---|
list_integrations | — | R, I | Zobrazuje integrácie funkcií HTTP. |
create_integration | display_name, spec funkcie, voliteľné polia koncového bodu | — | Vytvorí nástroj HTTP. Hlavičky overenia pridajte na paneli. |
test_integration | url, voliteľná metóda/telo/časový limit, integration_id s header_names, confirmation_token pri druhej požiadavke | D, O | Odošle obmedzenú testovaciu požiadavku chránenú pred SSRF. Uložené hodnoty hlavičiek sa doplnia z integrácie a odošlú sa len na jej vlastného hostiteľa. POST (predvolená metóda), PUT, PATCH a DELETE prebiehajú v dvoch krokoch; GET sa vykoná okamžite. |
list_webhook_endpoints | — | R, I | Zobrazuje podpísané koncové body webhookov. |
list_webhook_deliveries | voliteľné agent_id, voliteľné endpoint_id | R, I | Zobrazuje nedávne výsledky doručenia webhookov bez užitočného zaťaženia. |
create_webhook_endpoint | label, url, voliteľné udalosti/stav | O | Vytvorí podpísaný koncový bod webhooku. |
test_webhook_endpoint | endpoint_id | O | Odošle syntetickú udalosť prostredníctvom bežného doručenia. |
list_mcp_servers | — | R, I | Zobrazuje vzdialené servery, ktoré môžu volať hlasoví agenti. |
create_mcp_server | display_name, url | O | Zaregistruje a synchronizuje vzdialený server. Servery, ktoré vyžadujú hlavičky overenia, pridajte na paneli. |
sync_mcp_server_tools | server_id | D, O | Obnoví katalóg nástrojov vzdialeného servera. |
Kampane
| Nástroj | Hlavné argumenty | Anotácie | Čo robí |
|---|---|---|---|
list_campaigns | — | R, I | Zobrazí zoznam odchádzajúcich kampaní. |
create_campaign | polia kampane | — | Vytvorí návrh kampane. |
add_campaign_contacts | campaign_id, contacts | — | Pridá až 5 000 kontaktov JSON. |
campaign_action | campaign_id, action, voliteľné consent_to_charge, confirmation_token pri druhej požiadavke | D, O | Spustí start, pause, resume alebo stop. start a resume sú dvojkrokové; pause a stop sa vykonajú okamžite. |
get_campaign_stats | campaign_id | R, I | Získa počítadlá a nedávne výsledky. |
Hlasy, fakturácia a dokumentácia
| Nástroj | Hlavné argumenty | Anotácie | Čo robí |
|---|---|---|---|
list_voices | — | R, I | Zobrazí zoznam hlasov a podporovaných jazykov. |
preview_voice | voice, language, text | O | Vygeneruje ukážku a vráti podpísanú adresu URL. |
list_voice_clones | — | R, I | Zobrazí zoznam vlastných klonov hlasov. |
get_billing_summary | — | R, I | Získa zostatok a záväzné ceny úrovní; nie sú k dispozícii žiadne zmeny platieb. |
search_docs | query, voliteľné limit | R, I, O | Prehľadá index verejnej dokumentácie. |
get_doc_page | path | R, I, O | Načíta jednu verejnú stránku dokumentácie vo formáte Markdown. |
Všetky produktové nástroje používajú rovnaké kódové cesty REST ako verejné API. Overovanie REST, rozsah organizácie, roly, schvaľovanie fakturácie, kvóty, potvrdenie TCPA, bezpečnosť poskytovateľov a správanie auditu sa preto uplatňujú bez zmeny.
Potvrdzovanie deštruktívnych akcií
Nástroje označené D niečo menia alebo odstraňujú, prípadne začínajú vytáčať skutočných ľudí. Tie, ktoré nemožno vrátiť späť, vyžadujú dve požiadavky. Prvá požiadavka nič nezmení a vráti:
{
"status": "confirmation_required",
"action": "Delete agent",
"target": { "id": 195, "name": "Front Desk Receptionist" },
"confirmation_token": "…",
"expires_in_seconds": 600,
"next_step": "…"
}Asistent používateľovi zobrazí, čo bude ovplyvnené, a požiada o potvrdenie. Potom požiadavku zopakuje s rovnakými argumentmi a navyše s confirmation_token. Token je platný 10 minút a vzťahuje sa na jednu organizáciu, jeden nástroj a jednu presnú množinu argumentov, takže odstránenie troch agentov vyžaduje tri potvrdenia. campaign_action s pause alebo stop tento krok preskočí, aby bolo možné prebiehajúcu kampaň vždy okamžite zastaviť, rovnako ako test_integration s GET. Niektoré nástroje D sa spúšťajú jednou požiadavkou, pretože D označuje ich účinok, nie potvrdenie na strane servera: update_agent nahradí obsah konceptu (discard_agent_draft ho vráti späť), deploy_agent nahradí aktívnu konfiguráciu, update_phone_number presmeruje aktívne hovory, sync_mcp_server_tools nahradí katalóg nástrojov vzdialeného servera, import_voip_numbers zmení smerovanie čísel k vášmu operátorovi, run_agent_tests môže minúť kredit, send_sms a place_call kontaktujú skutočnú osobu (place_call si zachováva vlastné potvrdenie súhlasu) a provision_phone_number zakúpi číslo. Váš klient MCP vás môže stále požiadať o ich schválenie.
Úvodné prompty
prompts/list ponúka päť opakovane použiteľných pracovných postupov:
create_inbound_receptionistrun_agent_testsbuy_and_attach_numberreview_low_grade_callsadd_url_to_agent_knowledge
Pomocou prompts/get s uvedeným názvom promptu a jeho deklarovanými argumentmi získate správu používateľa pripravenú na spustenie.
Zdroje
resources/list sprístupňuje verejné referencie uložené vo vyrovnávacej pamäti:
| URI | Obsah |
|---|---|
thunderphone://docs/llms.txt | Verejný index dokumentácie. |
thunderphone://docs/quickstart | Markdown pre rýchly začiatok. |
thunderphone://pricing | Aktuálny verejný Markdown s cenami. |
Jeden zdroj načítate pomocou resources/read. Verejné načítania používajú krátky časový limit, limit 2 MiB a desaťminútovú vyrovnávaciu pamäť v procese.
Protokol a chyby
Server podporuje verzie protokolu 2025-06-18 a 2025-03-26; zopakuje podporovanú verziu klienta a v opačnom prípade vyberie 2025-06-18. Implementuje initialize, ping, nástroje, prompty, zdroje a notifikácie. Notifikácie vracajú 202 Accepted. Tento bezstavový server neposkytuje SSE listener ani odstránenie relácie, preto GET a DELETE vracajú 405 Method Not Allowed s Allow: POST.
Zlyhania nástrojov zostávajú úspešnými odpoveďami JSON-RPC s isError: true. Ich text obsahuje krátku vetu, po ktorej nasleduje blok JSON:
{
"code": "insufficient_balance",
"detail": "There is not enough prepaid balance.",
"next_step": "Call get_billing_summary, add funds in Organization > Billing, then retry."
}Pre place_call zostáva zachovaná odlišná predpona outbound_tcpa_confirmation_required:. Neznáme metódy JSON-RPC vracajú -32601 v odpovedi HTTP 200. Dávky JSON-RPC nie sú podporované v MCP 2025-06-18 a vracajú jasnú chybu neplatnej požiadavky -32600.