Jak umiejętności, agenty i serwery MCP współpracują w Claude Code
Prawdopodobnie już się z tym spotkałeś: wklejasz całą swoją bazę kodu do czatu AI, dodajesz szczegółowy prompt i dostajesz... nic użytecznego. Albo gorzej, model zaczyna halucynować nazwy funkcji, które nie istnieją, bo zgubił wątek tego, co przeczytał 50 000 tokenów temu.
To jest problem okna kontekstu. I dlatego wrzucanie większej ilości kodu do LLM nie czyni go mądrzejszym.
Claude Code rozwiązuje to inaczej. Nie poprzez większe okno kontekstu (choć to też pomaga), ale poprzez inteligentne wykorzystanie dostępnej przestrzeni. Robi to za pomocą trzech współpracujących elementów: umiejętności, pod-agentów i serwerów MCP.
Pokażę ci, jak te elementy do siebie pasują. Kiedy to zrozumiesz, przestaniesz walczyć z AI i zaczniesz z nim współpracować.
Problem okna kontekstu
Oto coś, co zajęło mi trochę czasu, zanim to przyswoiłem: LLM-y tak naprawdę nie "pamiętają" początku długiej rozmowy w sposób, jakiego byś oczekiwał. Okno kontekstu jest bardziej jak reflektor niż szafa na dokumenty. W miarę dodawania kolejnych tokenów, wcześniejsze treści otrzymują mniej uwagi. Wklej 100 000 tokenów kodu, a model w zasadzie tylko przegląda powierzchownie, zanim dotrze do twojego pytania.
To wyjaśnia wiele frustrujących zachowań AI. Model wydaje się inteligentny na początku, potem się gubi. Zapomina rzeczy, które mu wcześniej powiedziałeś. Halucynuje szczegóły z plików, które "przeczytał", ale wyraźnie nie zapamiętał.
Rozwiązaniem nie jest większe okno kontekstu. Rozwiązaniem jest to, żeby go nie potrzebować.
Jak Claude Code faktycznie myśli
Claude Code jest agentem. Brzmi to wymyślnie, ale oznacza po prostu, że może planować, wykonywać, obserwować wyniki i iterować. Kiedy prosisz go o "naprawienie nieudanych testów w moim projekcie", nie próbuje zrozumieć całej twojej bazy kodu na raz. Zamiast tego pracuje w skoncentrowanych krokach:
- Czyta strukturę projektu, aby zrozumieć, co gdzie się znajduje
- Uruchamia testy, aby zobaczyć, co faktycznie nie działa
- Przegląda konkretny nieudany test i kod, który testuje
- Wprowadza poprawkę
- Uruchamia testy ponownie
- Jeśli nadal nie działa, próbuje czegoś innego
Każdy krok pracuje tylko z kontekstem, którego potrzebuje. Agent utrzymuje robocze podsumowanie tego, czego się nauczył, a nie surowy log wszystkiego, co widział. Tak właśnie Claude Code może iterować 20 razy nad złożonym bugiem bez wyczerpania przestrzeni kontekstu.
Pomyśl o tym jak o tym, jak faktycznie debugowałbyś coś. Nie trzymasz całej bazy kodu w głowie. Skupiasz się na jednym obszarze, formułujesz hipotezę, testujesz ją i dostosowujesz. Claude Code działa tak samo.
Pod-agenty - prawdziwy przełom
Tutaj robi się naprawdę interesujące. Claude Code może tworzyć pod-agenty.
Pod-agent to osobna instancja Claude z własnym czystym oknem kontekstu. Możesz powiedzieć Claude Code, żeby go uruchomił, dać mu skoncentrowane zadanie, pozwolić mu pracować niezależnie i otrzymać podsumowanie tego, co znalazł. Pełny kontekst pod-agenta nigdy nie zanieczyszcza twojej głównej rozmowy.
To jest ogromne. Zamiast jednego agenta próbującego wszystko utrzymać:
Ty: "Przeanalizuj tę bazę kodu pod kątem problemów z bezpieczeństwem, wydajnością i pokryciem testami"
Główny agent tworzy pod-agenty:
├── Pod-agent 1: Analiza bezpieczeństwa (własny kontekst, czyta pliki związane z bezpieczeństwem)
├── Pod-agent 2: Przegląd wydajności (własny kontekst, skupia się na krytycznych ścieżkach)
└── Pod-agent 3: Pokrycie testami (własny kontekst, bada pliki testowe)
Każdy pod-agent zwraca podsumowanie do głównego agenta Główny agent syntetyzuje wszystko w jedną odpowiedź
Pod-agenty mogą przeczytać tysiące linii kodu każdy. Ale główny agent otrzymuje tylko ich skondensowane ustalenia. Twój główny kontekst pozostaje czysty, jednocześnie otrzymując głęboką analizę w wielu obszarach.
Pomyśl o tym jak o delegowaniu zadań młodszym programistom. Nie musisz czytać każdej linii, którą przejrzeli. Potrzebujesz ich wniosków i wszelkich sygnałów ostrzegawczych, które znaleźli. Pod-agenty działają tak samo.
Jak faktycznie używać pod-agentów
Możesz wyraźnie poprosić Claude Code o utworzenie pod-agenta:
- "Utwórz pod-agenta do szczegółowej analizy modułu uwierzytelniania"
- "Użyj pod-agenta do przeglądu wszystkich zapytań do bazy danych pod kątem problemów N+1"
- "Niech pod-agent przejrzy pliki testowe i raportuje luki w pokryciu"
Pod-agent otrzymuje własny świeży kontekst, wykonuje głęboką pracę i zwraca podsumowanie. Twoja główna rozmowa nie jest zaśmiecona całą surową analizą.
Jest to szczególnie potężne w przypadku dużych baz kodu. Zamiast Claude Code gubiącego wątek w połowie drogi, otrzymujesz skoncentrowaną analizę, która faktycznie skaluje się.
Gdzie wchodzą umiejętności
Więc Claude Code może rozbijać zadania, tworzyć pod-agenty i pracować w skoncentrowanych krokach. Ale skąd wie jak robić konkretne rzeczy dobrze? Tu właśnie wchodzą umiejętności.
Umiejętności to spakowane instrukcje, które Claude czyta przed podjęciem się konkretnych typów zadań. Kiedy prosisz Claude Code o utworzenie prezentacji PowerPoint, najpierw czyta plik umiejętności w /mnt/skills/public/pptx/SKILL.md. Ten plik zawiera najlepsze praktyki, typowe pułapki i dokładne wzorce kodu, które faktycznie działają.
Umiejętność zazwyczaj zawiera:
- Plik
SKILL.mdze szczegółowymi instrukcjami - Szablony kodu i przykłady
- Znane ograniczenia i obejścia
- Specyfikacje formatu wyjściowego
Kluczowym spostrzeżeniem jest to, że umiejętności są ładowane na żądanie. Claude nie marnuje przestrzeni okna kontekstu na instrukcje PowerPoint, kiedy debugujesz Pythona. Ładuje odpowiednią umiejętność, kiedy jej potrzebuje, wykorzystuje tę wiedzę do zadania i idzie dalej.
To różni się od narzędzi. Narzędzia to funkcje, które Claude wywołuje, aby otrzymać dane, jak web_search czy bash_tool. Umiejętności to pakiety wiedzy, które zmieniają sposób, w jaki Claude podchodzi do problemów. To rozróżnienie ma znaczenie, ponieważ narzędzia kosztują tokeny w systemowym prompcie (więcej narzędzi = mniej miejsca na twój kod), podczas gdy umiejętności są ładowane tylko wtedy, gdy są istotne.
| Aspekt | Narzędzia | Umiejętności |
|---|---|---|
| Jak to działa | Wywołaj funkcję, otrzymaj wynik | Załaduj instrukcje, zmodyfikuj zachowanie |
| Koszt tokenów | Zawsze obecne w kontekście | Ładowane na żądanie |
| Najlepsze dla | Dyskretne akcje (wywołania API, operacje na plikach) | Złożone przepływy pracy (tworzenie dokumentów) |
Pod-agenty też mogą ładować umiejętności. Pod-agent analizujący bezpieczeństwo może załadować umiejętności specyficzne dla bezpieczeństwa bez zaśmiecania tymi instrukcjami twojej głównej rozmowy.
Pętla iteracji
Jeden wzorzec, który zobaczysz stale, to pętla iteracji. Claude Code generuje coś, sprawdza, czy działa, i naprawia problemy, aż będzie dobrze.
- Generuj kod
- Uruchom go (lub sprawdź linterem, lub sprawdź typy)
- Zobacz, czy działa
- Jeśli nie, przeanalizuj błąd i spróbuj ponownie
- Powtarzaj, aż przejdzie
Dlatego Claude Code może naprawiać bugi, które pojedynczy prompt by pominął. Nie tylko generuje kod i ma nadzieję. Testuje swoją własną pracę i reaguje na prawdziwy feedback.
Kiedy Claude Code tworzy komponent React, a następnie uruchamia serwer deweloperski, aby sprawdzić błędy, używa tej pętli. Kiedy pisze funkcję i uruchamia testy, aby sprawdzić, czy działa, to samo. Kroki generowania i weryfikacji współpracują.
To również wyjaśnia, dlaczego Claude Code czasami zajmuje więcej czasu, niż byś oczekiwał. Nie jest wolny. Jest dokładny. Uruchamia twoje testy, sprawdza błędy typów i iteruje, aż rzeczy faktycznie działają.
Serwery MCP - łączenie z systemami zewnętrznymi
Do tej pory rozmawialiśmy o tym, jak Claude Code myśli (kroki agentowe, pod-agenty) i co wie (umiejętności). Ale co z łączeniem się z systemami zewnętrznymi? Tu właśnie wchodzi MCP.
Model Context Protocol to sposób, w jaki Claude Code rozmawia z bazami danych, GitHubem, systemami plików, pipeline'ami CI/CD i praktycznie wszystkim innym. Pomyśl o MCP jak o USB-C dla AI: standardowy interfejs, który pozwala każdemu kompatybilnemu systemowi AI łączyć się z każdą kompatybilną usługą.
Serwery MCP udostępniają trzy typy możliwości:
Narzędzia - Funkcje, które Claude może wywołać, jak zapytanie do bazy danych lub utworzenie pull requesta
Zasoby - Źródła danych, które Claude może czytać, jak zawartość plików lub schematy baz danych
Prompty - Szablony wielokrotnego użytku dla typowych interakcji
W przypadku tworzenia stron internetowych najbardziej przydatne serwery MCP to:
- Serwer systemu plików - Czytaj i zapisuj pliki w swoim projekcie (w sandboxie dla bezpieczeństwa)
- Serwer GitHub - Zarządzaj repozytoriami, PR-ami, issue'ami i workflow'ami
- Serwery baz danych - Odpytuj PostgreSQL, MySQL, SQLite za pomocą języka naturalnego
Oto jak wygląda prosty serwer MCP w TypeScript: typescript import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'; import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
const server = new McpServer({ name: 'code-analyzer', version: '1.0.0' });
server.registerTool( 'analyze_complexity', { description: 'Analyze cyclomatic complexity of a file', inputSchema: { filePath: { type: 'string' } } }, async ({ filePath }) => { const result = await analyzeFile(filePath); return { content: [{ type: 'text', text: JSON.stringify(result) }] }; } );
const transport = new StdioServerTransport(); await server.connect(transport);
Moc serwerów MCP wynika z tego, jak współpracują z pod-agentami. Pod-agent może odpytać bazę danych przez MCP, przeanalizować tysiące wierszy i zwrócić tylko istotne ustalenia. Surowe dane nigdy nie dotykają twojego głównego kontekstu.
Łącząc to wszystko razem
Przejdźmy przez prawdziwy przykład. Prosisz Claude Code: "Przejrzyj ten PR i sprawdź, czy migracje bazy danych są bezpieczne."
Oto co faktycznie się dzieje:
- Główny agent ładuje odpowiednie umiejętności do przeglądu kodu
- Tworzy pod-agenta do szczegółowej analizy zmian w PR
- Ten pod-agent wywołuje serwer MCP GitHub, aby pobrać szczegóły PR
- Inny pod-agent czyta pliki migracji i odpytuje aktualny schemat bazy danych przez MCP
- Pod-agenty zwracają skoncentrowane podsumowania: "Migracja dodaje indeks, wygląda bezpiecznie" lub "Ostrzeżenie: to usuwa kolumnę, która jest nadal używana"
- Główny agent syntetyzuje ustalenia pod-agentów w jasną odpowiedź
Zauważ, jak ciężka praca odbywa się w pod-agentach z własnymi kontekstami. Główny agent orkiestruje i podsumowuje. Twoja rozmowa pozostaje czysta, jednocześnie otrzymując głęboką analizę.
Dlaczego to ma znaczenie dla twojego przepływu pracy
Zrozumienie tej architektury zmienia sposób, w jaki pracujesz z Claude Code:
Przestajesz walczyć z oknem kontekstu. Kiedy zdajesz sobie sprawę, że pod-agenty obsługują głęboką analizę osobno, przestajesz próbować wklejać całą swoją bazę kodu do głównej rozmowy. Pozwól pod-agentom wykonać ciężkie czytanie.
Wyraźnie używasz pod-agentów do dużych zadań. Zamiast mieć nadzieję, że Claude Code to rozgryzie, powiedz mu: "Użyj pod-agenta do analizy modułu płatności" lub "Utwórz pod-agenty do przeglądu bezpieczeństwa, wydajności i testów." Pracujesz z architekturą, a nie przeciwko niej.
Rozumiesz, dlaczego niektóre zadania działają lepiej niż inne. Zadania, które można delegować do pod-agentów, świetnie się skalują. Zadania wymagające ciągłej wymiany zdań w jednym kontekście szybciej osiągają limity.
Ufasz pętli iteracji. Podczas naprawiania bugów pozwól Claude iterować. Często znajdzie problemy, których nie przewidziałeś, faktycznie uruchamiając kod i obserwując błędy. Nie przerywaj mu po pierwszej próbie.
Praktyczne wskazówki
Wyraźnie proś o pod-agenty przy dużych zadaniach. "Utwórz pod-agenta do przeglądu systemu uwierzytelniania" działa lepiej niż nadzieja, że Claude Code sam się zorientuje, że musi delegować.
Pozwól Claude najpierw przeczytać umiejętności. Jeśli tworzysz dokumenty lub pracujesz z konkretnymi formatami plików, Claude działa lepiej, kiedy czyta odpowiedni plik umiejętności przed rozpoczęciem.
Podłącz serwery MCP do powtarzalnych integracji. Zamiast kopiować i wklejać wyniki z bazy danych lub szczegóły PR z GitHuba do swoich promptów, podłącz odpowiednie serwery MCP. Claude pobiera dokładnie to, czego potrzebuje.
Sprawdź ekosystem przed budowaniem własnych narzędzi. Ekosystem MCP rozrósł się do ponad 5000 serwerów społecznościowych obejmujących Stripe, Cloudflare, systemy CI i większość usług, które chciałbyś zintegrować. Ktoś prawdopodobnie już zbudował to, czego potrzebujesz.
Dawaj feedback, kiedy się myli. Kiedy Claude Code produkuje złe wyniki, powiedz mu, co poszło nie tak. Pętla iteracji działa również dla twojego feedbacku.
Szerszy obraz
MCP został niedawno przekazany Linux Foundation, a OpenAI, Google i Microsoft dołączyły jako członkowie wspierający. To sygnalizuje, że protokół staje się standardową infrastrukturą branżową, a nie tylko sprawą Anthropic.
Kombinacja pod-agentów (równoległa praca w oddzielnych kontekstach), umiejętności (wiedza domenowa ładowana na żądanie) i serwerów MCP (czyste połączenia z systemami zewnętrznymi) reprezentuje sposób, w jaki faktycznie działają nowoczesne asystenci kodowania AI. To nie jest magia. To dobra architektura rozwiązująca realne ograniczenia.
Wzorzec pod-agentów szczególnie warto głęboko zrozumieć. To różnica między AI, które dławi się dużymi bazami kodu, a takim, które się skaluje. Kiedy prosisz Claude Code o przeanalizowanie czegoś dużego, nie wpycha wszystkiego do jednego kontekstu i nie modli się. Deleguje do skoncentrowanych pod-agentów, każdy z czystym kontekstem, i syntetyzuje ich ustalenia.
Zrozumienie tych elementów pomaga ci pracować z systemem, a nie przeciwko niemu. Otrzymasz lepsze wyniki, napotkasz mniej ścian i będziesz wiedział, kiedy zaufać AI, a kiedy przejąć kontrolę ręcznie.


