ThunderPhone 2.0 je tady.Spustíte sami, od 2 ¢/min.Přečíst oznámení

Connect tools & data

Používejte ThunderPhone jako server MCP

Vytvářejte, testujte, ověřujte a provozujte hlasové agenty ThunderPhone z Claude, ChatGPT, Claude Code, Codex, Cursor, VS Code nebo jiného klienta Streamable HTTP MCP.

ThunderPhone poskytuje server Streamable HTTP Model Context Protocol na adrese:

https://api.thunderphone.com/v1/mcp

Jde o opačný směr než při připojení vzdáleného serveru MCP k hlasovému agentovi:

SměrVýsledek
Vzdálený server MCP → agent ThunderPhoneHlasový agent může volat nástroje vzdáleného serveru.
ThunderPhone → váš klient MCPVáš programovací agent může ThunderPhone vytvářet, testovat a provozovat.

Ověření

Pro klienty z adresáře ve výchozím nastavení použijte OAuth: přihlaste se, vyberte organizaci a schvalte požadovaná oprávnění. Přístup odeberte v části Organizace → Klíče API → Autorizované aplikace.

Pro klienty nakonfigurované pomocí klíče API vytvořte klíč sk_live_ v části Organizace → Klíče a zpřístupněte jej klientovi MCP jako THUNDERPHONE_API_KEY. Klíč je vázán na jednu organizaci; ID vlastněné jinou organizací se chová, jako by nebylo nalezeno.

Alternativy CLI a stdio

Rozhraní ThunderPhone CLI může zapsat konfiguraci klienta a zároveň zachovat nesouvisející servery:

npx -y @thunderphone/mcp setup --client cursor --api-key-env THUNDERPHONE_API_KEY
npx thunderphone mcp setup --client claude-desktop --scope user

Po globální instalaci @thunderphone/mcp použijte thunderphone-mcp setup se stejnými možnostmi. Nastavení podporuje Claude Code, Codex, Cursor, VS Code, Gemini, Claude Desktop a Windsurf. Upřednostňuje se přímé HTTP; Desktop používá stdio.

Pro libovolného klienta podporujícího stdio nakonfigurujte command: "npx" s args: ["-y", "@thunderphone/mcp"]. Obal nejprve používá THUNDERPHONE_API_KEY, poté přihlašovací údaje z thunderphone login, obnovuje tokeny po vypršení platnosti a následně OAuth prostřednictvím mcp-remote. Přihlášení zařízení a OAuth vyžadují odpovídající zavedení OAuth rozhraní API. Cesta s klíčem API jej nevyžaduje. Konfigurace přímého HTTP nečtou úložiště přihlašovacích údajů CLI; pro opětovné použití přihlášení zařízení použijte obal stdio.

Jedná se o alternativy k ručním konfiguracím klientů níže.

Konfigurace klienta

Claude a ChatGPT se přihlašují pomocí OAuth; žádný klíč API se nepoužívá. Pokud ještě nemáte účet ThunderPhone, na přihlašovací stránce zvolte Vytvořit účet a po ověření e-mailu se vrátíte na obrazovku schválení.

Claude (web, počítač a mobil)

  1. Otevřete Přizpůsobit → Konektory (ve starších verzích Nastavení → Konektory). Pokud se ThunderPhone zobrazí v katalogu konektorů, vyberte jej. Jinak zvolte Přidat vlastní konektor, pojmenujte jej ThunderPhone a zadejte https://api.thunderphone.com/v1/mcp.
  2. Vyberte Připojit, přihlaste se do ThunderPhone, vyberte organizaci a schvalte oprávnění.
  3. V chatu zapněte ThunderPhone v nabídce nástrojů a požádejte o to, co potřebujete, například „Vypiš moje agenty“.

Claude se před prvním použitím každého nástroje zeptá na potvrzení. Chcete-li většinu těchto výzev přeskočit, otevřete Přizpůsobit → Konektory → ThunderPhone a u možnosti Nástroje jen pro čtení nastavte vždy povolit. Tyto nástroje pouze vyhledávají informace: agenty, hovory, přepisy, zůstatky a dokumentaci. Pokud chcete vidět každou změnu před jejím provedením, ponechte u Nástrojů pro zápis/odstranění vyžadování schválení.

Vlastní konektory vyžadují placený tarif Claude. U tarifů Team a Enterprise vlastník nejprve přidá konektor v nastavení konektorů organizace a poté si každý člen připojí vlastní účet ThunderPhone.

ChatGPT

  1. Pokud se ThunderPhone zobrazí v katalogu aplikací ChatGPT, vyberte jej a připojte.
  2. Jinak otevřete Nastavení → Aplikace a konektory → Pokročilá nastavení, zapněte Režim pro vývojáře a vytvořte konektor s adresou URL https://api.thunderphone.com/v1/mcp a ověřováním OAuth.
  3. Přihlaste se do ThunderPhone, vyberte organizaci a schvalte oprávnění. Přidejte ThunderPhone do chatu z nabídky nástrojů.

Odstranění agenta nebo telefonního čísla, zahození konceptu, spuštění kampaně a odeslání testovacího požadavku, který může zapisovat do externího systému, vyžadují v obou aplikacích druhé potvrzení; viz Potvrzování destruktivních akcí.

Claude Code

claude mcp add --transport http thunderphone https://api.thunderphone.com/v1/mcp \
  --header "Authorization: Bearer $THUNDERPHONE_API_KEY"

Codex

Přidejte toto do ~/.codex/config.toml:

[mcp_servers.thunderphone]
url = "https://api.thunderphone.com/v1/mcp"
bearer_token_env_var = "THUNDERPHONE_API_KEY"

Cursor

Vytvořte .cursor/mcp.json:

{
  "mcpServers": {
    "thunderphone": {
      "url": "https://api.thunderphone.com/v1/mcp",
      "headers": {
        "Authorization": "Bearer ${env:THUNDERPHONE_API_KEY}"
      }
    }
  }
}

Claude Desktop

Přidejte most mcp-remote do konfigurace 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

Vytvořte .vscode/mcp.json a zadejte klíč prostřednictvím výzvy k zadání ve 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 anotace MCP. V tabulkách R znamená pouze pro čtení, D destruktivní, I idempotentní a O interakci s externím světem nebo sítí. Pomlčka znamená, že není nastavena žádná nápověda.

Připojení

NástrojHlavní argumentyAnotaceCo dělá
get_connection_identity—R, IOvěří přihlašovací údaje a vrátí organizaci a bezpečná metadata přihlašovacích údajů.

Agenti

NástrojHlavní argumentyAnotaceCo dělá
list_agents—R, IVypíše agenty.
get_agentagent_idR, IZíská jednoho agenta.
create_agentkonfigurace agenta—Vytvoří agenta.
update_agentagent_id, změněná poleDUloží pole do konceptu agenta a nahradí tím, co koncept obsahoval. Spustí se bez kroku potvrzení: nasazený agent zůstane nezměněn až do deploy_agent a discard_agent_draft vrátí koncept zpět.
deploy_agentagent_id, volitelné if_updated_atD, IPovýší koncept do produkce.
discard_agent_draftagent_id, volitelné if_updated_at, confirmation_token při druhém požadavkuD, IZahodí připravené změny. Dvoufázové, viz Potvrzování destruktivních akcí.
duplicate_agentagent_id, volitelné name—Zkopíruje agenta v rámci organizace.
delete_agentagent_id, confirmation_token při druhém požadavkuD, ITrvale odstraní agenta. Dvoufázové.
list_agent_versionsagent_idR, IVypíše nasazené verze konfigurace.

Telefonní čísla a operátoři

NástrojHlavní argumentyAnotaceCo dělá
list_phone_numbers—R, IVypíše čísla organizace a směrování.
get_phone_number_limits—R, IZíská využití a limity spravovaných čísel.
provision_phone_numbervolitelné area_code, city, state, idempotency_keyD, OZakoupí příchozí číslo spravované službou ThunderPhone.
list_voip_connections—R, IVypíše připojené operátory zákazníka.
search_voip_numbersconnection_id, country, type, volitelné area_codeR, I, OVyhledá v inventáři operátora.
import_voip_numbersconnection_id, numbersD, OImportuje čísla, která již vlastníte u operátora.
update_phone_numberphone_number_id, pole směrování/popisku/webhookuDAktualizuje směrování čísla včetně přiřazení agenta.
delete_phone_numberphone_number_id, confirm, volitelné release_at_provider, confirmation_token při druhém požadavkuD, I, OUvolní číslo. Dvoukrokové.

SMS

NástrojHlavní argumentyAnotaceCo dělá
send_smsfrom_number, to, body, idempotency_keyD, I, OOdešle jednu textovou SMS prostřednictvím připojeného čísla Twilio nebo Telnyx.

Hovory

NástrojHlavní argumentyAnotaceCo dělá
list_callsvolitelné filtry, limit, offsetR, IVypíše hovory s použitím filtrů historie hovorů REST.
get_callcall_idR, IZíská stav hovoru a metadata.
get_call_transcriptcall_id, volitelný liveR, IZíská přepis hovoru.
get_call_audio_urlcall_id, volitelný downloadR, I, OVrátí podepsanou adresu URL zvuku; zvuk nikdy nestreamuje prostřednictvím MCP.
get_call_gradecall_idR, IZíská nejnovější hodnocení hovoru.
place_callagent_id, from_number, to_numberD, OZahájí jeden neidempotentní odchozí hovor.
export_callsfiltry hovorů, export_formatR, IExportuje až do limitu koncového bodu REST ve formátu JSON nebo CSV.

Testování a ověřování

NástrojHlavní argumentyAnotaceCo dělá
list_test_scenariosagent_idR, IVypíše testovací scénáře.
create_test_scenarioagent_id, title, scenario_prompt, volitelné podmínky—Vytvoří scénář.
generate_test_scenariosagent_id, volitelné count, include_edge_cases, localeOVygeneruje scénáře z promptu agenta.
run_agent_testsagent_id, channel, consent_to_charge, volitelný výběr/maticeD, OSpustí scénáře přes web nebo telefonii.
get_test_runagent_id, batch_idR, IZíská stav dávky a výsledky jednotlivých scénářů.
list_validation_runsagent_idR, IVypíše nedávná spuštění ověření konceptu.
get_validation_statusagent_idR, IZíská nejnovější stav ověření a shodu konceptu.

Znalosti

NástrojHlavní argumentyAnotaceCo dělá
list_knowledge_bases—R, IVypíše znalostní báze.
create_knowledge_basename, volitelné description—Vytvoří znalostní bázi.
add_knowledge_documentknowledge_base_id, name, content—Přidá text nebo Markdown.
import_knowledge_urlurl, volitelné nameOZařadí veřejnou stránku do fronty pro bezpečné zpracování.
search_knowledgeknowledge_base_id, queryR, IVyhledá v produkčním získávání informací.

Integrace, webhooky a vzdálené servery MCP

NástrojHlavní argumentyAnotaceCo dělá
list_integrations—R, IVypíše integrace funkcí HTTP.
create_integrationdisplay_name, specifikace funkce spec, volitelná pole koncového bodu—Vytvoří nástroj HTTP. Hlavičky ověřování přidejte v ovládacím panelu.
test_integrationurl, volitelná metoda/tělo/časový limit, integration_id s header_names, confirmation_token při druhém požadavkuD, OOdešle omezený testovací požadavek chráněný proti SSRF. Uložené hodnoty hlaviček se doplní z integrace a odešlou se pouze jejímu vlastnímu hostiteli. POST (výchozí), PUT, PATCH a DELETE jsou dvoukrokové; GET se spustí okamžitě.
list_webhook_endpoints—R, IVypíše podepsané koncové body webhooků.
list_webhook_deliveriesvolitelné agent_id, volitelné endpoint_idR, IVypíše nedávné výsledky doručení webhooků bez datových částí.
create_webhook_endpointlabel, url, volitelné události/stavOVytvoří podepsaný koncový bod webhooku.
test_webhook_endpointendpoint_idOOdešle syntetickou událost prostřednictvím běžného doručení.
list_mcp_servers—R, IVypíše vzdálené servery, které mohou volat hlasoví agenti.
create_mcp_serverdisplay_name, urlOZaregistruje a synchronizuje vzdálený server. Servery, které vyžadují ověřovací hlavičky, přidejte v ovládacím panelu.
sync_mcp_server_toolsserver_idD, OObnoví katalog nástrojů vzdáleného serveru.

Kampaně

NástrojHlavní argumentyAnotaceCo dělá
list_campaigns—R, IVypíše odchozí kampaně.
create_campaignpole kampaně—Vytvoří koncept kampaně.
add_campaign_contactscampaign_id, contacts—Přidá až 5 000 kontaktů JSON.
campaign_actioncampaign_id, action, volitelné consent_to_charge, confirmation_token při druhém požadavkuD, OSpustí start, pause, resume nebo stop. start a resume jsou dvoukrokové; pause a stop se spustí okamžitě.
get_campaign_statscampaign_idR, IZíská čítače a nedávné výsledky.

Hlasy, fakturace a dokumentace

NástrojHlavní argumentyPoznámkyCo dělá
list_voices—R, IVypíše hlasy a podporované jazyky.
preview_voicevoice, language, textOVygeneruje ukázku a vrátí podepsanou adresu URL.
list_voice_clones—R, IVypíše vlastní klony hlasů.
get_billing_summary—R, IZíská zůstatek a závazné ceny tarifních úrovní; neumožňuje žádné změny plateb.
search_docsquery, volitelný limitR, I, OProhledá veřejný index dokumentace.
get_doc_pagepathR, I, ONačte jednu veřejnou stránku dokumentace ve formátu Markdown.

Všechny produktové nástroje používají stejné cesty kódu REST jako veřejné API. Ověřování REST, vymezení organizace, role, povolení fakturace, kvóty, potvrzení TCPA, bezpečnost poskytovatelů a chování auditu proto platí beze změny.

Potvrzování destruktivních akcí

Nástroje označené D něco mění nebo odstraňují, případně zahajují vytáčení skutečným lidem. Ty, které nelze vrátit zpět, vyžadují dva požadavky. První požadavek nic nemění a vrátí:

{
  "status": "confirmation_required",
  "action": "Delete agent",
  "target": { "id": 195, "name": "Front Desk Receptionist" },
  "confirmation_token": "…",
  "expires_in_seconds": 600,
  "next_step": "…"
}

Asistent uživateli ukáže, čeho se akce týká, a požádá o potvrzení. Poté požadavek zopakuje se stejnými argumenty a přidá confirmation_token. Token je platný 10 minut a vztahuje se na jednu organizaci, jeden nástroj a jednu přesnou sadu argumentů, takže odstranění tří agentů vyžaduje tři potvrzení. campaign_action s pause nebo stop tento krok přeskočí, aby bylo možné probíhající kampaň vždy okamžitě zastavit, stejně jako test_integration s GET. Některé nástroje D se spouštějí jedním požadavkem, protože D označuje jejich účinek, nikoli potvrzení na straně serveru: update_agent nahradí obsah návrhu (discard_agent_draft jej vrátí zpět), deploy_agent nahradí aktivní konfiguraci, update_phone_number přesměruje probíhající hovory, sync_mcp_server_tools nahradí katalog nástrojů vzdáleného serveru, import_voip_numbers přesměruje čísla k vašemu operátorovi, run_agent_tests může spotřebovat kredit, send_sms a place_call kontaktují skutečnou osobu (place_call zachovává vlastní potvrzení souhlasu) a provision_phone_number zakoupí číslo. Váš klient MCP vás přesto může požádat o jejich schválení.

Úvodní prompty

prompts/list nabízí pět znovupoužitelných pracovních postupů:

  • create_inbound_receptionist
  • run_agent_tests
  • buy_and_attach_number
  • review_low_grade_calls
  • add_url_to_agent_knowledge

Pomocí prompts/get s uvedeným názvem promptu a jeho deklarovanými argumenty získáte připravenou uživatelskou zprávu ke spuštění.

Zdroje

resources/list zpřístupňuje veřejné referenční zdroje uložené v mezipaměti:

URIObsah
thunderphone://docs/llms.txtVeřejný index dokumentace.
thunderphone://docs/quickstartMarkdown pro rychlý začátek.
thunderphone://pricingAktuální veřejný Markdown s cenami.

Jeden zdroj načtěte pomocí resources/read. Veřejná načítání používají krátký časový limit, limit 2 MiB a desetiminutovou mezipaměť v procesu.

Protokol a chyby

Server podporuje verze protokolu 2025-06-18 a 2025-03-26; vrací podporovanou verzi klienta a v ostatních případech vybere 2025-06-18. Implementuje initialize, ping, nástroje, prompty, zdroje a oznámení. Oznámení vracejí 202 Accepted. Tento bezstavový server nezpřístupňuje posluchač SSE ani odstranění relace, takže GET a DELETE vracejí 405 Method Not Allowed s Allow: POST.

Selhání nástrojů zůstávají úspěšnými odpověďmi JSON-RPC s isError: true. Jejich text obsahuje krátkou větu následovanou blokem JSON:

{
  "code": "insufficient_balance",
  "detail": "There is not enough prepaid balance.",
  "next_step": "Call get_billing_summary, add funds in Organization > Billing, then retry."
}

Pro place_call zůstává zachována odlišná předpona outbound_tcpa_confirmation_required:. Neznámé metody JSON-RPC vracejí -32601 v odpovědi HTTP 200. Dávky JSON-RPC nejsou podporovány protokolem MCP 2025-06-18 a vracejí čistou chybu neplatného požadavku -32600.