Open in
Kasuta ThunderPhone
Loo, testi, valideeri ja halda ThunderPhone
ThunderPhone pakub Streamable HTTP Model Context Protocoli serverit aadressil:
https://api.thunderphone.com/v1/mcpSee on vastupidine suund võrreldes kaughostitud MCP-serveri ühendamisega häälagendiga:
| Suund | Tulemus |
|---|---|
| Kaughostitud MCP-server → ThunderPhone'i agent | Häälagent saab kutsuda kaugserveri tööriistu. |
| ThunderPhone → sinu MCP-klient | Sinu programmeerimisagent saab ThunderPhone'i luua, testida ja hallata. |
Autentimine
Kasuta kataloogiklientide jaoks vaikimisi OAuthi: logi sisse, vali organisatsioon ja kiida taotletud õigused heaks. Tühista juurdepääs menüüs Organisatsioon → API-võtmed → Volitatud rakendused. Parooli muutmine või lähtestamine või konto e-posti aadressi muutmine tühistab samuti ühenduse, seega ühenda klient pärast seda uuesti.
API-võtmega seadistatud klientide jaoks loo jaotises Organisatsioon → Võtmed sk_live_-võti ja ava see oma MCP-kliendile muutujana THUNDERPHONE_API_KEY. Võti on seotud ühe organisatsiooniga; teisele organisatsioonile kuuluv ID käitub nagu seda ei leitaks.
Organisatsioonid, kes töötlevad PHI-d
Kui sinu organisatsiooni kõned võivad sisaldada kaitstud terviseteavet (PHI),
kuna sul on ThunderPhone’iga BAA või sinu agendid on määratud
PHI-d töötlema, ei tagasta ülaltoodud URL kunagi kõnesisu: transkripte,
salvestisi, hindeid, kõneloendeid, eksporditud andmeid, kampaaniate tulemusi, kõneanalüütikat ja
ülevaateid, päriskõnede põhjal loodud vestlusi ega taasesituse tulemusi. Need tööriistad tagastavad vea koodiga
code: "phi_content_unavailable". Agentide loomine, testimine ja seadistamine
toimib tavapäraselt.
See URL on avalikes assistentide kataloogides loetletud URL, mis ei pruugi PHI-d edastada. Kui sinu organisatsioonil on assistendi pakkujaga oma BAA, mis katab kasutatava tööruumi:
- Organisatsiooni administraator avab ThunderPhone’is Organisatsioon → Üldine → AI-assistendi juurdepääs ja kinnitab selle katvuse.
- Ühenda assistent kohandatud konnektorina hoopis selle URL-iga:
https://api.thunderphone.com/v1/mcp/baaKõnesisu on siis seal saadaval, sealhulgas kõned, mis võivad sisaldada PHI-d. Kinnituse tühistamine peatab selle assistendi järgmisel päringul. Kõne, mida sinu organisatsioon käsitles PHI-d mittesisaldavana, on saadaval mõlemal URL-il.
CLI ja stdio alternatiivid
ThunderPhone CLI saab kirjutada kliendi konfiguratsiooni, säilitades muud serverid:
npx -y @thunderphone/mcp setup --client cursor --api-key-env THUNDERPHONE_API_KEY
npx thunderphone mcp setup --client claude-desktop --scope userPärast paketi @thunderphone/mcp globaalset installimist kasuta sama valikutega käsku thunderphone-mcp setup.
Seadistus toetab Claude Code'i, Codexi, Cursorit, VS Code'i, Geminit, Claude
Desktopi ja Windsurfi. Eelistatud on otsene HTTP; Desktop kasutab stdio't.
Iga stdio-toega kliendi jaoks seadista command: "npx" koos
args: ["-y", "@thunderphone/mcp"]. Ümbris kasutab esmalt muutujat THUNDERPHONE_API_KEY,
seejärel käsu thunderphone login autentimisandmeid, värskendades aegunud tokeneid, ning seejärel
OAuthi mcp-remote kaudu. Seadmelogimine ja OAuth nõuavad vastavat API
OAuthi kasutuselevõttu. API-võtme kasutamine seda ei nõua. Otsesed HTTP-konfiguratsioonid ei loe
CLI autentimisandmete hoidlat; seadmelogimise taaskasutamiseks kasuta stdio-ümbrist.
Need on alternatiivid allolevatele käsitsi seadistatavatele kliendikonfiguratsioonidele.
Kliendi seadistamine
Claude ja ChatGPT kasutavad sisselogimiseks OAuthi; API-võtit ei kasutata. Kui sul veel ThunderPhone'i kontot ei ole, vali sisselogimislehel Loo konto ning pärast e-posti kinnitamist naased kinnitusekraanile.
Claude (veeb, töölauarakendus ja mobiil)
- Ava Kohanda → Konnektorid (vanemates versioonides Seaded → Konnektorid). Kui ThunderPhone kuvatakse konnektorite kataloogis, vali see. Vastasel juhul vali Lisa kohandatud konnektor, nimeta see
ThunderPhoneja sisestahttps://api.thunderphone.com/v1/mcp. - Vali Ühenda, logi ThunderPhone'i sisse, vali organisatsioon ja kinnita õigused.
- Luba vestluses ThunderPhone tööriistade menüüst ja küsi, mida vajad, näiteks „Loetle minu agendid“.
Claude küsib enne iga tööriista esmakordset kasutamist kinnitust. Enamiku nende viipade vahelejätmiseks ava Kohanda → Konnektorid → ThunderPhone ja määra Ainult lugemiseks tööriistad alati lubatuks. Need tööriistad ainult otsivad teavet: agendid, kõned, transkriptsioonid, saldod, dokumentatsioon. Kui soovid iga muudatust enne selle tegemist näha, jäta Kirjutamis-/kustutustööriistad kinnitust nõudma.
Kohandatud konnektorid nõuavad tasulist Claude'i paketti. Team- ja Enterprise-pakettides lisab omanik konnektori esmalt organisatsiooni konnektorite seadetes ning seejärel ühendab iga liige oma ThunderPhone'i konto.
ChatGPT
- Kui ThunderPhone kuvatakse ChatGPT rakenduste kataloogis, vali see ja ühenda.
- Vastasel juhul ava Seaded → Rakendused ja konnektorid → Täpsemad seaded, lülita sisse Arendajarežiim ning loo konnektor URL-iga
https://api.thunderphone.com/v1/mcpja OAuth-autentimisega. - Logi ThunderPhone'i sisse, vali organisatsioon ja kinnita õigused. Lisa ThunderPhone vestlusse tööriistade menüüst.
Häälagendi või telefoninumbri kustutamine, mustandi hülgamine, kampaania käivitamine ja välisesse süsteemi kirjutada võiva testpäringu saatmine nõuavad mõlemas rakenduses teist kinnitust; vaata hävitavate toimingute kinnitamine.
Claude Code
claude mcp add --transport http thunderphone https://api.thunderphone.com/v1/mcp \
--header "Authorization: Bearer $THUNDERPHONE_API_KEY"Codex
Lisa see faili ~/.codex/config.toml:
[mcp_servers.thunderphone]
url = "https://api.thunderphone.com/v1/mcp"
bearer_token_env_var = "THUNDERPHONE_API_KEY"Cursor
Loo .cursor/mcp.json:
{
"mcpServers": {
"thunderphone": {
"url": "https://api.thunderphone.com/v1/mcp",
"headers": {
"Authorization": "Bearer ${env:THUNDERPHONE_API_KEY}"
}
}
}
}Claude Desktop
Lisa Claude Desktopi seadistusse mcp-remote-sild:
{
"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
Loo .vscode/mcp.json ja sisesta võti VS Code'i sisestusviiba kaudu:
{
"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}"
}
}
}
}Tööriistad
Igal tööriistal on MCP annotatsioonid. Tabelites tähendab R ainult lugemist, D hävitavat toimingut, I idempotentset toimingut ja O avatud maailma-/võrgusuhtlust. Kriips tähendab, et vihjet pole määratud.
Ühendus
| Tööriist | Peamised argumendid | Annotatsioonid | Funktsioon |
|---|---|---|---|
get_connection_identity | — | R, I | Kontrollib mandaadi kehtivust ning tagastab selle organisatsiooni ja mandaadi turvalised metaandmed. |
Agendid
| Tööriist | Peamised argumendid | Märkused | Mida see teeb |
|---|---|---|---|
list_agents | — | R, I | Loetleb agendid. |
get_agent | agent_id | R, I | Hangib ühe agendi. |
create_agent | agendi konfiguratsioon | — | Loob agendi. Kasutab samu seadeid nagu update_agent, sealhulgas steps, handoffs, intro_clip ja intro_ring_count. |
update_agent | agent_id, muudetud väljad, valikuline prompt_edits, expected_prompt_sha256 | D | Salvestab väljad agendi mustandisse, asendades mustandis olnud väärtused. Töötab ilma kinnitusetapita: juurutatud agent ei muutu enne deploy_agent kasutamist ning discard_agent_draft taastab mustandi. Saad määrata ka max_hold_seconds, system_tool_settings ja words. Viiba osa muutmiseks saada prompt_edits (vaata viiba kohapeal muutmine). |
deploy_agent | agent_id, valikuline if_updated_at | D, I | Edendab mustandi tootmisse. |
discard_agent_draft | agent_id, valikuline if_updated_at, teisel päringul confirmation_token | D, I | Hülgab salvestatud muudatused. Kaheetapiline, vaata kahjustavate toimingute kinnitamine. |
duplicate_agent | agent_id, valikuline name | — | Kopeerib agendi organisatsiooni sees. |
delete_agent | agent_id, teisel päringul confirmation_token | D, I | Kustutab agendi jäädavalt. Kaheetapiline. |
list_agent_versions | agent_id | R, I | Loetleb juurutatud konfiguratsiooniversioonid. |
list_prompt_revisions | agent_id, valikulised source, limit, offset | R, I | Loetleb kõik agendi viibateksti muudatused, kaasa arvatud mustandid, igaühe juures erinevus võrreldes asendatud redaktsiooniga. Saadaval, kui agendi iteratsiooni tööriistakomplekt on sinu ühendusele saadaval (vaata allpool). |
review_prompt | agent_id, valikulised prompt, previous_prompt, quote_id, max_cost_cents | — | Kontrollib mustandviipa (või sinu saadetud teksti) viiba stiilijuhendi alusel. Iga leid tsiteerib lõiku, nimetab juhise ja pakub otsi-ja-asenda muudatust; tulemus loetleb ka viibas nõutud käitumised koos püsivate ID-dega, näitab, kas ümbertöötlus on vajalik, ning agendi enda viiba puhul, kas testvestlusi tuleb värskendada. Agendis ei muudeta midagi; loend salvestatakse koos selle viibaredaktsiooniga. Tasuline, seega ei ole see märgitud kirjutuskaitstuks: küsi hinnapakkumine dry_run abil, seejärel käivita see üks kord tagastatud quote_id ja max_cost_cents abil. Saadaval, kui agendi iteratsiooni tööriistakomplekt on sinu ühendusele saadaval (vaata allpool). |
refactor_prompt | agent_id, valikulised prompt, inventory, instructions, quote_id, max_cost_cents | — | Kirjutab viiba ümber stiilijuhendi vormi ja kaardistab iga käitumise säilitatuks, ühendatuks, ümber sõnastatuks või eemaldatuks. Tagastab uue teksti ja erinevuse ning loeb selle vaikimisi uuesti läbi, et esitada behavior_changes (lisatud, eemaldatud või muudetud) ja behavior_preserved; rakenda see update_agent abil. Tasuline: küsi hinnapakkumine dry_run abil, seejärel käivita see üks kord tagastatud quote_id ja max_cost_cents abil. Saadaval, kui agendi iteratsiooni tööriistakomplekt on sinu ühendusele saadaval (vaata allpool). |
list_reusable_instructions | — | R, I | Loetleb taaskasutatavad juhised: jagatud viibareeglid, mis on paljude agentidega seotud update_agenti reusable_instruction_ids abil. |
create_reusable_instruction | name, content | — | Loob sidumata taaskasutatava juhise. Ainult administraatoritele. |
Telefoninumbrid ja operaatorid
| Tööriist | Peamised argumendid | Märkused | Mida see teeb |
|---|---|---|---|
list_phone_numbers | — | R, I | Loetleb organisatsiooni numbrid ja marsruutimise. |
get_phone_number_limits | — | R, I | Hangib hallatavate numbrite kasutuse ja piirangud. |
provision_phone_number | valikulised area_code, city, state, idempotency_key | D, O | Ostab ThunderPhone'i hallatava sissetuleva numbri. |
list_voip_connections | — | R, I | Loetleb ühendatud kliendioperaatorid. |
search_voip_numbers | connection_id, country, type, valikuline area_code | R, I, O | Otsib operaatori numbrivalikust. |
import_voip_numbers | connection_id, numbers | D, O | Impordib operaatorile juba kuuluvad numbrid. |
update_phone_number | phone_number_id, marsruutimise/sildi/webhooki väljad | D | Värskendab numbri marsruutimist, sh agendi määramist. |
delete_phone_number | phone_number_id, confirm, valikuline release_at_provider, confirmation_token teisel päringul | D, I, O | Vabastab numbri. Kaheetapiline. |
get_voip_setup_session | valikuline session_id | R, I | Loeb juhendatud operaatori seadistust (olek, kontrollnimekiri, küsimus, mille vastust see ootab) või loetleb avatud seadistused. Seadistus algab töölaual, kuna see vajab operaatori parooli. Ainult administraatoritele. |
answer_voip_setup_question | session_id, question_id, answer | O | Edastab kasutaja vastuse seadistusele. Paroolidele, testkõne nõusolekule, serveri aadressile, kasutajanimele ja ThunderPhone'ile pakkuja kontole sisselogimise lubamisele vastatakse ainult seadistusviisardis; nende puhul tagastab see viisardi lingi ega saada midagi. |
save_voip_setup | session_id, valikuline name, confirmation_token teisel päringul | D, I, O | Salvestab ühendatud mustandühenduse, et seda saaks kasutada. Kaheetapiline. |
check_phone_number | phone_number või phone_number_id | R, I, O | Diagnoosib üht organisatsiooni enda numbrit tõendite põhjal: marsruutimine, ühendus, kinnitamine, hiljutised operaatori- ja testkõned ning kuhu operaator selle suunab. |
SMS
| Tööriist | Peamised argumendid | Märkused | Mida see teeb |
|---|---|---|---|
send_sms | from_number, to, body, idempotency_key | D, I, O | Saadab ühe lihttekstilise SMS-i ühendatud Twilio või Telnyx numbrilt. |
Kõned
| Tööriist | Peamised argumendid | Märkused | Mida see teeb |
|---|---|---|---|
list_calls | valikulised filtrid, limit, offset | R, I | Loetleb kõned REST-i kõneajaloo filtritega, sealhulgas exclude_test_calls. |
get_call | call_id | R, I | Hangib kõne oleku ja metaandmed. |
get_call_transcript | call_id, valikuline live | R, I | Hangib kõne transkriptsiooni. |
get_call_audio_url | call_id, valikuline download | R, I, O | Tagastab allkirjastatud heli-URL-i; heli ei voogedastata kunagi MCP kaudu. |
get_call_grade | call_id | R, I | Hangib uusima kõnehinde. |
place_call | agent_id, from_number, to_number | D, O | Teeb ühe mitteidempotentse väljamineva kõne. |
export_calls | kõnefiltrid, export_format | R, I | Ekspordib kuni REST-i lõpp-punkti piiranguni JSON- või CSV-vormingus. |
get_call_analytics | valikuline since_days, agent_id | R, I | Koondab päriskõned oleku, suuna, tulemuse, hinde ja probleemi järgi ning arvestab testkõnesid eraldi. |
get_call_insights | call_ids (kuni 10) | R, I | Hangib korraga mitme kõne hinde, tulemuse, kokkuvõtte ja tuvastatud probleemid. |
Testimine ja valideerimine
| Tööriist | Peamised argumendid | Märkused | Mida see teeb |
|---|---|---|---|
list_test_scenarios | agent_id | R, I | Loetleb testistsenaariumid. |
create_test_scenario | agent_id, title, scenario_prompt, valikulised tingimused | — | Loob stsenaariumi. |
generate_test_scenarios | agent_id, valikulised count, include_edge_cases, locale | O | Genereerib stsenaariumid agendi viiba põhjal. |
run_agent_tests | agent_id, channel, consent_to_charge, valikuline valik/maatriks | D, O | Käivitab stsenaariumid veebi või telefonivõrgu kaudu. |
get_test_run | agent_id, batch_id | R, I | Hangib paketi oleku ja stsenaariumipõhised tulemused. |
test_my_agent | agent_id, consent_to_charge, valikulised scenario_ids, count, wait_seconds | D, O | Testib agenti ühe päringuga: käivitab selle salvestatud stsenaariumid (genereerides mõned, kui neid pole) ja ootab otsuseid kuni minuti või tagastab batch_id tööriista get_test_run jaoks. Arveldatakse nagu run_agent_tests. |
test_in_text | agent_id, callers (1 kuni 3 kirjeldust), valikulised version, direction | O | Tasuta tekstitest: simuleeritud helistajad vestlevad tekstis päris töötlusahela kaudu agendi mustandi (või aktiivse versiooniga) ning transkriptid saabuvad umbes minuti jooksul. Tööriista tulemused on simuleeritud. |
run_simulation | agent_id, consent_to_charge, valikulised scenario_prompt, direction, language | D, O | Alustab üht simuleeritud telefonikõnet tehisintellektist helistaja ja agendi mustandi vahel, et inimene saaks muudatust kuulata. Tagastab käituse olekus in_progress. See salvestatakse, kui agent salvestab kõnesid, ning hinnatakse pärast lõppemist. Arveldatakse nagu testkõne, esmalt tasuta testieelarvest. |
get_simulation | simulation_id | R, I | Hangib simuleeritud kõne oleku ja pärast selle lõppemist selle väljundi: lühiajalise salvestise URL-i ja transkripti, kui agent salvestab kõnesid, ning hinde pärast hindamise lõppemist (enne seda null). |
list_validation_runs | agent_id | R, I | Loetleb hiljutised mustandi valideerimiskäitused. |
get_validation_status | agent_id | R, I | Hangib uusima valideerimisoleku ja mustandi vaste. |
list_conversations | agent_id, valikulised split, source | R, I | Loetleb vestlused, mille vastu agenti testitakse. Vajab agendi iteratsioonitööriistakomplekti. |
get_conversation | conversation_id | R, I | Hangib ühe testvestluse koos selle praeguste voorudega. Vajab agendi iteratsioonitööriistakomplekti. |
get_conversation_revisions | conversation_id, valikulised limit, offset | R, I | Loetleb testvestluse kõik redaktsioonid: kuidas ja miks see muutus (värskendati viiba muudatuse tõttu, taastati varasemast redaktsioonist), lisatud, eemaldatud ja muudetud käitumised, teisaldatud või kasutuselt kõrvaldatud näited ning ridade erinevuse. Vajab agendi iteratsioonitööriistakomplekti. |
generate_conversations | agent_id, valikulised count, style | O | Koostab agendi mustandi vastu simuleeritud testvestlused ja muudab nende kõige keerulisemad hetked vastusevõtmetega valideerimisnäideteks. Koosta esmalt hinnapakkumine dry_run abil; tegelik käitus vajab selle quote_id ja max_cost_cents. Vajab agendi iteratsioonitööriistakomplekti. |
import_conversations | agent_id, valikulised since_days, max_calls | O | Muudab agendi hiljutised kõned testvestlusteks (kuni kaks helistaja kohta, salvestuseta kõned jäetakse vahele) ja nende kõige keerulisemad hetked näideteks. Koosta esmalt hinnapakkumine dry_run abil; tegelik käitus vajab selle quote_id ja max_cost_cents. Vajab agendi iteratsioonitööriistakomplekti. |
refresh_conversations | agent_id, valikulised conversation_ids, from_prompt_revision_id | O | Viib agendi testvestlused pärast käitumiste lisamist, eemaldamist või muutmist vastavusse selle praeguse viibaga: suunab ümber, taastab varasema redaktsiooni (koos päris heliga) või kirjutab aegunud voorud ümber ning kõrvaldab näited, mille helistaja voor on kadunud. Koosta esmalt hinnapakkumine dry_run abil; tegelik käitus vajab selle quote_id ja max_cost_cents. Vajab agendi iteratsioonitööriistakomplekti. |
get_conversation_job | job_id | R, I | Hangib genereerimis-, importimis- või värskendustöö oleku, senise kulu võrreldes selle ülempiiriga ning selle, mida töö kirjutas või värskendas. Vajab agendi iteratsioonitööriistakomplekti. |
run_replays | agent_id, valikulised overrides, split, engine, sample_size, sample_seed, max_cost_cents, quote_id, dry_run | D, O | Esitab uuesti valimi agendi näidetest selle mustandiga või alistustega, näiteks kandidaadi viiba, hääle või tasemega, ning hindab iga vastust näite vastusevõtme järgi. Täpsed kordusesitused käitavad vooru salvestatud heli nagu aktiivne kõne; läbimismäärad esitatakse mootori kaupa. PHI-kõnede kordusesitused käitatakse PHI-na ning konfiguratsioon, mida need käitada ei saa (ElevenLabsi hääl, eksperimentaalne toode), lükatakse tagasi. dry_run tagastab hinnangu, kasutatud sample_seed ja quote_id; tegelik käitus saadab sama päringu selle quote_id ja sample_seed ning max_cost_cents-iga, mis on range ülempiir: iga päring reserveerib enne saatmist oma ülempiiri ja käitus peatub sellise päringu saatmise asemel, mis sinna ei mahu, seega jäta iga töötaja kohta hinnangu largest_reservation_cents jagu varu. Täpne kordusesitus reserveerib halvima juhu ehk tüüpilise vooru korral umbes 85 senti kuni 1,25 dollarit iga samal ajal käitatava kordusesituse kohta (kaks käitatakse korraga), kuigi tegelik kulu on mõni sent; käituselt võetakse kordusesituste tegelik kulu, seega määra max_cost_cents varuga. Täpne kordusesitus töötab eelarvega, mis on mõeldud tavapärase vooru ja ühe tootmises tehtava korduskäivituse jaoks (vastuse võidujooks uuesti ja järelevalveprotsessi uuesti proovimine); rohkem vajav voor salvestatakse veana replay_budget_exhausted, arvestatakse eraldi kui budget_exhausted, jäetakse läbimismäärast välja ning testjaotuses ei kuluta kohorti. Testjaotuses lükatakse Bolt v2-st erineva konfiguratsiooni korral tagasi salvestatud helistaja heliga kohort (test_needs_exact_replay) ja see jääb kasutamata: mõõda seda konfiguratsiooni arendusjaotuses. Vajab agendi iteratsioonitööriistakomplekti. |
compare_configs | agent_id, configs (2 kuni 4, esimene on lähtealus), valikulised sample_size, sample_seed, max_cost_cents, quote_id, dry_run | O | Esitab samad näited uuesti iga konfiguratsiooniga ning teatab läbimismäära, lähtealusega võrreldes parandatud ja rikutud näited, latentsuse esimese helini, kui sageli helistaja ootas kinnitust, tiksumist või vaikust, ning kulu vooru kohta mootori kaupa. Koosta sellele dry_run abil hinnapakkumine nagu tööriistale run_replays. Ainult arendusjaotuses: testjaotuses lükatakse see tagasi (comparison_dev_only); võrdle arenduses ja mõõda seejärel valitut tööriistaga run_replays. Vajab agendi iteratsioonitööriistakomplekti. |
get_replay_run | run_id, valikuline include_trace | R, I | Hangib kordusesituskäituse kogusummad, muutused ja näitepõhised tulemused ning selle võrdlusgrupi. Täpsed kordusesitused, mis vajasid eelarvest rohkem, arvestatakse eraldi (budget_exhausted) ja läbimismäärast väljaspool. Vajab agendi iteratsioonitööriistakomplekti. |
create_talk_link | agent_id, valikulised variant_id, language, expires_in_minutes | O | Loob ühekordse lingi, mille inimene avab brauseris, et rääkida agendi praeguse mustandiga, nagu juhtpaneeli nupp Talk. Link aegub vaikimisi 30 minuti pärast (kõige rohkem 120 minuti pärast); vestlust arveldatakse nagu Talki testkõnet. Vaata Talki lingid. Vajab agendi iteratsioonitööriistakomplekti (vt allpool). |
Agendi iteratsioonitööriistakomplekti vajavateks märgitud tööriistad kuuluvad selle hulka; tööriistakomplekt on beetaversiooni ajal lubatud organisatsioonipõhiselt ning ilma selleta tagastavad need feature_not_enabled koos järgmiste juhistega. Agendi iga vestlus kuulub kas arendus- või testjaotusse. Testjaotus on muudatuse mõõtmiseks, mitte selle häälestamiseks, seega tagastavad vestlustööriistad testjaotuse vestluse kohta ainult selle ID, jaotuse, allika, oleku ja arvud. Testjaotuse taasesituse käitus taasesitab ühe tervikliku testkohordi (sample_size ja sample_seed eiratakse), käitades iga näite selle andmete lubatud mootoril, mis määratakse enne käitust näite põhjal (salvestatud helistaja heli puhul täpne, ainult tekstiga näite puhul tekst; muu konfiguratsiooni kui Bolt v2 puhul täpne tee puudub, seega salvestatud heliga kohort lükatakse selle puhul tagasi koodiga test_needs_exact_replay ja jääb kasutamata; engine jäetakse ära või määratakse auto, kuna exact või text lükatakse tagasi koodiga test_engine_per_example ning midagi ei lange tagasi tekstile), ja tagastab ainult koondandmed mootori kaupa: läbimise määr, tõrked raskusastme ja liigi järgi, latentsus ning kulu. Esimene taasesituse salvestav tulemus kulutab kohordi, seega järgmine testikäitus kasutab mis tahes viiba puhul järgmist kohorti ning kui neid pole alles, lükatakse see tagasi koodiga no_test_cohort (kõnede importimine või vestluste genereerimine täidab uued kohordid); käitus, mis lõpeb enne taasesituse salvestamist (Core ei saa selle helinäiteid täpselt taasesitada, exact_replay_unavailable, selle taasesitusvõimekus on hõivatud, core_busy, või iga käik ületas eelarve, replay_budget_exhausted), jätab kohordi kasutamata. Arendusjaotuses langeb täpne taasesitus, mida Core ei saa käitada, tagasi tekstile ning käitus märgitakse kui degraded. Võrdlused toimivad ainult arendusjaotuses. Iga tasuline tööriist võtab vastu oma proovikäivituse quote_id, mis kehtib ühe käituse jaoks: see kulutatakse püsivalt üks kord käituse alustamisel ning enne seda tagasi lükatud või nurjunud alustamine jätab selle kasutatavaks; pärast seda nurjunud käitus annab sellest teada ning seda korratakse uue proovikäivitusega uue quote_id jaoks. OAuthi korral vajavad review_prompt ja refactor_prompt õigust agents:write, sealhulgas proovikäivitused, ning vestlus- ja taasesitustööriistad vajavad käitamiseks õigust testing:write. Inimesed näevad juhtpaneelil kogu testjaotust. Kõne, mille helistaja on agendi testjaotuses, jäetakse välja, sest see on osa testandmestikust. Tööriistakomplektiga organisatsioonis tagastavad list_calls, get_call, get_call_transcript, get_call_audio_url, get_call_grade ja export_calls selle täpselt kujul {"call_id", "start_time", "held_out": true} (ekspordi ridades on start_time asemel started_at), ilma transkriptsiooni, salvestise, ajaloo, hinde või aruandeta; kõik muud kõne väljad puuduvad, seega tuvasta väljajäetud rida enne kõike muud selle held_out väärtuse järgi. REST API teeb API-võtmete ja OAuthi tokenite puhul sama ning selle paljusid kõnesid hõlmavad vaated (aruannete kokkuvõtted, probleemiklastrid, uurimised, konveieriaruanded) jätavad väljajäetud kõned oma arvudest, klastritest ja valimitest välja ning varjavad mudeli nendest kirjutatud teksti. Väljajäetud kõne kirjutustoiming (hindamine, selle tõstmine testistsenaariumiks, käigu uuesti genereerimine) lükatakse tagasi koodiga held_out_call. Testistsenaarium, mille keegi tõstis väljajäetud kõnest, tagastatakse list_test_scenarios kaudu ja testikäitustes täpselt kujul {"id", "held_out": true}, ning sellest pärit simulatsioonikäitus tagastatakse get_test_run ja simulatsioonitööriistade kaudu täpselt kujul {"id", "scenario_id", "held_out": true}; ka selle simuleeritud kõned jäetakse välja, kuid testikäitused käitavad selle siiski. Arendusvestlus, näide või taasesituse tulemus, mis on kopeeritud väljajäetud helistaja kõnest (jaotused on agendipõhised, seega võib see helistaja kuuluda teise agendi testjaotusse), käitub nagu testjaotuse oma. Inimesed näevad juhtpaneelil väljajäetud kõnesid täielikult ning administraator saab lubada ühel API-võtmel neid täielikult näha (include_held_out_calls, vaikimisi välja lülitatud, määratav ainult juhtpaneelil) integratsiooni jaoks, mis vajab iga kõnet; MCP ei kasuta seda kunagi. Veebihaagid ei muutu. Tööriistakomplektita organisatsioonid ei näe välja held_out ega muid muudatusi.
generate_conversations, import_conversations ja refresh_conversations kasutavad mudelikrediite. Esmalt kutsu neid parameetriga dry_run: true: vastuseks on etapiviisiline kulupakkumine koos quote_id-ga ja midagi ei käivitata. Pakkumine arvestab iga päringuga, mida käitus võib tavapärase mahu juures teha. Tegelik käitus vajab seda quote_id-d (see aegub 15 minuti pärast ja toimib ainult samade argumentidega) ning max_cost_cents-i, mis on range ülempiir: enne iga päringut jätab töö reservi suurima summa, mida see päring võib maksta, ning peatub sobimatu päringu saatmise asemel, säilitades juba kirjutatu. Selle reservi tõttu võib käitus peatuda nii, et osa ülempiirist jääb kasutamata; pakkumise largest_reservation_cents näitab, kui palju varu jätta. Simuleeritud helistajad luuakse agendi viibast; style: "adversarial" loob keerulisi helistajaid, kes survestavad viiba nõrku kohti, ning need vestlused lähevad alati arendusjaotusse. target: "changed_behaviors" suunab helistajad viimases viibamuudatuses muutunu juurde. Iga agent käitab korraga üht neist töödest või üht taasesituskäivitust, seega ei muuda värskendus kunagi näiteid, millel taasesitus töötab; teise töö käimise ajal käivitamine tagastab job_active, replay_run_active või conversation_job_active koos teabega, mida oodata.
Pärast käitumise lisamist, eemaldamist või muutmist sisaldavat viibamuudatust teatab agendi mustandi review_prompt, kui palju testvestlusi kirjutati muude käitumistega viiba jaoks (conversations.refresh_suggested). Seejärel ajakohastab refresh_conversations need mustandi järgi, et arendus- ja testkogum mõõdaksid uut viipa vestlusajalugudel, mida see oleks võinud luua. Värskendus ei kaota kunagi midagi: iga vestlus säilitab kõik varasemad redaktsioonid ning eemaldatud reegli naasmisel taastatakse redaktsioon ajast, mil see olemas oli, koos helistaja tegeliku heliga. Kodeerimisagendi käivitatud värskendus jätab testjaotuse vestlused ja kõrvale jäetud kõnedest kopeeritud vestlused oma valikust, pakkumisest, edenemisest ja kulust välja; ühe neist määramine parameetris conversation_ids tagastab 403 test_conversation. Inimene värskendab neid juhtpaneelilt ning kodeerimisagentidele kuvatakse selle töö tulemustes need ainult ID-de ja arvudena. active näide, mille ajaloo, vastuse või vastusevõtme värskendus ümber kirjutab, läheb tagasi olekusse pending_review märgistusega refreshed_needs_review. Värskenduse pakkumine hinnastab iga loetavat vestlust nii, nagu see kirjutataks ümber, ja iga mudelikõnet selle väljundi ülempiiri alusel ning kehtib viiba ja vestluste kohta, mille põhjal pakkumine koostati: kui kumbki enne käitust muutub, küsi uus pakkumine; kui viip muutub käituse ajal, peatub töö olekuga failed, säilitades värskendatu.
Teadmised
| Tööriist | Peamised argumendid | Annotatsioonid | Funktsioon |
|---|---|---|---|
list_knowledge_bases | — | R, I | Loetleb teadmistebaasid. |
create_knowledge_base | name, valikuline description | — | Loob teadmistebaasi. |
add_knowledge_document | knowledge_base_id, name, content | — | Lisab teksti või Markdowni. |
import_knowledge_url | url, valikuline name | O | Lisab avaliku lehe turvalise töötlemise järjekorda. |
search_knowledge | knowledge_base_id, query | R, I | Otsib tootmiskeskkonna teabeotsingu kaudu. |
Integratsioonid, webhookid ja kaug-MCP-serverid
| Tööriist | Peamised argumendid | Märkused | Mida see teeb |
|---|---|---|---|
list_integrations | — | R, I | Loetleb HTTP-funktsioonide integratsioonid. |
create_integration | display_name, funktsiooni spec, valikulised lõpp-punkti väljad | — | Loob HTTP-tööriista. Lisa autentimispäised juhtpaneelil. |
test_integration | url, valikuline meetod/sisuajalõpp, integration_id koos header_names-iga, confirmation_token teisel päringul | D, O | Saadab piiratud, SSRF-i eest kaitstud testpäringu. Salvestatud päiste väärtused täidetakse integratsioonist ja saadetakse ainult selle enda hostile. POST (vaikimisi), PUT, PATCH ja DELETE on kaheastmelised; GET käivitatakse kohe. |
list_webhook_endpoints | — | R, I | Loetleb allkirjastatud veebikonksu lõpp-punktid. |
list_webhook_deliveries | valikuline agent_id, valikuline endpoint_id | R, I | Loetleb hiljutised veebikonksu edastamise tulemused ilma koormusandmeteta. |
create_webhook_endpoint | label, url, valikulised sündmused/olek | O | Loob allkirjastatud veebikonksu lõpp-punkti. |
copy_webhook_endpoint | endpoint_id, target_agent_id | I | Kopeerib agendi veebikonksu koos allkirjastamissaladusega serveris teisele agendile. Ainult administraatoritele. |
test_webhook_endpoint | endpoint_id | O | Saadab sünteetilise sündmuse tavapärase edastuse kaudu. |
list_mcp_servers | — | R, I | Loetleb häälagentide poolt kutsutavad kaugserverid. |
create_mcp_server | display_name, url | O | Registreerib ja sünkroonib kaugserveri. Autentimispäiseid vajavad serverid lisatakse juhtpaneelil. |
sync_mcp_server_tools | server_id | D, O | Värskendab kaugserveri tööriistakataloogi. |
Kampaaniad
| Tööriist | Peamised argumendid | Märkused | Mida see teeb |
|---|---|---|---|
list_campaigns | — | R, I | Loetleb väljaminevad kampaaniad. |
create_campaign | kampaania väljad | — | Loob kampaania mustandi. |
add_campaign_contacts | campaign_id, contacts | — | Lisab kuni 5000 JSON-kontakti. |
campaign_action | campaign_id, action, valikuline consent_to_charge, confirmation_token teisel päringul | D, O | Käivitab start, pause, resume või stop. start ja resume on kaheetapilised; pause ja stop käivituvad kohe. |
get_campaign_stats | campaign_id | R, I | Hangib loendurid ja hiljutised tulemused. |
check_campaign | valikulised campaign_id, contact_phone_number, contact_status | R, I | Selgitab, miks kampaania ei helista: selle helistamisaken oma ajavööndis, praegu helistamiseks määratud kontaktid ja mis takistab valimist. |
Organisatsiooni seaded ja blokeeritud helistajad
| Tööriist | Peamised argumendid | Märkused | Mida see teeb |
|---|---|---|---|
get_org_settings | — | R, I | Loeb ajavööndi, tööajad, testnumbrid, kõnetulemuste sildid, olekute nimed ja väljalülitatud teavitused koos väljaga updated_at. |
update_org_settings | muudetud seaded, if_updated_at, küsimisel confirmation_token | D, I | Muudab neid (ainult administraatorid). Loendid ja objektid asendavad salvestatud väärtuse. Teavituse väljalülitamine või testnumbri lisamine toimub kahes etapis. Tulemus sisaldab tagasivõtmiseks vanu väärtusi. |
get_account_limits | — | R, I | Hangib platvormi piirangud selle organisatsiooni enda väärtustega. |
list_blocked_callers | valikuline number, search | R, I | Loetleb blokeeritud helistajate numbrid. |
block_callers | numbers, valikuline note, teisel päringul confirmation_token | D, I | Keeldub nende numbrite kõnedest enne, kui mõni agent vastab. Kahes etapis, ainult administraatorid. |
unblock_callers | numbers, teisel päringul confirmation_token | D, I | Eemaldab numbrid blokeerimisloendist. Kahes etapis, ainult administraatorid. |
get_org_settings, update_org_settings ja get_account_limits vajavad org:read või org:write OAuthi õigust; ühendusel, mis loodi enne nende olemasolu, palutakse see esmakordsel kasutamisel heaks kiita.
Võimalused, abi ja importimine
| Tööriist | Peamised argumendid | Märkused | Mida see teeb |
|---|---|---|---|
get_supported_languages | — | R, I | Loetleb keeled, mida agendid räägivad, koos koodidega. |
get_agent_capabilities | — | R, I | Kirjeldab, mida agent saab kõne ajal teha ning millised seaded ja integratsioonid on olemas. |
escalate_to_human | summary | O | Palub ThunderPhone’i meeskonnalt abi. Nad vastavad ThunderPhone’is. Organisatsioonide puhul, kes võivad töödelda PHI-d, lahkub ThunderPhone’ist ainult neutraalne märkus. |
request_feature | title, request, details | O | Esitab ThunderPhone’i meeskonnale funktsioonitaotluse. Organisatsiooni kohta kuni kolm päevas. |
start_agent_import | platform | R, I | Tagastab juhtpaneeli lingi, kus sisestad oma Vapi, Retell, ElevenLabs või Bland võtme ja valid agendid. Ükski tööriist võtit ei kasuta. |
get_agent_import | valikuline import_id | R, I | Loetleb hiljutised impordid või ühe impordi oleku ja vastendatud agendid. |
commit_agent_import | import_id, valikuline item_ids | O | Loob valmis impordist agendid taustal. Ainult administraatorid. |
Hääled, arveldus ja dokumentatsioon
| Tööriist | Peamised argumendid | Märkused | Mida see teeb |
|---|---|---|---|
list_voices | — | R, I | Loetleb hääled ja toetatud keeled. |
preview_voice | voice, language, text | O | Genereerib näidise ja tagastab allkirjastatud URL-i. |
list_voice_clones | — | R, I | Loetleb kohandatud häälekloonid. |
get_billing_summary | — | R, I | Hangib saldo ja ametlikud hinnatasemete hinnad; maksemuudatusi ei võimaldata. |
search_docs | query, valikuline limit | R, I, O | Otsib avaliku dokumentatsiooni indeksist. |
get_doc_page | path | R, I, O | Toob ühe avaliku Markdowni dokumentatsioonilehe. |
Häälagendi, kõne, numbri, kampaania või seadistuse tulemused sisaldavad vastava juhtpaneeli lehe web_url-i, nii et saad selle ThunderPhone’is avada või Zeusiga seal jätkata.
Kõik tootetööriistad kasutavad samu REST-kooditeid nagu avalik API. Seetõttu kehtivad REST-i valideerimine, organisatsioonipõhine ulatus, rollid, arvelduse lubamine, kvoodid, TCPA kinnitus, teenusepakkuja turvalisus ja auditeerimiskäitumine muutmata kujul.
Viipa muutmine kohapeal
update_agent saab muuta mustandi viiba osa, ilma et peaksid kogu teksti tagasi saatma. prompt_edits on järjestatud otsi-ja-asenda paaride loend samas vormingus, mille tagastavad review_prompt ja refactor_prompt:
{
"agent_id": 123,
"expected_prompt_sha256": "9c1f…",
"prompt_edits": [
{
"find": "Ask for their name and their phone number, then tell them we will call back.",
"replace": "Tell them we will call back, then ask for their name. Once they answer, ask for their phone number."
}
]
}Server rakendab muudatused järjekorras agendi praegusele mustandviibale (avaldatud viibale, kui mustand puudub) ja kirjutab tulemuse mustandisse sama teed pidi nagu kogu viiba update_agent-iga uuendamisel. Iga find peab selle muudatuse rakendamise hetkel viibas esinema täpselt üks kord. Kui see nii ei ole, ei kirjutata midagi ja tõrge nimetab muudatuse:
| Kood | Tähendus | Mida teha |
|---|---|---|
prompt_edit_not_found | Teksti find ei ole praeguses mustandviibas. edit_index näitab, milline muudatus see on. | Loe agent uuesti ja kopeeri lõik täpselt. |
prompt_edit_ambiguous | Tekst find esineb rohkem kui üks kord. occurrences näitab, mitu korda. | Lisa rohkem ümbritsevat teksti. |
stale_prompt | expected_prompt_sha256 ei ole praeguse mustandviiba SHA-256: see muutus pärast selle lugemist. | Loe agent uuesti, kirjuta muudatus praeguse teksti põhjal ümber ja saada selle SHA-256. |
conflict | Serveri mustandi lugemise ja sellesse kirjutamise vahele jõudis teine kirjutus. | Proovi uuesti; see päring mustandit ei muutnud. |
expected_prompt_sha256 on valikuline ja kaitseb ka kogu viiba kirjutamist. Kasuta review_prompt-ist saadud väärtust prompt_sha256 või refactor_prompt-ist saadud väärtust source_prompt_sha256. Iga viipa muutev päring tagastab uue teksti prompt_sha256, väärtuse previous_prompt_sha256, kui server luges kõigepealt mustandit, ning next_step, mis soovitab kasutada review_prompt-i, määrates previous_prompt väärtuseks muutmiseelse teksti. REST API võtab vastu ainult kogu viiba: PATCH /v1/agents/{agent_id} koos väärtustega prompt ja if_updated_at.
Hävitavate toimingute kinnitamine
D-tähisega tööriistad muudavad või eemaldavad midagi või alustavad päris inimestele helistamist. Tagasivõtmatud toimingud nõuavad kahte päringut. Esimene päring ei muuda midagi ja tagastab:
{
"status": "confirmation_required",
"action": "Delete agent",
"target": { "id": 195, "name": "Front Desk Receptionist" },
"confirmation_token": "…",
"expires_in_seconds": 600,
"next_step": "…"
}Assistent näitab kasutajale, mida see mõjutab, ja palub kinnitust. Seejärel kordab ta päringut samade argumentidega ning lisab confirmation_token. Token kehtib 10 minutit, toimib ühe korra (ka siis, kui see kutse nurjub) ning hõlmab üht organisatsiooni, üht inimest, üht tööriista ja üht täpset argumentide kogumit, seega nõuab kolme agendi kustutamine kolme kinnitust. campaign_action väärtusega pause või stop jätab selle sammu vahele, et käimasoleva kampaania saaks alati kohe peatada; sama kehtib test_integration kohta väärtusega GET. Mõni D-tööriist käivitub ühe päringuga, sest D tähistab nende mõju, mitte serveripoolset kinnitust: update_agent asendab mustandis olnud sisu (discard_agent_draft taastab selle), deploy_agent asendab aktiivse konfiguratsiooni, update_phone_number suunab aktiivsed kõned ümber, sync_mcp_server_tools asendab kaugserveri tööriistakataloogi, import_voip_numbers suunab numbrid ümber sinu operaatorile, run_agent_tests ja run_simulation võivad kulutada krediiti, send_sms ja place_call jõuavad päris inimeseni (place_call säilitab oma nõusolekukinnituse) ning provision_phone_number ostab numbri. test_my_agent kulutab testkrediiti ja vajab consent_to_charge. Ka run_replays kulutab raha; selle dry_run hinnapakkumine ja max_cost_cents ülempiir asendavad kinnitust. Sinu MCP-klient võib siiski paluda sul need heaks kiita.
Mõned tagasipööratavad muudatused ootavad siiski kinnitust: alati block_callers, unblock_callers ja save_voip_setup; update_org_settings, kui see lülitab hoiatuse välja või lisab testnumbri; ning update_agent, kui selle attention_reasons lülitavad välja mõne agendi hoiatuse. Nende next_step palub sul kinnitada täpse muudatuse, mitte ei hoiata, et seda ei saa tagasi võtta.
Alustavad päringud
prompts/list pakub kaksteist korduskasutatavat töövoogu:
create_inbound_receptionistrun_agent_testsbuy_and_attach_numberreview_low_grade_callsadd_url_to_agent_knowledgeimprove_agent_from_callscheck_change_before_deploytest_my_agentdiagnose_phone_numberwhy_campaign_not_callingcall_reportimport_agents
Kasuta käsku prompts/get koos loetletud päringu nime ja selle deklareeritud argumentidega, et saada käivitamisvalmis kasutajasõnum.
Ressursid
resources/list pakub avalikke vahemällu salvestatud viiteid:
| URI | Sisu |
|---|---|
thunderphone://docs/llms.txt | Avaliku dokumentatsiooni indeks. |
thunderphone://docs/quickstart | Kiiralustuse Markdown. |
thunderphone://pricing | Kehtiva avaliku hinnastuse Markdown. |
thunderphone://guides/prompt-style | Häälagendi viipade stiilijuhend, mille suhtes review_prompt kontrollib. Selle juhiste ID-d (P1, W2 jne) on need, millele leiud viitavad. |
thunderphone://guides/working-with-thunderphone | Kuidas assistent peaks nende tööriistadega töötama: tee mustandiga väikseid voorusid, kontrolli enne iga juurutamist, küsi kasutajalt nõusolekut kõige reaalajas toimuva või tasulise jaoks ning ära kunagi küsi saladusi. |
Loe ressurssi käsuga resources/read. Avalikud toomispäringud kasutavad lühikest ajalõppu, 2 MiB piirangut ja kümneminutilist protsessisisest vahemälu.
Protokoll ja vead
Server toetab protokolliversioone 2025-06-18 ja 2025-03-26; see peegeldab tagasi toetatud kliendiversiooni ning muul juhul valib 2025-06-18. See rakendab meetodeid initialize, ping, tööriistu, päringuid, ressursse ja teavitusi. Teavitused tagastavad 202 Accepted. See olekuta server ei paku SSE-kuulajat ega seansi kustutamist, seega tagastavad GET ja DELETE vastuse 405 Method Not Allowed koos päisega Allow: POST.
Tööriista tõrked jäävad edukateks JSON-RPC vastusteks väärtusega isError: true. Nende tekst sisaldab lühikest lauset, millele järgneb JSON-plokk:
{
"code": "insufficient_balance",
"detail": "There is not enough prepaid balance.",
"next_step": "Call get_billing_summary, add funds in Organization > Billing, then retry."
}Eraldi prefiks outbound_tcpa_confirmation_required: säilitatakse käsu place_call jaoks. Tundmatud JSON-RPC meetodid tagastavad HTTP 200 vastuses väärtuse -32601. JSON-RPC pakke MCP 2025-06-18 ei toeta ning need tagastavad korrektse -32600 sobimatu päringu vea.