Skonfigurowałeś swojego agenta AI — autonomiczny program, który działa w twoim imieniu — z ładną listą narzędzi. Przeszukaj internet. Odczytaj plik. Stwórz ticket w Jirze. Każde z nich to przewidywalna funkcja: dane wchodzą, wynik wychodzi, jak automat z napojami. Wiesz, ile kosztuje, ile trwa i czego nie potrafi. Wygodnie.
Ale co, jeśli niektóre z tych "narzędzi" wcale nie są funkcjami? Co, jeśli za tym samym interfejsem wywołań kryje się inny autonomiczny AI — z własnymi narzędziami, własnym łańcuchem rozumowania i własną zdolnością do nabijania twojego rachunku? Twój agent orkiestrujący nie ma żadnego sposobu, żeby odróżnić jedno od drugiego.
Google zatarł granicę
22 kwietnia, na Cloud Next w Las Vegas, Google wypuścił ADK (Agent Development Kit) 1.0 — stabilne wydania dla Pythona, Go, Javy i TypeScripta. Główna funkcja: ADK natywnie obsługuje zarówno narzędzia MCP (Model Context Protocol — uniwersalny standard podłączania AI do zewnętrznych usług, coś jak USB, ale do danych), jak i agenty A2A (Agent-to-Agent protocol — sposób, w jaki agenty AI rozmawiają ze sobą jak równy z równym). Oba można teraz wywoływać z tego samego agenta orkiestrującego. Thomas Kurian, CEO Google Cloud, ogłosił, że "era pilotaży się skończyła" — 150 organizacji już używa A2A na produkcji.
To samo menu, zupełnie inne kuchnie
W kodzie istnieje techniczna różnica. Lokalne narzędzia trafiają do parametru tools=. Zdalne agenty A2A idą do sub_agents=. Czyste rozdzielenie na papierze. Ale LLM — duży model językowy, mózg stojący za Gemini, ChatGPT, Claude — widzi jedno i drugie jako opcje do wywołania z tego samego menu. Wybiera "search_web" albo "ask_finance_agent" bez żadnych metadanych o tym, co czeka po drugiej stronie.
Narzędzie MCP jest bezstanowe: dane wchodzą, wynik wychodzi, deterministycznie, szybko. Agent A2A to niedeterministyczny byt rozumujący, który może wywoływać własne narzędzia, podejmować wieloetapowe decyzje, działać minutami i budować własne okno kontekstowe — ilość tekstu, którą AI trzyma w pamięci roboczej. AgentCard A2A — plik z samoopisem agenta — zawiera schematy uwierzytelniania i opisy umiejętności. Czego nie zawiera: flagi stanowości, szacunku kosztów ani deklaracji idempotentności (czy wywołanie tego dwa razy da ten sam wynik, czy stworzy duplikat akcji).
Trzy rzeczy sypią się naraz
Zakres uprawnień. "Narzędzie", które w sekrecie jest agentem, może eskalować uprawnienia przez własne wywołania narzędzi — wywołania, których twój orkiestrator nigdy nie autoryzował i nigdy nie zobaczy.
Budżety kosztowe. Agent może spalić nieprzewidywalną liczbę tokenów — fragmentów słów przetwarzanych przez AI, mniej więcej ¾ angielskiego słowa — na wewnętrznym rozumowaniu, które nigdy nie pojawi się w twoich logach. Twoje wywołanie narzędzia za $0.002 po cichu staje się sesją agenta za $0.50.
Logika ponawiania. Ponowne wywołanie zfailowanej funkcji jest bezpieczne. Ponowne wywołanie zfailowanego agenta może stworzyć duplikaty zamówień, wysłać duplikaty maili albo rozpocząć drugie negocjacje z innym AI. Idempotentne vs. nieidempotentne — a nic w protokole ci nie mówi, z którym masz do czynienia.
Badacze bezpieczeństwa już policzyli ryzyko: wdrożenie zaledwie dziesięciu pluginów MCP daje 92% prawdopodobieństwo co najmniej jednej podatności do exploitacji. Analiza akademicka wykazała, że tokeny OAuth 2.0 w A2A nie mają ścisłych wymagań co do wygasania — wyciekłe tokeny pozostają ważne godzinami lub dniami. A agent cards są samodeklarowane: agenty same opisują swoje możliwości bez żadnej niezależnej weryfikacji. Zaufaj mi, jestem agentem.
Brakujący sygnał zaufania
Ani MCP, ani A2A nie ma pola, które mówi "jestem głupą funkcją" vs. "jestem autonomicznym bytem rozumującym z kartą kredytową". Oba protokoły żyją teraz pod parasolem Agentic AI Foundation przy Linux Foundation (współzałożonej w grudniu 2025 przez OpenAI, Anthropic, Google, Microsoft i AWS), ale zunifikowany standard deklaracji możliwości jeszcze nie istnieje. Developerzy muszą ręcznie audytować każdy punkt integracji — ten rodzaj pracy, który się nie skaluje i którego nikt nie robi, dopóki coś nie wybuchnie na produkcji.
Co powinieneś zrobić teraz
Dopóki ten standard nie powstanie, jedyny rozsądny domyślny tryb: traktuj każde wywołanie narzędzia jak potencjalną delegację do agenta. Limity wydatków na poziomie sesji. Żadnych automatycznych ponowień. Zakres uprawnień per wywołanie. Nie ma znaczenia, czy endpoint wygląda jak prosta funkcja wyszukiwania — zakładaj, że ma własne zdanie.
Granica między narzędziem a agentem zawsze była wygodną fikcją. Google właśnie uczynił to widocznym w infrastrukturze produkcyjnej używanej przez 150 organizacji w całej branży. Każdy model bezpieczeństwa zbudowany na założeniu "narzędzia są bezpieczne, agenty są niebezpieczne" wymaga przebudowy od zera. Twój automat z napojami może być teraz świadomy — i na pewno ma własne klucze API.




