Kas ir MCP serveris un kā tas veic tālruņa zvanus
September 2, 2026 · 7 min lasīšanas
MCP serveris ir saskarne, kas ļauj AI redaktoram vai asistentam (Claude Code, Cursor, Windsurf un citiem) darbības laikā piekļūt ārēja pakalpojuma rīkam un to tieši izmantot - nevis tikai par to runāt. Model Context Protocol (MCP) ir atvērts standarts, ar kura palīdzību redaktors pieprasa pieejamo rīku sarakstu, izvēlas piemērotāko pēc uzvednes un izsauc to ar reāliem parametriem; serveris otrā galā rīku izpilda un atdod rezultātu atpakaļ sarunā. Pakalpojumā volai viens no šādiem rīkiem ir make_call - tāpēc AI redaktors var burtiski pacelt klausuli un kādam piezvanīt, jums neuzrakstot ne vienu koda rindiņu.
Kas ir MCP serveris?
Model Context Protocol 2024. gada novembrī ieviesa Anthropic kā atvērtu standartu AI modeļu savienošanai ar ārējiem rīkiem un datiem - tā vietā, lai katrs redaktors un katrs pakalpojums izgudrotu savu atsevišķu integrāciju, visi runā vienā kopīgā protokolā. MCP nošķir divas puses: MCP klients ir lietotne, kas jums darbojas (Claude Code, Cursor, Claude Desktop), un MCP serveris ir saskarne, ko pakalpojums (šajā gadījumā volai) piedāvā ārpusei - rīku saraksts, kurus var pieprasīt izpildīt.
volai MCP serveris darbojas adresē https://volai.cz/mcp (tas ir attālais serveris, kuram piekļūst ar tā saukto streamable HTTP transportu, nevis process jūsu diskā) un piedāvā 110 rīkus (stāvoklis uz 2026. gada 3. novembri; aktuālais saraksts vienmēr ir lapā /docs/mcp) - sākot ar kredīta atlikuma pārbaudi un numura iegādi un beidzot ar SMS nosūtīšanu un, jā, zvana veikšanu.
Kā MCP klients izsauc rīku?
Starp servera uzstādīšanu un īstu tālruņa zvanu notiek vairāki soļi - tos visus veic redaktors, jums jāuzraksta tikai uzvedne:
- Redaktors izveido savienojumu ar serveri un autentificējas ar API atslēgu (
Authorization: Bearer vk_...) - tā pati atslēga kā REST API, ar to pašu ātruma ierobežojumu 60 pieprasījumi minūtē. - Serveris atsūta rīku sarakstu - katram rīkam nosaukumu, cilvēkam saprotamu aprakstu un precīzu parametru formu (JSON shēmu).
- Modelis izlasa aprakstus un izvēlas to, kas atbilst uzvednei - piemēram,
make_call, ja uzvednē ir "piezvani". - Redaktors izsauc rīku ar reāliem parametriem - īstu tālruņa numuru un īstiem norādījumiem aģentam, nevis vispārīgu tekstu.
- Serveris mūsu pusē rīku izpilda - uzsāk zvanu, noņem kredītu - un atdod rezultātu divreiz: kā lasāmu teikumu un reizē kā strukturētus datus (
structuredContent) klientam, kas tos var nolasīt tieši. - Modelis saņem rezultātu atpakaļ sarunā un pastāsta jums, kas notika - vai pāriet pie cita rīka, piemēram,
get_call, lai gaidītu zvana beigas un atnestu transkriptu.
Piemērs: make_call praksē
Jūs redaktoram ar vienkāršiem vārdiem pasakāt, ko vēlaties - piemēram: "Piezvani uz +420777123456, iepazīstini sevi kā kafejnīcas Nordic Coffee recepcionistu un noskaidro, vai zvanītājs vēlas rezervēt galdiņu." Redaktors to pārvērš rīka make_call izsaukumā - šo daļu tieši neredzat, bet iekšā tas izskatās šādi:
{
"to": "+420777123456",
"systemPrompt": "Jūs esat kafejnīcas Nordic Coffee recepcionists. Atbildiet uz zvanu, iepazīstinieties un noskaidrojiet, vai zvanītājs vēlas rezervēt galdiņu - ja jā, pajautājiet vārdu un laiku."
}Rīkam nepieciešams galamērķis (to - Čehijas vai Slovākijas numurs, vienīgie, uz kuriem volai šobrīd var zvanīt) un tieši VIENS no trim veidiem, kā zvanu vadīt - agentId (zvanu apstrādā jūsu pašu aģents), from (vienkāršs tilts starp diviem numuriem, bez aģenta) vai systemPrompt (izmēģinājuma zvans bez sava numura - viens pieprasījums, nekas iepriekš nav jāpērk vai jāizveido). Serveris atbild uzreiz abos veidos (izvilkums - pilnā zvana objekta forma ir REST API atsaucē):
{
"call": {
"id": "c_7a2f91de",
"direction": "out",
"to": "+420777123456",
"status": "initiated",
"startedAt": 1756111400000
},
"trial": true,
"from": "+420..."
}Zvans iziet no kopīga volai demonstrācijas numura, seko systemPrompt norādījumiem un tiek rēķināts kā parasti, ieskaitot aģenta uzcenojumu - tikai ar stingrāku dienas ierobežojumu nekā īstam aģentam: ne vairāk kā trīs izmēģinājuma zvani bez sava numura vienam kontam dienā (aprakstīts REST API atsaucē, stāvoklis uz 2026. gada 6. septembri). Tāpēc atbildē ir arī trial: true un from ar kopīgo volai demonstrācijas numuru - lai būtu skaidrs, ka zvans nav izgājis no jūsu paša numura.
Kā MCP serveris saistīts ar tālruņa zvaniem?
Pats MCP serveris tālruni nepaceļ - tās ir tikai ieejas durvis, pa kurām jūsu uzvedne nonāk pie īstās pakalpojuma loģikas. Aiz tām make_call izsauc to pašu slāni, ko REST API un portāls; tas izveido zvanu tālruņu tīklā tieši tāpat kā jebkuru citu izejošo volai zvanu - pa SIP trunku, kas savieno interneta signalizāciju ar īsto tālruņu tīklu (kā tieši, skaidro raksts Kas ir SIP trunks). MCP ir valoda, kurā runā AI redaktors; SIP trunks ir valoda, kurā runā tālruņu tīkls - un pakalpojuma loģika starp tiem abus savieno.
Drošība
MCP autentificējas ar to pašu API atslēgu kā REST API - ikviens, kam tā ir, var jūsu vārdā tērēt kredītu: pirkt numurus, zvanīt, sūtīt SMS, veidot aģentus. Tāpēc atslēgai jāatrodas tikai redaktora konfigurācijā, nekad frontend kodā vai GitHub repozitorijā. Aizdomu gadījumā par noplūdi portālā (API un MCP) pietiek ar vienu pogu - atslēgas dzēšana stājas spēkā uzreiz un to nevar atsaukt.
Otrs aizsardzības slānis darbojas serverī, nevis uzvednē. Numurs, kas pievienots zvanīšanas aizliegumu sarakstam (rīks add_to_dnc), bloķē zvanus gan ar make_call, gan caur relay neatkarīgi no tā, kas rakstīts uzvednē - modelim pašam nav jāatceras, kam zvanīt nedrīkst, robežu uzrauga serveris. Tāpat rīki, kas maksā naudu vai kaut ko neatgriezeniski maina (make_call, send_sms, delete_agent...), protokolā nes savus karodziņus - serveris iepriekš norāda, vai darbība ir neatgriezeniska vai drošu atkārtot. Maksas darbības apzināti NAV idempotentas: otrreizēja make_call izsaukšana pēc savienojuma pārtraukuma veic otru zvanu un noņem otru maksājumu, tāpēc labi uzvedies klients pēc taimauta to pats neatkārto.
Viena lieta trūkst apzināti: starp 110 rīkiem nav iegādāta tālruņa numura vai SMS numura atbrīvošanas. Numuru ar MCP nopirkt var, atbrīvot - nevar: neatgriezeniskai darbībai, kas klientam var atņemt uz skrejlapas nodrukāto numuru, nepieciešams portāls vai REST API, nevis viens pārprasts teikums uzvednē.
Izmēģiniet paši
Uzstādīšana Claude Code ir viena komanda terminālī (Cursor, Windsurf un Claude Desktop katram vajag savas dažas JSON rindas, skatiet /docs/mcp):
claude mcp add --transport http volai https://volai.cz/mcp \
--header "Authorization: Bearer vk_YOUR_KEY"| Jūs vēlaties | Kur doties tālāk |
|---|---|
| Pilnu rīku sarakstu un uzstādīšanu citiem redaktoriem | MCP serveris |
| Tos pašus datus ar vienkāršiem HTTP pieprasījumiem no sava backend | REST API |
Kurp zvans patiesībā nonāk?
make_call galu galā pa SIP trunku ievada skaņu īstajā tālruņu tīklā - kas tas ir un kāpēc AI balss aģentam tas nepieciešams, skaidro raksts Kas ir SIP trunks.
Izmēģiniet volai - pirmie 50 kr uz mūsu rēķina
Konta izveide aizņem minūti, un kontā uzreiz ir sākuma kredīts zvaniem un numuram - SMS varēsiet sūtīt pēc pirmā papildinājuma.
Kas tālāk
Saistītie raksti
Kas ir SIP trunks
SIP trunks ir datu savienojums, kas pārvada tālruņa zvanus pa internetu, nevis pa kabeli - tieši tas, kas AI balss aģentam vajadzīgs, lai atbildētu uz zvanu.
Pieci jautājumi pirms AI recepcionista iegādes
Cena, sākšana 5 minūtēs, numura pāradresēšana no O2/T-Mobile/Vodafone, Slovākijas numuri un PVN - pašas atbildes tieši no volai cenrāža un iestatījumiem.
Cik maksā AI recepcionists mazam uzņēmumam
AI recepcionista cenas sadalījums tālrunī: numurs, minūtes un aģents no volai cenrāža, trīs scenāriji pēc darba apjoma un salīdzinājums ar piegādātāju pašreizējām cenām.