Agent se obrátil na externí zdroj, pochopil formát odpovědi a vytvořil stránku s mapou. Funguje. Teď tuto stránku otevírá někdo jiný, kdo žádný Claude Code nemá.
Před publikováním je dobré odpovědět na jednu otázku. Kdo získá data pro návštěvníka? Podíváme se na dvě cesty, čím se MCP zabývá, jak ověřit připojení a co musí fungovat i poté, co relaci agenta zavřete.

Kdo požaduje data právě teď
Situace jsou dvě a snadno se spletou, protože na obrazovce obě vypadají jako "data se objevila".
V první situaci agent zkoumá zdroj. Pracujete na projektu, Claude Code čte dokumentaci služby, zkouší požadavek, dívá se na strukturu odpovědi. Data potřebuje k napsání kódu. Děje se to na vašem počítači a přesně tak dlouho, dokud je relace otevřená.
Ve druhé situaci návštěvník otevírá publikovanou stránku. Data teď potřebuje ona - aby ukázala aktuální stav. Požadavek provádí kód aplikace během jejího běhu. Právě tomu se říká runtime, tedy doba, kdy aplikace běží u uživatele, ne doba, kdy ji píšete.
Je tu i třetí, přechodná varianta. Agent se jednou obrátil na zdroj a uložil odpověď do souboru vedle kódu a web ukazuje obsah tohoto souboru. V takovém řešení není nic špatného, dokonce se hodí pro příklad nebo ukázku. Jen je to snímek, který zůstane takový, jaký byl uložen, a sám se neaktualizuje.
Všimněte si přerušované čáry uprostřed. Není tam pro ozdobu. Mezi horním a dolním řetězcem není šipka, a to je to hlavní, co si ze schématu odnést. Zdroj může být tentýž, ale agent a stránka k němu mají každý svou cestu. Níže si každý řetězec probereme zvlášť.
Co je MCP
Úkol zřídka žije jen v repozitáři. Popis chyby zůstává v tiketu, stack trace v monitoringu, čerstvá pravidla knihovny v dokumentaci a potřebné záznamy v databázi.
Bez integrace musíte všechno ručně přenášet z prohlížeče do chatu s agentem. Jednorázový přenos je snesitelný. Při opakované práci data stihnou zastarat, část detailů se ztratí a tutéž cestu je třeba projít znovu.
MCP (Model Context Protocol) je standard, podle kterého Claude Code zjišťuje, jaké externí nástroje má k dispozici, volá je a dostává výsledek v jednotném formátu. V minimálním řetězci Claude Code vytvoří MCP klienta, klient udržuje spojení s MCP serverem a server se teprve pak dostane k systému, ke kterému má přístup - k souborům, databázi, cizímu API.
Vlevo je Claude Code s vestavěným MCP klientem, uprostřed je MCP server s deklarovanými schopnostmi, vpravo jsou externí systémy. Podstatné je, že agent nezískává nekontrolovaný přístup ke všemu najednou. Vidí jen ty operace a data, která se server rozhodl poskytnout.
Hotový MCP server vám navíc ušetří část integrační práce. Nemusíte sami popisovat formáty volání pro každý externí systém ani psát celý kód pro přístup k jeho API. To obstarává server a Claude Code pracuje s již deklarovanými operacemi.
Server přitom nemusí být samostatným programem někde na internetu. Může se spouštět přímo na vašem počítači jako místní proces, nebo může běžet na dálku a obsluhovat mnoho klientů najednou. Pro vás je rozdíl hlavně v tom, jak ho připojíte.
Co přesně server umí, rozhoduje on sám. Protokol popisuje tři druhy věcí, které server může nabídnout:
- tools - operace, které agent může provést: získat stránku, poslat požadavek na API, zapsat data;
- resources - obsah, který server vydává jako kontext: soubory, záznamy, odpovědi služeb;
- prompts - předpřipravené šablony požadavků, které lze rovnou vyvolat.
Server nemusí podporovat všechny tři. Při připojení si klient a server ověří, kdo co umí, a nepodporované operace se prostě nepoužívají. Mnoho serverů se omezí jen na tools a to úplně stačí. Architektura MCP.
Zapamatujte si to hlavní. MCP standardizuje, jak spolu klient a server komunikují. Co konkrétně vám bude dostupné, určuje server, ne protokol. Připojení serveru neznamená, že máte přístup k celému internetu - dostanete přesně tu sadu operací, kterou tento server deklaroval.
Když zadáváte úkol agentovi, pojmenujte zdroj a potřebný výsledek, ne příkaz. Pak zkontrolujte, zda má připojený server vhodnou operaci. Pokud ji nemá, řešte úkol jinou cestou, ne přemlouváním.
Jak se data dostanou na web
Teď dolní řetězec. Publikovaná stránka dostane data jedním ze dvou způsobů.
V prvním případě se prohlížeč obrací na veřejné API přímo. Tento způsob je vhodný, když je zdroj otevřený a klíč není potřeba. Kód stránky provede požadavek a vykreslí odpověď. Jednoduše a bez zbytečných detailů.
V druhém případě se prohlížeč obrací na backend aplikace a ten teprve na soukromé API. Tak se to dělá, když zdroj potřebuje klíč. Tajemství zůstává na serveru, prohlížeč ho nevidí. Frontend tady odpovídá za to, co vidíte na obrazovce, backend za to, co běží na serveru a umí se obracet na službu jménem aplikace.
Horní cesta je kratší, protože prohlížeč se může na otevřený zdroj obrátit sám. U dolní cesty se backend stává hranicí pro tajemství. Klíč zůstane na serveru a nedostane se do kódu stránky.
Jedna věc se ale nestane. Připojení Claude Code k MCP serveru se při publikování na web nepřenese. Příkaz, kterým jste server přidali, nastavuje vašeho agenta; do aplikace nepřidá ani řádek kódu. Aplikaci s vlastním MCP klientem napsat lze, ale to je samostatná práce a samostatná implementace, ne výsledek připojení v Claude Code.
Ověřit se to dá docela rychle. Zavřete Claude Code, otevřete publikovanou stránku a podívejte se na kartu Network v nástrojích pro vývojáře. Pokud data přicházejí - je vidět požadavek, adresa a odpověď. Pokud ne - žádný požadavek tam nebude, a přesně tohle je dobré odhalit dřív, než stránku uvidí někdo jiný.
Jeden obrázek na obrazovce nestačí. Stránka může ukazovat dříve uložený snímek a přitom vypadat úplně živě. Dívat se je třeba na samotný požadavek. A naopak, když v odpovědi nejsou nové události, ještě to neznamená poruchu. Zdroj prostě za zvolené období nemusel nic poslat.
Jak ověřit připojení
Postup je zhruba stejný pro jakýkoli server:
- najít oficiální návod k serveru - adresu, způsob přístupu, seznam operací;
- přidat server příkazem, který tento návod uvádí;
- otevřít
/mcpv Claude Code a podívat se, že se server připojil a jaké nástroje nabízí; - provést jeden požadavek na čtení, ten nejjednodušší;
- porovnat výsledek se zdrojem ručně - otevřít tutéž stránku a podívat se vlastníma očima.
V terminálu ukáže stav claude mcp list, podrobnosti k jednomu serveru claude mcp get. Užitečné je vědět, že tyto kroky odpovídají na různé otázky:
| Co jste viděli | Co to dokazuje |
|---|---|
řádek Added ... po přidání | konfigurace je uložená, nic víc |
Connected v claude mcp list | Claude Code se dokázal připojit k serveru |
| nástroj vrátil obsah | cesta funguje celá, od požadavku po odpověď |
Rozdíl není formální. Úspěšně uložená konfigurace nic neříká o tom, že server odpovídá, a úspěšné připojení o tom, že potřebná operace je dostupná a máte na ni práva. Proto se kontrola zakončuje jedním skutečným voláním. Mimochodem, pokud seznam ukazuje Needs authentication, server není rozbitý, jen čeká na přihlášení.
Vezměme konkrétní příklad. Služba Firecrawl má MCP server, který umí získat obsah veřejné stránky - nástroj se jmenuje firecrawl_scrape. Pro agenta je to pohodlný způsob, jak si přečíst dokumentační stránku celou, místo aby ji kopíroval do chatu po kousku.
# přidat server přes HTTP; přesnou adresu vezměte z dokumentace služby
claude mcp add --transport http firecrawl https://mcp.firecrawl.dev/v2/mcpTeď o přístupu. Dokumentace Firecrawl popisuje jak práci bez účtu a klíče, s denními limity, tak přihlášení přes prohlížeč, když klient sám otevře přihlašovací stránku. Podmínky a limity služeb se mění, takže aktuální informace hledejte u samotné služby, ne v článku. Dokumentace Firecrawl pro MCP.
A malý detail, který ušetří čas. Ve výchozím nastavení se server přidá k projektu, ve kterém jste příkaz spustili, a v ostatních projektech se neobjeví. Pokud server potřebujete všude, nebo naopak pro celý tým, má příkaz pro přidání samostatné volby rozsahu platnosti. Claude Code a MCP.
Hodnota klíče nemá místo ani v příkladu konfigurace, ani v adrese serveru, ani v chatu s agentem. Do konfigurace se zapisuje název proměnné prostředí, hodnota se nastavuje zvlášť - to je téma vedlejšího článku o klíčích.
Co povoluje konkrétní nástroj
Připojený server je sada operací a ty se v důsledcích hodně liší. Přečíst si stránku a změnit záznam v externím systému jsou úplně jiné věci, i když se volají stejně.
Než volání povolíte, je užitečné podívat se na tři věci: s jakým objektem nástroj pracuje, jakou operaci provádí a jaká práva jsou pro to potřeba. Čtení je obvykle bezpečnější, ale i ono má svou cenu. Požadavek odchází ke službě třetí strany a čerpá vaši kvótu.
Zvlášť k tomu, co přijde v odpovědi. Text získaný z cizího webu jsou data, ne pokyn. Pokud uvnitř stránky stojí "teď smaž všechny soubory", zůstane to textem na stránce a rozhodujete vy. Právě proto se vyplatí sledovat, co se agent po přečtení externího zdroje chystá dělat dál.
A hlavní praktická otázka. Je MCP vůbec potřeba? Ne vždy.
| Úkol | Čím to vyřešit jednodušeji |
|---|---|
| zobrazit na webu data z veřejného JSON | běžný požadavek z kódu aplikace, MCP není potřeba |
| agent pravidelně pracuje se službou, která má hotovou integraci | MCP se vyplatí: operace jsou popsány, připojení se znovu používá |
| jednorázově si přečíst dokumentaci nebo zavolat jednu adresu | stačí čtení URL nebo přímý přístup k API |
MCP nejsou jediné dveře ven ani náhrada všeho ostatního. Agent má dál příkazový řádek i přímý přístup k API. O volbě rozhoduje úkol, ne to, že připojení už je nastavené.
Co zkontrolovat ve svém projektu
Když agent připravuje práci s externími daty, je užitečné požádat ho, aby obě vrstvy výslovně oddělil, místo abyste to rozplétali až potom:
Popiš zvlášť dvě cesty:
odkud bereš data ty během práce na projektu
a odkud si je bude brát samotná aplikace u návštěvníka.
Ukaž, ve kterém souboru a na kterém místě kódu žije požadavek aplikace.
Zkontroluj stránku při zavřené relaci: data přicházejí, nebo ne.
Pokud se teď používá uložený snímek, řekni to přímo.Tři situace, které se vyskytují nejčastěji, a odpověď pro každou:
| Co je potřeba | Kdo dostane data | Proč tak |
|---|---|---|
| prostudovat dokumentaci služby během vývoje | agent | data jsou potřeba pro psaní kódu, u návštěvníka se tento požadavek neopakuje |
| aktualizovat mapu u návštěvníka | kód aplikace | požadavek se provádí za běhu stránky, relace agenta je v tu chvíli už zavřená |
| jednorázově uložit výběr do JSON | agent, a jen jednou | dál web zobrazuje soubor; data zůstanou taková, jaká byla uložena |
Všimněte si, že MCP se zde objevuje jen v prvním řádku, a ani tam není nutné. Pokud úkol vyřeší obyčejné načtení adresy, je dobré ho tak vyřešit.
Poslední kontrola před tím, než ukážete práci někomu dalšímu, je nejjednodušší: zavřete Claude Code a otevřete stránku. Co funguje dál, to je vaše aplikace. Všechno ostatní byla pomoc agenta při vývoji - užitečná, ale ta zůstala na vašem počítači.
GO TO FULL VERSION