Ako si vytvoriť vlastný MCP server?

MCP server je program, ktorý sprístupňuje vaše dáta a funkcie modelom umelej inteligencie cez jednotný protokol.

Tomáš Melicherčík

Tomáš Melicherčík

AI Specialist

19. júla 2026

10 min.

MCP server je program, ktorý sprístupňuje vaše dáta a funkcie modelom umelej inteligencie cez jednotný protokol. Model Context Protocol (MCP) je otvorený štandard, ktorý poskytuje univerzálny spôsob, ako prepojiť AI aplikácie s externými dátovými zdrojmi a nástrojmi. Vytvoril ho Anthropic a v novembri 2024 ho vydal ako otvorený štandard. Vlastný MCP server postavíte v troch krokoch: napíšete kód s jedným nástrojom, otestujete ho cez MCP Inspector a pripojíte ho ku klientovi ako Claude Desktop. Tento návod vás prevedie celým procesom. Od architektúry a výberu SDK, cez funkčný kód v Pythone a TypeScripte, pridanie zdrojov a šablón, až po reálne použitia, časté chyby a nasadenie.

Obsah

Čo je MCP server a ako funguje

MCP server je sprostredkovateľ medzi AI modelom a externým systémom. Server vystavuje konkrétne schopnosti a model ich volá štandardizovaným spôsobom. MCP dostal prezývku „USB-C pre svet AI", pretože štandardizuje, ako AI modely interagujú s externými nástrojmi, dátovými zdrojmi a systémami. DEV Community

Architektúra MCP používa klient-server model postavený na JSON-RPC 2.0. Komunikáciu nesú tri roly. DEV Community

  • Host je aplikácia, ktorú používateľ ovláda (Claude Desktop, Claude Code, Cursor, VS Code).
  • Client beží vnútri hosta a udržiava spojenie s jedným serverom.
  • Server poskytuje schopnosti — ten programujete vy.

Jeden host pripojí viacero serverov súčasne. Vďaka tomu pridáte modelu prístup k databáze Postgres aj k Slacku naraz, bez zásahu do samotnej aplikácie. Tento princíp posúva AI od pasívneho generovania textu k aktívnemu vykonávaniu úloh. Podobne, ako sme rozoberali v článku o tom, ako AI uľahčuje prácu v programovaní a marketingu.

Máte záujem o AI automatizáciu?

Kontaktujte nás cez náš webový formulár a radi sa o to postaráme.

Tri stavebné bloky MCP servera: Tools, Resources, Prompts

MCP server vystavuje tri typy primitívov. Každý primitív rieši iný typ interakcie medzi modelom a vaším systémom.

Primitív Čo robí Kontrolu má Príklad
Tools Vykonáva akcie a volá funkcie Model Odoslanie e-mailu, dotaz do databázy
Resources Poskytuje dáta na čítanie Aplikácia Obsah súboru, riadky tabuľky
Prompts Ponúka pripravené šablóny Používateľ „Zhrň tento report"

Tools sú najčastejší stavebný blok. Model sám rozhodne, kedy nástroj zavolá, a server vráti výsledok. Resources dodávajú modelu kontext bez vedľajších efektov. Prompts štandardizujú opakované úlohy do jednej šablóny.

"Podceňovaným rizikom pri prepájaní firemných systémov s umelou inteligenciou (LLMs) je softvérová závislosť od jediného dodávateľa, tzv. vendor lock. Keď firmy prispôsobujú svoju infraštruktúru konkrétnemu modelu od jednej technologickej korporácie, vytvárajú si väzbu, ktorá ich v budúcnosti môže vyjsť draho. Trh sa mení každý mesiac a to, čo funguje dnes, softvérové tímy o pol roka vymenia za výhodnejší nástroj. Riešením je oddeliť firemné dáta od samotného premýšľania, ktoré dodáva externý model, čo presne rieši otvorený protokol MCP. Funguje ako štandardizovaná zásuvka, takže ak sa neskôr rozhodnete prejsť na lepší či úspornejší jazykový model alebo spustiť softvér na lokálnych serveroch, zmena sa udeje iba v konfiguračnom súbore. Celá integrácia s podnikovou databázou zostáva nedotknutá, vývoj netreba robiť odznova a investícia do softvéru zostáva chránená."

Jakub Gombár AI Team Leader & Co-Founder

Čo potrebujete pred začiatkom?

Vlastný MCP server postavíte v ktoromkoľvek z desiatich oficiálnych SDK. Oficiálne SDK pokrývajú TypeScript, Python, Go, Kotlin, Java, C#, Swift, Rust, Ruby a PHP. Pre začiatok zvoľte Python alebo TypeScript. Oba majú najlepšiu dokumentáciu a najviac príkladov. Nerd Level Tech

SDK Inštalačný balík Vhodné pre
Python SDK pip install "mcp[cli]" Dátové skripty, rýchle prototypy
TypeScript SDK npm install @modelcontextprotocol/sdk Webové služby, Node.js backend

Pred prvým serverom si pripravte tieto tri veci:

  • Python 3.10+ alebo Node.js 18+ podľa zvoleného SDK.
  • MCP Inspector na ladenie — spustíte ho cez npx, netreba inštalovať.
  • MCP klient na overenie — najjednoduchšie cez Claude Desktop.

Ako vytvoriť MCP server v Pythone (FastMCP)

Najrýchlejšiu cestu ponúka FastMCP, súčasť oficiálneho Python SDK. FastMCP premení bežnú funkciu na MCP nástroj cez jeden dekorátor. Postupujte v troch krokoch.

  1. Nainštalujte SDK:

bash

pip install "mcp[cli]"

  1. Vytvorte súbor server.py s jedným nástrojom:

python

from mcp.server.fastmcp import FastMCP

mcp = FastMCP("Pocasie")

@mcp.tool()

def get_weather(city: str) -> str:

    """Vráti aktuálne počasie pre zadané mesto."""

    return f"V meste {city} je 22 °C a jasno."

if __name__ == "__main__":

    mcp.run()

  1. Spustite server:

bash

python server.py

Dekorátor @mcp.tool() registruje funkciu ako nástroj. Docstring sa stane popisom, ktorý model číta pri rozhodovaní. Typové anotácie (city: str) FastMCP automaticky prevedie na vstupnú schému.

Ten istý server v TypeScripte

TypeScript SDK používa explicitnú registráciu nástroja a validáciu cez knižnicu Zod.

typescript

import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";

import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";

import { z } from "zod";

const server = new McpServer({ name: "pocasie", version: "1.0.0" });

server.tool(

  "get_weather",

  { city: z.string() },

  async ({ city }) => ({

    content: [{ type: "text", text: `V meste ${city} je 22 °C a jasno.` }],

  })

);

const transport = new StdioServerTransport();

await server.connect(transport);

TypeScript SDK má stabilnú verziu v2 očakávanú v Q1 2026; do jej vydania zostáva vetva v1.x odporúčaná pre produkciu. LushBinary

Pridanie Resources (dáta na čítanie)

Resources poskytujú modelu dáta bez vedľajších efektov. Resource definujete cez URI schému a dekorátor @mcp.resource(). Server vráti obsah, ktorý model použije ako kontext.

python

@mcp.resource("config://app")

def get_config() -> str:

    """Vráti konfiguráciu aplikácie."""

    return "verzia=1.0, prostredie=produkcia"

@mcp.resource("users://{user_id}/profile")

def get_user_profile(user_id: str) -> str:

    """Vráti profil používateľa podľa ID."""

    return f"Profil používateľa {user_id}"

Prvý resource vracia statické dáta cez pevné URI. Druhý resource prijíma parameter user_id priamo v URI a vracia dynamický obsah. Resources využijete na sprístupnenie dokumentácie, konfigurácie alebo riadkov databázy.

Pridanie Prompts (pripravené šablóny)

Prompts sú znovupoužiteľné šablóny, ktoré používateľ spustí jedným kliknutím. Prompt definujete cez dekorátor @mcp.prompt() a vrátite text s vloženými premennými.

python

@mcp.prompt()

def summarize(text: str) -> str:

    """Šablóna na zhrnutie textu."""

    return f"Zhrň nasledujúci text v troch vetách:\n\n{text}"

Tento prompt zjednotí opakovanú úlohu do jednej šablóny. Kvalita výstupu pritom závisí od formulácie pokynu. Princípy tvorby účinných promptov sme rozoberali v článku o praktickom využití AI a prompt engineeringu.

Transport: stdio verzus Streamable HTTP

Transport určuje, ako server prijíma a posiela správy. MCP definuje dva produkčné transporty.

Vlastnosť stdio Streamable HTTP
Beh Lokálne na rovnakom stroji Vzdialene cez sieť
Spustenie Host spustí proces servera Server beží ako webová služba
Autentifikácia Netreba OAuth 2.1
Vhodné pre Vývoj, osobné nástroje Tímy, produkcia, viac používateľov

Pre prvý server používajte stdio. Host server spustí ako podproces a komunikuje cez štandardný vstup a výstup. Streamable HTTP nahradil SSE ako odporúčaný vzdialený transport v špecifikácii 2025-03-26. Nerd Level Tech

Ako otestovať server cez MCP Inspector?

MCP Inspector je oficiálny ladiaci nástroj. Inspector zobrazí všetky nástroje servera a umožní vám ich spustiť bez pripojenia k modelu.

  1. Spustite Inspector s vaším serverom:

bash

npx @modelcontextprotocol/inspector python server.py

  1. Otvorte adresu, ktorú Inspector vypíše v termináli.
  2. V záložke Tools vyberte get_weather a zadajte testovací vstup.
  3. Skontrolujte, či server vráti očakávaný výsledok.

Inspector odhalí chyby v schéme aj vo výstupe skôr, než server pripojíte ku klientovi. Tento krok skráti ladenie a zníži počet zlyhaní v produkcii.

Ako pripojiť MCP server ku klientovi (Claude Desktop)

Funkčný server pripojíte k Claude Desktop cez konfiguračný súbor claude_desktop_config.json. Súbor nájdete v nastaveniach aplikácie pod položkou Developer.

Pridajte do súboru tento záznam:

json

{

  "mcpServers": {

    "pocasie": {

      "command": "python",

      "args": ["/cesta/k/server.py"]

    }

  }

}

Po uložení reštartujte Claude Desktop. Aplikácia spustí server automaticky a sprístupní nástroj get_weather priamo v konverzácii. Rovnaký konfiguračný princíp platí pre Cursor, VS Code aj Claude Code.

Reálne použitia vlastného MCP servera

MCP server premení akýkoľvek interný systém na schopnosť dostupnú AI modelu. Firmy ho nasadzujú na úlohy, ktoré predtým vyžadovali ručnú prácu alebo samostatnú integráciu.

  • Zákaznícka podpora — server napojí model na databázu objednávok a model odpovedá na otázky o stave zásielky. 
  • Interné dáta — server sprístupní firemný Postgres alebo Notion, takže model čerpá odpovede z aktuálnych dát.
  • Vývojové nástroje — GitHub MCP server a Playwright MCP server prepoja model s repozitárom a prehliadačom pre automatizované testovanie.
  • Marketingová automatizácia — server napojí model na reklamné účty a kampaňové dáta, čo nadväzuje na trend opísaný v článku o AI a budúcnosti digitálneho marketingu.

Tieto použitia spája jedna logika: server definuje hranicu medzi modelom a vaším systémom a presne určí, čo model smie vykonať.

MCP server verzus tradičná API integrácia

Tradičná integrácia vyžaduje vlastný kód pre každú dvojicu aplikácie a modelu. MCP server tento problém rieši jedným štandardom.

Kritérium Tradičná API integrácia MCP server
Štandard Vlastný pre každý projekt Jednotný protokol
Znovupoužitie Viazané na jednu aplikáciu Funguje s každým MCP klientom
Popis pre model Manuálny Automatický cez schému nástroja
Údržba Rastie s počtom integrácií Jeden server, viac klientov

Server postavíte raz a každý MCP-kompatibilný klient, Claude Desktop, Cursor, VS Code, Kiro, Windsurf, ho použije okamžite. Tento prístup znižuje náklady na údržbu, pretože nahrádza N integrácií jedným serverom. LushBinary

Časté chyby pri tvorbe MCP servera

Začínajúci vývojári opakujú päť chýb, ktoré server oslabia alebo úplne rozbijú. Každej chybe predíďte konkrétnym opatrením.

  1. Vágny docstring nástroja — model bez jasného popisu nevie, kedy nástroj použiť. Napíšte jednu vetu, ktorá presne opíše akciu.
  2. Príliš veľa nástrojov naraz — desiatky nástrojov zahltia model a znížia presnosť výberu. Začnite s jedným až troma nástrojmi.
  3. Nezvalidované vstupy — server bez validácie prijme nesprávne dáta. Definujte typovú schému pre každý parameter.
  4. Blokujúci kód v asynchrónnom serveri — dlhá synchrónna operácia zablokuje celý server. Použite async funkcie pre sieťové a databázové volania.
  5. Zlá cesta v konfigurácii — relatívna cesta v claude_desktop_config.json zlyhá. Zadajte absolútnu cestu k skriptu.

Nasadenie do produkcie a bezpečnosť

Produkčný MCP server beží ako vzdialená služba cez Streamable HTTP a chráni ho OAuth 2.1. Vzdialené MCP servery prijali OAuth 2.1 ako autentifikačný štandard od špecifikácie z júna 2025. Vo februári 2026 vydal OWASP príručku „A Practical Guide for Secure MCP Server Development", ktorá zhŕňa kľúčové bezpečnostné odporúčania. Dodržiavajte tieto pravidlá: DEV CommunityLushBinary

  • Validujte každý vstup nástroja. Vstupy považujte za nedôveryhodné — prichádzajú od jazykového modelu, nie priamo od používateľa. Webfuse
  • Obmedzte oprávnenia servera. Používajte read-only pripojenia k databáze, scoped API kľúče a obmedzené cesty v súborovom systéme. LushBinary
  • Nikdy nevkladajte vstup priamo do príkazov. Sanitizujte dáta pred volaním shellu, SQL dotazu alebo súborovej operácie. LushBinary
  • Sledujte verziu špecifikácie. Aktuálna stabilná verzia je 2025-11-25. Finálna špecifikácia 2026-07-28 prináša stateless jadro, rámec rozšírení, Tasks a MCP Apps. LushBinaryModelcontextprotocol

V decembri 2025 daroval Anthropic protokol MCP Linux Foundation, čím ho upevnil ako vendor-neutrálny priemyselný štandard. Tento krok signalizuje dlhodobú stabilitu protokolu pre produkčné nasadenia. LushBinary

Máte záujem o AI automatizáciu?

Kontaktujte nás cez náš webový formulár a radi sa o to postaráme.

Často kladené otázky k téme MCP server

Čo je MCP server? MCP server je program, ktorý sprístupňuje dáta a funkcie AI modelom cez Model Context Protocol. Vystavuje nástroje, zdroje a šablóny, ktoré model volá cez JSON-RPC 2.0.

V akom jazyku napíšem MCP server? MCP server napíšete v desiatich oficiálnych SDK vrátane Pythonu, TypeScriptu, Go, Javy a C#. Pre začiatok zvoľte Python s FastMCP alebo TypeScript SDK.

Ako otestujem MCP server pred nasadením? Použite MCP Inspector cez príkaz npx @modelcontextprotocol/inspector. Inspector zobrazí nástroje servera a umožní vám ich spustiť bez pripojenia k modelu.

Aký je rozdiel medzi stdio a Streamable HTTP? Stdio beží lokálne ako podproces hosta bez autentifikácie. Streamable HTTP beží vzdialene ako webová služba a chráni ho OAuth 2.1.

Ako pripojím vlastný MCP server k Claude? Pridajte server do súboru claude_desktop_config.json s príkazom a cestou k skriptu. Po reštarte Claude Desktop spustí server automaticky.

Vlastný MCP server premení vaše dáta a funkcie na schopnosti dostupné AI modelom. Postavili ste ho cez FastMCP alebo TypeScript SDK, rozšírili o Resources a Prompts, otestovali cez MCP Inspector a pripojili k Claude Desktop. Tieto kroky vytvorili funkčný most medzi modelom a vaším systémom a nahradili viacero samostatných integrácií jedným štandardom. Ďalší logický krok je prechod na Streamable HTTP s OAuth 2.1 a aplikácia bezpečnostných odporúčaní OWASP pre produkčné nasadenie. Ak chcete MCP server alebo AI integráciu nasadiť vo svojej firme, pozrite si ďalšie návody z vývoja a AI na blogu Invelity.

Odporúčame prečítať

Najnovšie trendy, overené postupy a analýzy z digitálu. Zistite, ako posunúť svoj technologický a marketingový rast.