Preskoči na vsebino

Kaj je strežnik MCP in kako je povezan s telefoniranjem

September 2, 2026 · 7 minut branja

Strežnik MCP je vmesnik, ki urejevalniku z umetno inteligenco ali asistentu (Claude Code, Cursor, Windsurf in drugim) omogoča, da med delovanjem poseže po orodju tuje storitve in ga neposredno uporabi - ne le da se o njem pogovarja. Model Context Protocol (MCP) je odprt standard, prek katerega urejevalnik zahteva seznam razpoložljivih orodij, glede na ukaz izbere pravo in ga pokliče z resničnimi parametri; strežnik na drugi strani orodje izvede in rezultat vrne v pogovor. Pri volai je eno od teh orodij make_call - zato lahko urejevalnik z umetno inteligenco dobesedno dvigne telefon in nekoga pokliče, ne da bi napisali eno samo vrstico kode.

Kaj je strežnik MCP?

Model Context Protocol je novembra 2024 predstavilo podjetje Anthropic kot odprt standard za povezovanje modelov umetne inteligence s tujimi orodji in podatki - namesto da bi si vsak urejevalnik in vsaka storitev izmišljala svojo posebno povezavo, govorijo en skupen protokol. MCP razlikuje dve strani: odjemalec MCP je aplikacija, ki jo imate zagnano (Claude Code, Cursor, Claude Desktop), in strežnik MCP je vmesnik, ki ga neka storitev (v tem primeru volai) izpostavi navzven - s seznamom orodij, ki jih je mogoče poklicati.

Strežnik MCP storitve volai deluje na naslovu https://volai.cz/mcp (gre za oddaljen strežnik, povezan z vrsto prenosa streamable HTTP, ne za proces na vašem disku) in izpostavlja 110 orodij (stanje na dan 3. 11. 2026, aktualni seznam je vedno na /docs/mcp) - od preverjanja stanja dobroimetja prek nakupa številke do pošiljanja SMS in dejanskega klica na številko.

Kako odjemalec MCP pokliče orodje?

Od namestitve do resničnega klica poteče več korakov, ki jih opravi urejevalnik sam - vi napišete le ukaz:

  1. Urejevalnik se poveže s strežnikom in se overi s ključem API (Authorization: Bearer vk_...) - z istim ključem kot REST API in z isto omejitvijo hitrosti, 60 zahtevkov na minuto.
  2. Strežnik mu pošlje seznam orodij - pri vsakem ime, človeku berljiv opis in natančno obliko parametrov (shemo JSON).
  3. Model glede na opis izbere tisto, ki ustreza ukazu - na primer make_call, kadar ukaz pravi "pokliči".
  4. Urejevalnik pokliče orodje z resničnimi parametri - telefonsko številko in navodili za agenta, ne s splošnim besedilom.
  5. Strežnik na naši strani orodje izvede - vzpostavi klic, odšteje dobroimetje - in rezultat vrne dvakrat: kot berljiv stavek in hkrati kot strukturirane podatke (structuredContent), da jih odjemalec, ki to zna, prevzame neposredno.
  6. Model rezultat prejme v pogovor in vam pove, kaj se je zgodilo - ali nadaljuje z naslednjim orodjem, na primer get_call, da počaka na konec klica in prinese prepis.

Primer: make_call v praksi

Urejevalniku z navadnim stavkom poveste, kaj želite - na primer: "Pokliči +420777123456, predstavi se kot recepcija kavarne Kavka in ugotovi, ali želi gost rezervirati mizo." Urejevalnik iz tega sestavi klic orodja make_call - tega ne boste videli, pod pokrovom pa izgleda takole:

json
{
  "to": "+420777123456",
  "systemPrompt": "Si recepcija kavarne Kavka. Dvigni klic, predstavi se in ugotovi, ali želi klicatelj rezervirati mizo - če da, vprašaj po imenu in uri."
}

Orodje zahteva cilj (to) in natanko ENEGA od treh načinov vodenja klica - agentId (vodil ga bo vaš ustvarjeni agent), from (navadno povezovanje dveh številk brez agenta) ali systemPrompt (preizkusni klic brez lastne številke - ena zahteva, nič se vnaprej ne kupuje ali ustvarja). Strežnik takoj odgovori tudi strukturirano (gre za izrez - celotna oblika objekta klica je v referenci REST API):

json
{
  "call": {
    "id": "c_7a2f91de",
    "direction": "out",
    "to": "+420777123456",
    "status": "initiated",
    "startedAt": 1756111400000
  },
  "trial": true,
  "from": "+420..."
}

Klic se začne s skupne predstavitvene številke volai, poteka po navodilih v systemPrompt in se zaračuna običajno, vključno s pribitkom za agenta, le s strožjo dnevno omejitvijo kot pri lastnem agentu - največ trije preizkusni klici brez lastne številke na račun na dan (omejitev je opisana v referenci REST API, stanje na dan 6. 9. 2026). Zato odgovor vsebuje tudi trial: true in from s skupno predstavitveno številko volai, da je jasno, da klic ne prihaja z vaše lastne številke.

Kako je MCP povezan s telefoniranjem?

Strežnik MCP sam po sebi nobenega telefona ne dvigne - je le vhodna vrata, skozi katera pride vaš ukaz do prave storitvene logike. Za njimi make_call pokliče isti sloj kot REST API in portal, ta vzpostavi klic v telefonskem omrežju, naprej pa gre enako kot pri vsakem drugem odhodnem klicu volai - prek SIP trunka, ki povezuje internetno signalizacijo z resničnim telefonskim omrežjem (kako natančno, opisuje članek Kaj je SIP trunk). MCP je torej jezik, v katerem govori urejevalnik z umetno inteligenco, SIP trunk je jezik, v katerem govori telefonsko omrežje - med njima pa leži storitvena logika, ki oba poveže.

Varnost

MCP se avtorizira z istim ključem API kot REST API - kdor ga ima, lahko v vašem imenu porablja dobroimetje: kupuje številke, kliče, pošilja SMS, ustvarja agente. Ključ zato sodi samo v nastavitve urejevalnika, nikoli v kodo frontenda ali v repozitorij na GitHubu. Sum uhajanja reši en gumb v portalu (API in MCP) - izbris ključa velja takoj in ga ni mogoče razveljaviti.

Druga plast zaščite teče na strežniku, ne v ukazu. Številka, dodana na seznam prepovedanih klicev (orodje add_to_dnc), blokira klice prek make_call in prek relaya ne glede na to, kaj piše v ukazu - modelu umetne inteligence si ni treba sam zapomniti, koga ne sme klicati, mejo varuje strežnik. Podobno orodja, ki stanejo denar ali nekaj nepovratno spremenijo (make_call, send_sms, delete_agent...), v protokolu nosijo lastne oznake - strežnik vnaprej pove, ali je dejanje nepovratno ali ga je varno ponoviti. Plačljiva dejanja namenoma NISO idempotentna: drugi klic enakega make_call po izpadu povezave vzpostavi drugi klic in zaračuna drugo plačilo, zato dober odjemalec po izteku časa klica ne ponavlja sam od sebe.

In ena stvar povsem namerno manjka: sprostitev kupljene telefonske številke ali mobilne številke med 110 orodji ni. Številko je prek MCP mogoče kupiti, ne pa odpovedati - za nepovratno dejanje, ki lahko stranko pripravi ob številko, natisnjeno na letaku, sta potrebna portal ali REST API, ne en narobe razumljen stavek v ukazu.

Kako preizkusiti

Namestitev v Claude Code je en ukaz v terminalu (Cursor, Windsurf in Claude Desktop imajo svojih nekaj vrstic JSON, glejte /docs/mcp):

bash
claude mcp add --transport http volai https://volai.cz/mcp \
  --header "Authorization: Bearer vk_VAS_KLJUC"
ŽeliteKam naprej
Popoln seznam orodij in namestitev v druge urejevalnikeStrežnik MCP
Enake podatke prek navadnih zahtevkov HTTP iz lastnega zaledjaREST API

In kam klic dejansko gre?

make_call zvok na koncu spusti v resnično telefonsko omrežje prek SIP trunka - kaj to je in zakaj ga glasovni agent z umetno inteligenco potrebuje, pojasnjuje članek Kaj je SIP trunk.

Preizkusite volai - prvih 50 kr je naših

Račun ustvarite v minuti in takoj imate na njem začetno dobroimetje za klice in številko - SMS pošljete po prvem polnjenju.

Preizkusi brezplačno