Agent Skills vs MCP: jak zvolit správné rozhraní
Vysvětlení rozdílů mezi agent skills a MCP: porovnání instrukcí, připojení nástrojů, bezpečnostních hranic, verzování a situací, kdy je pro spolehlivé AI agenty vhodné použít obojí.
Rozhodování mezi agent skills vs MCP se často prezentuje jako souboj dvou způsobů, jak „dát AI nástroje“. Takový pohled je neúplný. Skill a server Model Context Protocol řeší různé vrstvy problému: jeden agenta učí, jak pracovat v určité doméně, zatímco druhý zpřístupňuje capabilities a kontext prostřednictvím standardizovaného připojení.
Dockup používá SKILL.md, protože jeho primárním rozhraním je existující command-line nástroj. Skill učí Claude Code a Codex, jak toto CLI bezpečně používat: vždy vyžadovat JSON, autentizovat se neinteraktivně, přesně určit cíle, počkat na koncové stavy deploymentu a zastavit se před destruktivními operacemi.
Co je agent skill a proč je SKILL.md důležitý?
Agent skill je adresář s provozními instrukcemi a podpůrnými referencemi, který může agent načíst, když úloha odpovídá účelu daného skillu. SKILL.md je vstupním bodem: jeho frontmatter popisuje capability a tělo vysvětluje workflow, omezení, příklady a rozhodovací pravidla.
Skill je obzvlášť užitečný, když už existuje spustitelné rozhraní. Agent nepotřebuje nový protocol adapter jen proto, aby mohl spouštět dobře navržené CLI. Potřebuje přesné informace o tom:
- Které příkazy jsou autoritativní.
- Které flags jsou povinné pro použití ze strany machine.
- Jak funguje autentizace v sandboxu.
- Které výstupy potvrzují úspěch.
- Které akce vyžadují člověka.
- Kde se mohou objevit secrets.
- Jak diagnostikovat běžná selhání.
Instalace Dockup je záměrně jednoduchá:
npm install -g dockup-cli
dockup skill install
dockup skill status --json
Jedna kanonická kopie se zapíše do ~/.agents/skills/dockup/ a vytvoří se na ni odkazy z Claude Code i Codex. Skill je součástí balíčku CLI a příkaz dockup update je aktualizuje společně. Toto rozhodnutí ohledně packagingu předchází běžnému typu selhání: instrukce popisují příkazy, které nainstalovaný binary nezná.
Skill není deployment engine. CLI provádí operace, generuje JSON a vrací exit codes. Skill je provozní příručka, podle které se agent řídí.
Co je Model Context Protocol?
Model Context Protocol, běžně označovaný jako MCP, je otevřený protocol pro připojení AI aplikace k externím nástrojům, resources a promptům prostřednictvím klient-server architektury. MCP server může zpřístupnit volatelné tools, čitelné resources a znovu použitelné prompts. MCP client uvnitř hostitele agenta tyto capabilities objevuje a volá.
MCP je cenný, když systém potřebuje trvalou protocol boundary namísto lokálního spouštění shellu. Příklady:
- Vzdálené SaaS API, které má zpřístupňovat pečlivě typované operace.
- Zdroj dat poskytující procházetelné resources.
- Desktopová aplikace, která chce discovery nástrojů bez distribuce CLI.
- Centrální služba používaná mnoha hostiteli agentů a operačními systémy.
- Integrace, v níž server zprostředkovává credentials a policy.
Server řídí implementaci každého nástroje. Hostitel agenta vidí deklarovaný název, popis, input schema a output. Transport, lifecycle a authorization závisí na zvoleném MCP setupu.
MCP automaticky neposkytuje úsudek v rámci domény. Server může zpřístupnit delete_service, ale agent stále potřebuje policy určující, kdy je smazání vhodné. Skill naopak může vysvětlit workflow, ale nedokáže vytvořit capabilities, které v základním CLI nebo API nejsou.
Jak se agent skills vs MCP liší v praxi?
Nejjasnější je porovnat jejich odpovědnosti:
| Dimenze | Agent skill / SKILL.md | MCP server |
|---|---|---|
| Primární úloha | Učí workflow a omezení | Zpřístupňuje tools, resources a prompts |
| Provádění | Používá existující CLI, soubory, API nebo aplikace | Server implementuje volatelné capabilities |
| Discovery | Agent načte odpovídající instrukce skillu | Client objeví capabilities serveru |
| Deployment | Často adresář nainstalovaný s balíčkem | Lokální nebo vzdálený proces serveru |
| Riziko verzí | Instrukce se mohou od nástroje odchýlit | Schema serveru se může odchýlit od chování backendu |
| Nejvhodnější použití | Existující rozhraní potřebuje odborné provozní pokyny | Capability potřebuje standardizovanou protocol boundary |
| Bezpečnostní zaměření | Behaviorální pravidla a bezpečnost příkazů | Připojení, důvěryhodnost serveru, scopes a authorization nástrojů |
| Offline/lokální použití | Vynikající s lokálními CLI | Možné s lokálním MCP serverem |
| Opakované použití ve více klientech | Zkopírování nebo zabalení skillu pro každého hostitele | Jeden server může podporovat více kompatibilních klientů |
Ani jeden sloupec není sám o sobě více „agentic“. Spolehlivost vzniká správným přiřazením rozhraní k systému.
V případě Dockup má CLI už 135 příkazů, strukturovaný JSON, skutečné exit codes, výchozí timeout deploymentu 900 sekund, maskování secrets a confirmation gates. Zabalení každého příkazu do dalšího lokálního serveru by přidalo translation layer, aniž by změnilo základní pravdu o deploymentu. Skill je přirozenou volbou, protože agenta učí používat existující executable contract.
Vzdálená platforma bez CLI může dospět k opačnému závěru. MCP server může poskytnout chybějící typované tool surface a udržet API credentials mimo shell environment agenta.
Kdy použít skill, MCP nebo obojí?
Použijte pouze skill, pokud platí všechny následující podmínky:
- Vyspělé CLI nebo lokální aplikace už poskytují požadovanou capability.
- Hostitel agenta ji smí spouštět.
- Machine-readable output a exit semantics jsou dostačující.
- Hlavním nedostatkem jsou procedurální znalosti, nikoli connectivity.
- Packaging dokáže udržet instrukce v souladu se spustitelným nástrojem.
Použijte pouze MCP, když agent potřebuje protocol-native připojení a samotný server dokáže poskytnout dostatek kontextu pro bezpečný provoz. To je běžné u data access zaměřeného na čtení, vzdálených služeb a aplikací, které chtějí stabilní tool interface napříč různými klienty.
Použijte obojí, když protocol tools potřebují bohatší provozní playbook. MCP server může zpřístupnit bezpečné, typované primitives, zatímco skill vysvětlí vícekrokové business workflow, pravidla eskalace a kritéria validace. Skill může agentovi říct, kdy a proč má jednotlivé MCP tools volat.
Kombinovaná architektura může vypadat takto:
User request
↓
Skill: workflow, policy, validation rules
↓
MCP client: discovers typed capabilities
↓
MCP server: authenticates and executes
↓
External system
Architektura založená na CLI je jednodušší:
User request
↓
Skill: workflow, policy, validation rules
↓
CLI: JSON output + exit code + wait semantics
↓
Platform API
Komplexitu by měla ospravedlňovat boundary, kterou zlepšuje. Přidávat MCP jen proto, že je zrovna populární, může znamenat další proces, který je třeba nasazovat, autentizovat, monitorovat a verzovat.
Příklady rozhodnutí
| Situace | Lepší výchozí volba | Důvod |
|---|---|---|
| Lokální deployment CLI s JSON outputem | Skill | Connectivity už existuje |
| Firemní knowledge base se strukturovanými resources | MCP | Klíčový je discovery resources |
| API pro správu databází bez CLI | MCP | Typované vzdálené operace jsou užitečné |
| Komplexní release runbook napříč existujícími nástroji | Skill | Hlavní potřebu představuje cross-tool procedura |
| Regulované vzdálené operace a detailní policy | Obojí | Server vynucuje scope; skill řídí chování |
| Jednorázová osobní automatizace | Skill nebo přímé CLI | Nejnižší provozní režie |
Správná odpověď se může časem změnit. Tým může začít se skillem nad CLI a později přidat MCP server, až bude důležitý vzdálený přístup z více klientů nebo centralizované zprostředkování credentials.
Jak se liší bezpečnostní a trust boundaries?
Skills jsou instrukce, takže jejich riziko z hlediska trust se podobá provozní dokumentaci s vlivem na provádění. Škodlivý nebo nedbalý skill může agentovi nařídit zveřejnit secrets, vypnout safeguards nebo spustit destruktivní příkazy. Procházejte celý adresář, nejen jeho název.
Při kontrole skillu si položte tyto otázky:
- Kdo ho publikoval?
- Spouští příkazy mimo deklarovaný účel?
- Nařizuje agentovi vypisovat tokens nebo credentials?
- Obchází confirmations?
- Vycházejí příklady příkazů z nainstalované verze?
- Mohou updates skill nahradit bez kontroly?
- Definuje omezený proces discovery cílů?
MCP zavádí trust boundary serveru. Client musí vědět, ke kterému serveru se připojuje, které tools zpřístupňuje, jaká data opouštějí počítač a jak je vymezeno authorization. Server může měnit chování za stabilním názvem nástroje, takže důležitá je provenance deploymentu a verzování serveru.
Při kontrole MCP si položte tyto otázky:
- Je server lokální, nebo vzdálený?
- Kdo ho provozuje?
- Jak se credentials ukládají a rotují?
- Která volání nástrojů mohou měnit nebo mazat data?
- Ověřují se vstupy na straně serveru?
- Zachází se s výstupy jako s nedůvěryhodným obsahem?
- Je každé volání auditovatelné?
- Může client omezit dostupné tools?
Hostitel agenta by neměl ztotožňovat „objeveno prostřednictvím MCP“ s „bezpečné“. Standardizace protokolu zlepšuje interoperabilitu, nikoli důvěryhodnost každého serveru.
Skill Dockup obsahuje několik bezpečnostních pravidel: používat DOCKUP_TOKEN místo interaktivního přihlášení, nikdy nevypisovat credentials, vyhledávat cíle pomocí dockup services --json, používat --wait a zastavit se při needs_confirm. CLI tyto instrukce posiluje maskováním secrets a odmítnutím destruktivních operací bez explicitního schválení. Tento defense-in-depth model je popsán v článku production guardrails for AI agents.
Jak by mělo fungovat verzování a obnova po selhání?
Version drift je možný u obou přístupů, ale projevuje se odlišně.
Skill může zastarat, když se změní zdokumentovaný příkaz. Nejsilnější mitigací je zabalit skill spolu se spustitelným nástrojem a aktualizovat je v rámci jednoho release procesu. Dockup tento model používá. Agent může zkontrolovat nainstalovaný skill:
dockup skill status --json
Update aktualizuje CLI i přibalený skill společně:
dockup update
MCP client může zjistit aktuální tool schemas serveru, ale kompatibilita schematu nezaručuje sémantickou kompatibilitu. Nástroj může zachovat stejné inputs a současně změnit authorization, side effects, latenci nebo interpretaci outputu. Server by měl publikovat verze, pokud možno zachovávat zpětnou kompatibilitu a vracet strukturované errors.
Také handling failures se liší. CLI přirozeně poskytuje process exit codes. Volání MCP toolu potřebuje stejně jednoznačný výsledek na aplikační úrovni. V obou případech by agent neměl odvozovat úspěch z potvrzení na úrovni transportu.
Užitečný checklist spolehlivosti:
| Požadavek | Implementace Skill + CLI | Implementace MCP |
|---|---|---|
| Discovery capabilities | CLI schema | Seznam tools serveru |
| Strukturovaný výstup | JSON/NDJSON | Typovaný výsledek toolu |
| Signál selhání | Non-zero exit + code | Explicitní error result |
| Dlouhá operace | --wait / zdokumentovaný stream | Protocol pro progress nebo dokončení |
| Ochrana secrets | Maskování a disciplína stderr | Redakce na straně serveru |
| Schválení destruktivních operací | CLI confirmation gate | Policy serveru nebo confirmation klienta |
| Audit | Audit log platformy | Audit logs serveru a backendu |
| Kontrola verze | Stav skillu/binary | Metadata a schemas serveru |
Rozhraní by mělo ztížit nesprávné nahlášení selhání více než nahlášení úspěchu.
Jakou architekturu by měl produkční tým zvolit?
Začněte pojmenováním skutečného nedostatku.
Architekturu skill-first zvolte, když tým už důvěřuje CLI a provozuje ho. Investujte do jeho machine contractu: JSON, skutečné exit codes, stabilní error codes, instrukce sladěné s verzí a confirmation. Poté skill s tímto nástrojem zabalte. To je nejkratší cesta pro Claude Code deployment a Codex deployment prostřednictvím Dockup.
Přístup MCP-first zvolte, když je capability přirozeně vzdálená, orientovaná na resources nebo sdílená mnoha klienty. Se serverem zacházejte jako s produkčním softwarem: autentizujte ho, omezte jeho scopes, monitorujte ho a kontrolujte každou mutaci.
Zvolte obojí, když jsou policy i connectivity samostatně komplexní. Odpovědnosti musí zůstat jasné. Skill by neměl duplikovat implementaci serveru a popis serveru by se neměl změnit v rozsáhlou provozní příručku.
Praktický workshop pro vyhodnocení
Proveďte malý proof s jednou read operací, jedním reverzibilním zápisem, jednou dlouhotrvající operací a jednou destruktivní operací, která musí být zablokována. Každý návrh ohodnoťte podle:
- Jak agent operaci objeví.
- Jak se dodávají credentials.
- Jak se potvrzuje úspěch.
- Jak se klasifikuje selhání.
- Jak člověk schvaluje rizikovou operaci.
- Jak se získávají logs a auditní podklady.
- Jak zůstávají verze sladěné.
- Jak lze integraci čistě odstranit.
Nerozhodujte se pouze podle diagramu. Sledujte failure paths. Návrh, který na happy path vypadá elegantně, může být nejednoznačný, když deployment vyprší, server se odpojí nebo je soubor s instrukcemi o jedno release pozadu.
CLI reference Dockup poskytuje konkrétní příklad kontraktu CLI podporovaného skillem. Širší článek o AI-powered development vysvětluje, proč jsou tato rozhraní důležitá, když agenti přebírají větší část vývojového loopu.
Zohledněte provozní vlastnictví
Vlastník integrace je stejně důležitý jako její architektura. Skill postavený nad CLI obvykle přebírá instalační, release a support proces tohoto CLI. Tým, který publikuje binary, může dodat odpovídající instrukce a testovat je společně.
MCP server vytváří samostatnou produkční komponentu. Někdo musí zodpovídat za hosting, certificates nebo spuštění lokálního procesu, authentication, monitoring, incident response, kompatibilitu schematu a aktualizace dependencies. Tato investice může být smysluplná, pokud server představuje důležitou sdílenou boundary. Pokud pouze předává lokální volání již dostačujícímu executable, jde o zbytečnou režii.
Během vyhodnocování si zapište, kdo vlastní jednotlivé vrstvy:
| Vrstva | Vlastník v přístupu skill-first | Vlastník v přístupu MCP-first |
|---|---|---|
| Instrukce k doméně | Publisher skillu | Client prompt nebo companion skill |
| Chování executable | Publisher CLI | Tým MCP serveru |
| Práce s credentials | CLI a runtime environment | Server a připojení klienta |
| Dostupnost | Lokální executable a platform API | Server process, transport a backend |
| Kompatibilita schematu | CLI release process | MCP server release process |
| Podklady pro incidenty | CLI output a audit platformy | Client logs, server logs a audit backendu |
Tato tabulka vlastnictví často vyřeší debatu agent skills vs MCP jasněji než checklist funkcí.
Vyhodnoťte latenci a failure surfaces
Lokální skill s voláním CLI má krátkou cestu: hostitel agenta, proces, platform API. Cesta přes MCP může přidat start serveru, vyjednávání transportu, vzdálené směrování a další authentication layer. Tyto doplňky nejsou samy o sobě špatné, ale každý z nich vytváří samostatnou failure surface.
Testujte odpojení, expirovaná credentials, chybné inputs, částečně dokončené dlouhotrvající operace a upgrady serveru. Agent musí umět říct, zda k selhání došlo v hostiteli, protocol connection, serveru nebo externí platformě. Obecný výsledek „tool failed“ pro produkční práci nestačí.
U dlouhých deploymentů musí rozhraní zachovat sémantiku koncového stavu. Ať už jde o operaci CLI --wait, nebo MCP tool s průběhem, agent nesmí zaměnit potvrzení přijetí za úspěch. Volba agent skills vs MCP tento požadavek neodstraňuje.
Plánujte portability bez obětování pravdivosti
MCP může zlepšit portability napříč kompatibilními klienty, protože stejný server inzeruje tools prostřednictvím sdíleného protokolu. Přenositelné mohou být i skills, pokud více agentů podporuje stejný adresář a konvence SKILL.md, jako je tomu u Claude Code a Codex v instalačním modelu Dockup.
Portability je užitečná pouze tehdy, pokud zůstane zachována přesná sémantika. Nástroj s názvem deploy musí definovat, zda vrací výsledek po zařazení do fronty, nebo až ve chvíli, kdy je služba healthy. Instrukce skillu „deploy and verify“ musí odkazovat na příkaz, který takový důkaz skutečně dokáže poskytnout.
Nejlepší návrh udržuje pravdu domény co nejblíže vrstvě executable a vyšší vrstvu používá k vysvětlení záměru. V porovnání agent skills vs MCP standardizovaný protocol ani kvalitně napsaný soubor s instrukcemi nenahradí nejednoznačnou backendovou operaci.
Uveďte workflow do produkce
Použijte nejmenší architekturu, která vytvoří důvěryhodnou boundary. V případě Dockup nainstalujte přibalený skill a ponechte CLI jako zdroj pravdy pro provádění deploymentu.
npm install -g dockup-cli
dockup skill install
První příkaz nainstaluje CLI. Druhý nainstaluje odpovídající Dockup skill pro Claude Code a Codex. Začněte zdarma na app.dockup.ai.
FAQ
Jsou agent skills a MCP totéž?
Ne. Skill primárně poskytuje instrukce a provozní znalosti. MCP poskytuje protocol pro zpřístupnění tools, resources a prompts prostřednictvím klient-server připojení.
Spouští soubor SKILL.md příkazy sám?
Ne. Říká agentovi, jak používat základní capabilities, jako jsou CLI, soubory, API nebo MCP tools. Akci provádí executable interface.
Kdy je skill lepší než MCP?
Skill je často jednodušší volbou, když vyspělé lokální CLI už poskytuje bezpečné, machine-readable operace a chybějící část představuje workflow guidance.
Může agent používat skill a MCP společně?
Ano. Skill může popsat vícekrokové workflow a policy, zatímco MCP server zpřístupní typované tools a resources, které toto workflow používá.
Proč Dockup dodává svůj skill uvnitř balíčku CLI?
Společné zabalení umožňuje, aby dockup update aktualizoval executable i jeho instrukce v jednom kroku, čímž se snižuje riziko, že skill popisuje jinou verzi příkazů.
