Preskočiť na obsah
5.10Pokročilý7 min

Ako vybudovať MCP server za 30 minút: krok za krokom

Blck Alpaca·
Definition

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ú:

  1. 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.
  2. input_schema (JSON Schema) záväzne definuje parametre. Bez správnej schémy klient nedokáže validovať argumenty.
  3. 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í:

  1. Skontrolujte discovery: Objaví sa convert_currency v zozname toolov klienta? Ak nie, najčastejšie zlyháva spustenie podprocesu (nesprávna cesta, chýbajúca závislosť).
  2. 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.
  3. 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?
Oficiálne SDK (Python alebo TypeScript), runtime prostredie (Python, resp. Node.js) a MCP-kompatibilného klienta na testovanie, napríklad Claude Desktop alebo kódový editor s podporou MCP. Na prvý tool stačí jediný súbor. Transport stdio beží úplne lokálne bez sieťového nastavenia, takže od nuly k funkčnému serveru sa dostanete približne za 30 minút.
Stdio alebo HTTP - ktorý transport mám zvoliť?
Stdio je správna voľba pre lokálne servery, ktoré bežia ako podproces klienta - žiadny port, žiadna autentifikácia, ideálne na vývoj. Streamable HTTP (od revízie špecifikácie z apríla 2025, s OAuth 2.1) potrebujete, akonáhle server beží vzdialene, využíva ho viacero klientov alebo musí stáť za riadením prístupu. Začnite so stdio a migrujte neskôr.
Aký je rozdiel medzi MCP a A2A?
MCP (Model Context Protocol) prepája agenta s tools a dátami - je to protokol agent-k-toolu. A2A (Agent2Agent, od júna 2025 pod Linux Foundation) je určené na spoluprácu medzi samostatnými agentmi. Konzistentne odporúčané pravidlo od Anthropic, Google a Microsoft znie: MCP pre Capabilities, A2A pre Collaboration. Exponovať agenta ako MCP server technicky funguje, no nie je to zamýšľaná cesta.
Aké chyby sa pri budovaní MCP servera vyskytujú najčastejšie?
Typické sú: vágne alebo chýbajúce popisy toolov, takže model tool nevolá správne; chýbajúca alebo nesprávna JSON schéma pre parametre; logovanie na stdout namiesto stderr, čo pri transporte stdio rozbije JSON-RPC protokol; a príliš široko nastavené oprávnenia. Z bezpečnostného hľadiska sú nepriama prompt injection cez popisy a tool poisoning zdokumentovanými hlavnými problémami (stav 2026).
Je MCP v roku 2026 stále stabilný štandard, na ktorý sa dá staviť?
Áno. MCP bol 9. decembra 2025 odovzdaný Anthropicom novozaloženej Agentic AI Foundation pod Linux Foundation, spoluzaloženej Anthropicom, Blockom a OpenAI, ako aj s Platinum podporou od AWS, Bloomberg, Cloudflare, Google a Microsoft. Podporuje ho OpenAI, Google DeepMind, Microsoft Copilot Studio, SAP Joule, Salesforce Agentforce a mnoho nástrojov - štandard je široko nesený a naprieč výrobcami zabezpečený.

Ísť hlbšie?

Získajte nové analýzy priamo do schránky – alebo sa pozrite, ako tieto poznatky nasadzujeme pre firmy.