Ako vybudovať MCP server za 30 minút: krok za krokom
Vybudovať MCP server znamená napísať malú službu, ktorá prostredníctvom Model Context Protocol (JSON-RPC 2.0) sprístupňuje tools, resources a prompts AI klientom ako Claude. Vyberiete si SDK (Python alebo TypeScript), zadefinujete aspoň jeden tool, zvolíte transport (stdio alebo Streamable HTTP) a server zaregistrujete v klientovi.
Key Takeaways
- ✓MCP predstavil Anthropic v novembri 2024 a 9. decembra 2025 ho odovzdal novozaloženej Agentic AI Foundation pod hlavičkou Linux Foundation - v roku 2026 je de facto štandardom pre prepájanie AI agentov s tools a dátami.
- ✓MCP server sprístupňuje tri primitíva: tools (funkcie volateľné modelom), resources (čitateľné dátové zdroje) a prompts (preddefinované šablóny). Na začiatok stačí jediný tool.
- ✓Pre lokálne servery použite transport stdio, pre vzdialené servery Streamable HTTP (od revízie špecifikácie z apríla 2025, vrátane OAuth 2.1). Oboje je založené na JSON-RPC 2.0.
- ✓Oficiálne SDK existujú pre všetky veľké programovacie jazyky; Python a TypeScript spolu hlásia vyše 97 mil. mesačných stiahnutí (stav 2026). Oboje za vás preberajú spracovanie protokolu; vy píšete len logiku toolu.
- ✓Najväčšími rizikami sú nepriama prompt injection cez popisy toolov a tool poisoning. Stavte na least-privilege, scope-obmedzené tokeny a neinštalujte MCP servery z nedôveryhodných registries automaticky.
Vybudovať MCP server znamená napísať malú službu, ktorá prostredníctvom Model Context Protocol sprístupňuje tools, resources a prompts AI klientom ako Claude. Vyberiete si SDK (Python alebo TypeScript), zadefinujete aspoň jeden tool, zvolíte transport (stdio alebo Streamable HTTP) a server zaregistrujete v klientovi. Protokol je založený na JSON-RPC 2.0 a cez SDK za vás preberá celú výmenu správ - vy píšete len svoju odbornú logiku.
Tri rýchle odpovede na úvod:
- Na prvý spustiteľný server stačí SDK, runtime (Python alebo Node.js) a jediný tool - reálne zvládnuteľné približne za 30 minút.
- Lokálne vyvíjate s transportom stdio (žiadny port, žiadna autentifikácia); pre vzdialené servery použijete Streamable HTTP s OAuth 2.1.
- MCP prepája agentov s tools a dátami. Za spoluprácu medzi samostatnými agentmi je zodpovedné A2A, nie MCP.
Čo MCP server v skutočnosti je
Anthropic predstavil Model Context Protocol 25. novembra 2024 ako otvorený štandard na prepájanie AI aplikácií s externými systémami - súborové systémy, databázy, podnikové systémy, vývojárske nástroje. Autormi sú David Soria Parra a Justin Spahr-Summers. Technicky je MCP protokol JSON-RPC 2.0 cez vymeniteľné transporty. Namiesto vymýšľania vlastného formátu pre každé pripojenie toolu hovoria klient aj server tým istým jazykom.
MCP server sprístupňuje klientovi tri primitíva:
- Tools: funkcie, ktoré model dokáže aktívne volať (napr. „zistiť počasie", „zapísať záznam"). Toto je najdôležitejší a najčastejší stavebný prvok.
- Resources: čitateľné dátové zdroje, ktoré klient môže načítať do kontextu (súbory, obsah databáz, konfigurácie).
- Prompts: preddefinované, parametrizovateľné šablóny, ktoré používateľ môže vyvolať v klientovi.
Na začiatok sa sústreďte výhradne na jeden tool. Resources a prompts pridáte neskôr.
Krok 1: Zvoľte transport - stdio alebo HTTP
Prvé architektonické rozhodnutie sa týka transportu. MCP podporuje viacero variantov, v praxi sú relevantné dva.
Kritérium | stdio | Streamable HTTP |
|---|---|---|
Nasadenie | lokálny server, beží ako podproces klienta | vzdialený server, dostupný cez sieť |
Náročnosť nastavenia | minimálna (žiadny port, žiadna autentifikácia) | potrebné hosting servera, endpoint, autentifikácia |
Autentifikácia | nie je potrebná (lokálne) | OAuth 2.1 (od revízie špecifikácie z apríla 2025) |
Viacero klientov | nie, 1:1 | áno, viacero klientov na server |
Odporúčanie na začiatok | áno - tu začnite | neskôr, pri potrebe remote |
Odporúčanie: Začnite so stdio. Klient spustí váš server ako lokálny proces a komunikuje cez štandardný vstup/výstup. Nie je potrebné riešiť žiadny port, žiadnu konfiguráciu TLS ani autentifikáciu. Akonáhle má váš server bežať vzdialene, byť využívaný viacerými klientmi alebo postavený za riadenie prístupu, migrujete na Streamable HTTP. Tento variant bol zavedený revíziou špecifikácie z apríla 2025 (spolu s podporou OAuth 2.1, JSON-RPC batchingom a tool annotations) a nahradil pôvodný čisto Server-Sent-Events model. Revízia z novembra 2025 doplnila okrem iného asynchrónne operácie, statelessness a server identity.
Krok 2: Zvoľte SDK - Python alebo TypeScript
Oficiálne SDK existujú pre všetky veľké programovacie jazyky; dve najpoužívanejšie sú Python a TypeScript (spolu vyše 97 mil. mesačných stiahnutí, stav 2026). Voľba jednoducho nasleduje váš existujúci stack:
- Python: ideálny pre tímy blízke Data/ML a rýchle prototypy.
- TypeScript: ideálny pre tímy orientované na Node.js/Next.js a webové stacky.
Obe SDK preberajú spracovanie JSON-RPC, vyjednávanie capabilities a pripojenie transportu. Vy deklarujete tool s názvom, popisom a schémou parametrov a napíšete samotnú funkciu.
Krok 3: Minimálny server s jedným toolom (pseudokód)
Nasledujúci príklad v pseudokóde ukazuje server s presne jedným toolom, ktorý vykonáva prepočet výmenného kurzu. Logika je zámerne triviálna - ide o štruktúru.
```
Pseudokód (inšpirovaný štýlom Python SDK)
server = MCPServer(name="fx-tools")
@server.tool(
name="convert_currency",
description="Prepočíta sumu z jednej meny na inú. "
"Očakáva betrag (číslo), von (ISO kód), nach (ISO kód).",
input_schema={
"type": "object",
"properties": {
"betrag": {"type": "number"},
"von": {"type": "string"},
"nach": {"type": "string"}
},
"required": ["betrag", "von", "nach"]
}
)
def convert_currency(betrag, von, nach):
kurs = lookup_rate(von, nach) # vlastná odborná logika
ergebnis = round(betrag * kurs, 2)
return {"ergebnis": ergebnis, "kurs": kurs}
DÔLEŽITÉ: logovanie LEN na stderr, nikdy na stdout (rozbije JSON-RPC)
log_to_stderr("Server startet")
server.run(transport="stdio")
```
Tri veci sú tu rozhodujúce a často sa prehliadajú:
- Popis nie je dekorácia. Model sa rozhoduje výhradne na základe názvu a popisu, či a ako tool zavolá. Vágne popisy vedú k nesprávnym alebo chýbajúcim volaniam.
- input_schema (JSON Schema) záväzne definuje parametre. Bez správnej schémy klient nedokáže validovať argumenty.
- Pri transporte stdio je stdout vyhradený pre protokol. Akékoľvek logovanie musí ísť na stderr - inak sa JSON-RPC tok rozpadne.
Krok 4: Zaregistrujte server v klientovi a otestujte ho
Pri stdio server zaregistrujete tak, že klientovi oznámite spúšťací príkaz. V klientoch ako Claude Desktop sa to deje cez konfiguračný súbor, ktorý má približne túto podobu:
```
{
"mcpServers": {
"fx-tools": {
"command": "python",
"args": ["pfad/zu/server.py"]
}
}
}
```
Po reštarte klienta sa váš tool objaví. Otestujte ho v tomto poradí:
- Skontrolujte discovery: Objaví sa
convert_currencyv zozname toolov klienta? Ak nie, najčastejšie zlyháva spustenie podprocesu (nesprávna cesta, chýbajúca závislosť). - Vyprovokujte volanie: Položte otázku, ktorá tool spustí („Koľko je 500 EUR v CHF?"). Klient by mal tool zavolať so správnymi argumentmi.
- Skontrolujte odpoveď: Vráti server dobre sformovaný výsledok, ktorý klient zabuduje do svojej odpovede?
Pri hľadaní chýb nezávisle od modelu pomáha oficiálny MCP Inspector - samostatný nástroj z MCP projektu, pomocou ktorého môžete tools volať priamo a sledovať JSON-RPC protokol. To výrazne zrýchľuje debugging.
Konkrétny príklad s číslami
Predpokladajme, že pripájate interný cenník. Server sprístupňuje tool get_product_price. Zamestnanec sa v klientovi opýta: „Koľko stojí položka A-204 vo variante L?". Bez MCP by model musel hádať alebo halucinovať. S toolom model zavolá get_product_price(sku="A-204", variante="L"), server vráti {"preis": 49.90, "waehrung": "EUR", "lager": 12} a model odpovie založené na faktoch. Celková implementačná náročnosť pre taký read-only tool predstavuje jeden súbor a niekoľko desiatok riadkov - väčšina spomínaných 30 minút pripadá na pripojenie vášho existujúceho dátového zdroja, nie na protokol.
Časté chyby
- Logovanie na stdout: Najčastejšia chyba začiatočníkov pri transporte stdio. Všetko, čo nie je JSON-RPC, musí ísť na stderr.
- Vágne popisy toolov: Model tool nezavolá alebo zavolá nesprávne. Píšte popisy ako API dokumentáciu pre kolegu.
- Chýbajúca alebo nesprávna JSON schéma: Povinné polia neoznačené, typy nepresné - klient nedokáže validovať argumenty.
- Príliš široké oprávnenia: Tool, ktorý smie viac, než je nutné, je útočná plocha. Least-privilege platí od prvého riadku.
- Bezpečnostné medzery z predpokladov dôvery: V rokoch 2025/2026 sú zdokumentované okrem iného nepriama prompt injection cez popisy toolov, tool poisoning (Invariant Labs WhatsApp PoC, marec 2025), look-alike server squatting, full-schema poisoning od CyberArk (každá časť schémy toolu môže byť injekčným bodom) a „Toxic Agent Flow" cez zmanipulované GitHub Issues. Príčinou je zásadne optimistický trust model MCP, ktorý stotožňuje syntaktickú správnosť so sémantickou bezpečnosťou. Zabezpečenie leží na prevádzkovateľovi: sandboxing, scope-obmedzené tokeny, OAuth 2.1 pre HTTP transporty - a žiadna automatická inštalácia MCP serverov z nedôveryhodných registries.
Poznámka k stavu 2026
MCP je v roku 2026 nesený odvetvový štandard pre agent-k-toolu: 9. decembra 2025 Anthropic odovzdal protokol novozaloženej Agentic AI Foundation pod Linux Foundation - spoluzaloženej Anthropicom, Blockom a OpenAI, s Platinum podporou od AWS, Bloomberg, Cloudflare, Google a Microsoft. MCP podporuje okrem iného OpenAI (od marca 2025), Google DeepMind (apríl 2025), Microsoft Copilot Studio, SAP Joule, Salesforce Agentforce, ako aj n8n a LangGraph. Claude disponuje adresárom s vyše 75 oficiálnymi MCP konektormi. Pre spoluprácu medzi samostatnými agentmi nestavte na MCP, ale na A2A - pravidlo znie: MCP pre Capabilities, A2A pre Collaboration.
Pre agentúry a B2B
Pre DACH agentúry je vlastný MCP server priamou cestou, ako sprístupniť proprietárne schopnosti - funkciu keyword research, interný CMS, cenové API - využiteľné naprieč výrobcami, bez budovania osobitnej integrácie pre každého klienta. Raz čisto vybudovaný MCP server sa dá opätovne použiť naprieč produktovými líniami. Pre B2B rozhodovateľov platí: ak v roku 2026 nasadzujete agentov, budete MCP servery konzumovať alebo písať - plánovane alebo nie. Pritom zaobchádzajte s každým toolom ako s relevantným z hľadiska oprávnení a auditu. My v Blck Alpaca koncipujeme MCP servery podľa least-privilege, čistých schém a sledovateľných audit trailov - ozvite sa nám, ak chcete interný dátový zdroj pripojiť k svojim AI agentom v súlade s GDPR.
Často kladené otázky
Čo potrebujem na vybudovanie MCP servera?
Stdio alebo HTTP - ktorý transport mám zvoliť?
Aký je rozdiel medzi MCP a A2A?
Aké chyby sa pri budovaní MCP servera vyskytujú najčastejšie?
Je MCP v roku 2026 stále stabilný štandard, na ktorý sa dá staviť?
Ísť hlbšie?
Získajte nové analýzy priamo do schránky – alebo sa pozrite, ako tieto poznatky nasadzujeme pre firmy.