
Samouczek n8n AI Agents: Buduj inteligentne workflow krok po kroku
Różnica między „chcę mieć agenta AI” a „mam działającego agenta AI” to zazwyczaj setki linii kodu łączącego w Pythonie. Agenty AI w n8n niwelują tę lukę dzięki wizualnemu edytorowi workflow, w którym przeciągasz, upuszczasz i łączysz ze sobą agentów opartych na LLM, którzy faktycznie wykonują zadania: przeszukują sieć, odpytują bazy danych, wysyłają e-maile czy aktualizują arkusze kalkulacyjne. Zamiast szablonowego kodu frameworka, piszesz prompt systemowy.
W tym samouczku przeprowadzimy Cię przez budowanie dwóch rzeczywistych workflow agentów od zera: agenta do researchu internetowego oraz bota obsługi klienta z pamięcią. Na końcu zrozumiesz każdy typ węzła, którego potrzebujesz, i dowiesz się, jak współdziałają one ze sobą.
Czym jest n8n (i dlaczego warto go używać do agentów AI)?
n8n to platforma do automatyzacji workflow typu open-source – pomyśl o Zapier, ale z możliwością hostowania na własnym serwerze i filozofią „koduj tylko wtedy, gdy musisz”. Łączy ona ponad 500 usług za pomocą wizualnego edytora opartego na węzłach.
To, co czyni n8n szczególnie interesującym dla agentów AI, to jego natywna integracja z LangChain. Zamiast pisać kod Pythona dla LangChain, konfigurujesz te same koncepcje (agenci, narzędzia, pamięć, modele) jako wizualne węzły. Węzeł AI Agent zajmuje się pętlą wnioskowania, a Ty jedynie podłączasz to, czym ma myśleć i co może robić.
Dlaczego warto wybrać n8n zamiast czystego kodu?
- Wizualne debugowanie: widzisz dokładnie, gdzie przerywa się łańcuch wnioskowania agenta
- Ponad 500 integracji staje się natychmiastowymi narzędziami dla agenta (Slack, Gmail, Google Sheets, bazy danych)
- Darmowe hostowanie we własnym zakresie (wersja Community Edition) lub użycie n8n Cloud od 20 USD miesięcznie
- Obsługa MCP pozwala workflow n8n stać się narzędziami dla zewnętrznych agentów AI i odwrotnie
Jeśli oceniasz różne frameworki agentów, takie jak LangGraph, CrewAI lub OpenAI Agents SDK, n8n znajduje się w innej kategorii – jest przeznaczony dla osób, które chcą produkcyjnych agentów bez zarządzania środowiskiem wykonawczym Pythona.
Jak działa węzeł AI Agent w n8n
Każde workflow agenta AI w n8n ma strukturę hierarchiczną. Węzeł Agent znajduje się w centrum, a podrzędne węzły łączą się z nim poniżej, zapewniając określone możliwości.
<!-- IMAGE: n8n AI agent node architecture diagram showing trigger, agent, model, tools, and memory connections -->Oto anatomia takiego rozwiązania:
| Komponent | Co robi | Przykładowe węzły |
|---|---|---|
| Trigger (Wyzwalacz) | Uruchamia workflow | Chat Trigger, Webhook, Schedule |
| AI Agent | Silnik wnioskowania (pętla ReAct) | Tools Agent, OpenAI Functions Agent |
| Model rozmowy (Chat Model) | LLM napędzający myślenie | OpenAI GPT-4o, Anthropic Claude, Ollama |
| Narzędzia (Tools) | Akcje, które agent może podejmować | HTTP Request, Calculator, SerpAPI, Code |
| Pamięć (Memory) | Kontekst rozmowy pomiędzy turami | Window Buffer, Postgres, Redis |
| Wyjście (Output) | Miejsce docelowe wyników | Respond to Webhook, Send Email, Update Sheet |
Tools Agent to ten, którego będziesz używać w 90% przypadków. Jest to najbardziej elastyczny typ agenta – przyjmuje Twój prompt, wnioskuje, które narzędzia wywołać, wykonuje je i powtarza proces, aż uzyska odpowiedź. Pod spodem uruchamia pętlę ReAct (Reason + Act): myśl, działaj, obserwuj, powtórz.
n8n oferuje również wyspecjalizowanych agentów: SQL Agent do zapytań bazodanowych, Plan and Execute Agent, który dzieli zadania na podkroki, oraz Conversational Agent do prostszych przepływów czatu. Jednak Tools Agent pokrywa większość przypadków użycia.
Czego potrzebujesz przed rozpoczęciem
Zanim zaczniesz budować cokolwiek, uporządkuj te trzy rzeczy:
- Instancja n8n: możesz zarejestrować się w n8n Cloud (plan Starter za 20 USD/mies.) lub hostować samodzielnie za pomocą Dockera:
docker run -it --rm \
--name n8n \
-p 5678:5678 \
-v n8n_data:/home/node/.n8n \
docker.n8n.io/n8nio/n8n-
Klucz API do LLM: OpenAI, Anthropic lub Google Gemini. Możesz też użyć Ollama do darmowych modeli lokalnych, choć wydajność wywoływania narzędzi może się różnić.
-
Klucz API do narzędzia (opcjonalnie): SerpAPI do wyszukiwania w sieci (50 USD/mies.) lub Brave Search API (darmowa warstwa). Możesz budować agentów bez wyszukiwarki, ale jest to najczęstsze pierwsze narzędzie.
Gdy n8n już działa, otwórz http://localhost:5678 (przy hostowaniu własnym) lub swój panel w chmurze. Utwórz nowy workflow i jesteś gotowy do działania.
Budowa Agenta 1: Agent do researchu internetowego
Ten agent pobiera temat, przeszukuje sieć, czyta wyniki i pisze strukturalne podsumowanie. To „hello world” wśród agentów AI w n8n i naprawdę przydatne narzędzie do researchu treści.
Krok 1: Dodaj Manual Trigger
Kliknij przycisk + i wyszukaj „Manual Trigger”. Upuść go na kanwie. Pozwala to testować workflow, klikając „Test Workflow” – później zamienisz go na webhook lub trigger czatu.
Krok 2: Dodaj węzeł Edit Fields
Dodaj węzeł Edit Fields po triggerze. Ustaw pole o nazwie topic z wartością tekstową, np. "Latest developments in Model Context Protocol". Symuluje to dane wejściowe od użytkownika.
Krok 3: Dodaj węzeł AI Agent
Wyszukaj „AI Agent” i dodaj go. Wybierz Tools Agent jako typ agenta.
W polu System Message wpisz prompt definiujący zachowanie:
You are a research assistant. When given a topic:
1. Search the web for the latest information
2. Read at least 3 different sources
3. Write a structured summary with:
- Key findings (bullet points)
- Notable quotes or data points
- Sources used
Be specific. Include dates, names, and numbers when available.
Do NOT make up information. If search results are unclear, say so.W sekcji Prompt ustaw wartość na wyrażenie: {{ $json.topic }} – pobiera to temat z węzła Edit Fields.
Krok 4: Połącz z modelem rozmowy (Chat Model)
Kliknij + poniżej węzła Agent, aby dodać węzeł podrzędny. Wybierz OpenAI Chat Model (lub inny używany przez Ciebie LLM).
Skonfiguruj go:
- Model:
gpt-4o(lubgpt-4o-minidla tańszych uruchomień) - Temperature:
0.3(niższa wartość = bardziej faktograficzne, mniej kreatywne odpowiedzi)
Wklej swój klucz API w sekcji danych uwierzytelniających (credentials).
Krok 5: Dodaj narzędzie wyszukiwania
Kliknij ponownie +, aby dodać podrzędny węzeł narzędzia. Wybierz SerpAPI (lub HTTP Request Tool, jeśli chcesz użyć niestandardowego API wyszukiwania).
Dla SerpAPI:
- Dodaj swój klucz API jako dane uwierzytelniające
- Agent będzie wywoływał to narzędzie za każdym razem, gdy uzna, że potrzebuje przeszukać sieć
Jako darmową alternatywę użyj HTTP Request Tool skonfigurowanego do odpytywania API Brave Search:
URL: https://api.search.brave.com/res/v1/web/search
Method: GET
Query Parameters: q={{ $fromAI("query", "search query") }}
Headers: X-Subscription-Token: YOUR_BRAVE_KEYWyrażenie $fromAI() to magia – mówi agentowi: „sam zdecyduj, jaką wartość tutaj przekazać”.
Krok 6: Przetestuj to
Kliknij Test Workflow. Obserwuj panel wykonania po prawej stronie. Zobaczysz:
- Agent otrzymuje temat
- Decyduje o wyszukaniu informacji (wywołanie narzędzia)
- SerpAPI zwraca wyniki
- Agent wnioskuje na podstawie wyników
- Może wyszukać ponownie, by uzyskać więcej szczegółów
- Produkuje finalne podsumowanie
Jeśli agent zapętla się bez osiągnięcia konkluzji, Twój prompt systemowy prawdopodobnie wymaga ostrzejszych instrukcji. Poinstruuj go dokładnie, kiedy ma przestać szukać.
<!-- IMAGE: n8n workflow canvas showing completed research agent with connected nodes -->Budowa Agenta 2: Bot obsługi klienta z pamięcią
Agent do researchu był bezstanowy – zapominał wszystko po każdym uruchomieniu. Bot obsługi klienta musi pamiętać rozmowę. Tutaj z pomocą przychodzi pamięć agenta.
Krok 1: Użyj Chat Trigger
Tym razem zacznij od węzła Chat Trigger zamiast Manual Trigger. Daje Ci to wbudowany widget czatu n8n do testowania rozmów.
Krok 2: Skonfiguruj agenta
Dodaj węzeł Tools Agent. Prompt systemowy:
You are a customer support agent for a SaaS project management tool called "TaskFlow."
Rules:
- Always greet the user by name if provided
- Check the knowledge base before answering questions
- If you cannot find an answer, say: "Let me connect you with a human agent"
- Never make up features or pricing that you don't find in the knowledge base
- Keep responses concise (2-3 sentences max unless the user asks for detail)
Available tools:
- Knowledge base search: use this for product questions
- Ticket creation: use this when the user reports a bug or requests a featureKrok 3: Dodaj pamięć
Kliknij + przy Agenecie, aby dodać węzeł podrzędny i wybierz Window Buffer Memory.
- Context Window Length:
10(zapamiętuje ostatnie 10 par wiadomości) - Session ID:
{{ $json.sessionId }}(z triggera czatu)
To najprostsza opcja pamięci – utrzymuje najnowsze wiadomości w przesuwnym oknie. Dla botów produkcyjnych wymagających trwałej pamięci między sesjami, użyj zamiast tego Postgres Chat Memory lub Redis Chat Memory. Nasz przewodnik po najlepszych narzędziach do pamięci agentów AI omawia kompromisy między tymi podejściami.
Krok 4: Dodaj narzędzia
Dodaj dwa podrzędne węzły narzędzi:
Narzędzie 1 -- Baza wiedzy (Vector Store QA): Jeśli masz dokumentację produktu w store wektorowym (Pinecone, Qdrant, Supabase), użyj Vector Store Question Answer Tool. Jest to zasadniczo RAG (Retrieval-Augmented Generation) w jednym węźle.
Narzędzie 2 -- Tworzenie zgłoszenia (HTTP Request): Dodaj HTTP Request Tool skonfigurowany do wysyłania żądania POST do Twojego API systemu ticketowego:
URL: https://api.yourapp.com/tickets
Method: POST
Body (JSON):
{
"title": "{{ $fromAI('title', 'ticket title') }}",
"description": "{{ $fromAI('description', 'issue description') }}",
"priority": "{{ $fromAI('priority', 'low, medium, or high') }}"
}Krok 5: Przetestuj rozmowę
Kliknij Test Workflow i otwórz panel czatu. Spróbuj wieloetapowej rozmowy:
- „Cześć, jestem Alex. Jak wyeksportować moje zadania do CSV?”
- „A co z eksportem do PDF?”
- „Właściwie, eksport PDF u mnie nie działa, czy możesz zgłosić błąd?”
Obserwuj, jak agent przeszukuje bazę wiedzy w przypadku pierwszych dwóch pytań i tworzy zgłoszenie dla trzeciego. Węzeł pamięci zapewnia, że agent pamięta imię Alexa i kontekst problemu z PDF.
Rozszerzanie agentów za pomocą MCP
n8n obsługuje obecnie Model Context Protocol (MCP) w obu kierunkach, i to tutaj sprawy stają się naprawdę potężne.
Konsumpcja serwerów MCP: Dodaj podrzędny węzeł MCP Client Tool do swojego agenta. Wskaż dowolny URL serwera MCP, a agent automatycznie odkryje i będzie mógł wywoływać wszystkie narzędzia udostępniane przez ten serwer. Jeden węzeł, dziesiątki narzędzi.
Udostępnianie workflow jako narzędzi MCP: Użyj węzła MCP Server Trigger, aby przekształcić dowolne workflow n8n w narzędzie kompatybilne z MCP. Zewnętrzni agenci działający w Claude Desktop, Cursor lub VS Code mogą następnie odkrywać i wywoływać Twoje workflow n8n. Zbuduj raz workflow „wyślij powiadomienie Slack”, a każdy agent kompatybilny z MCP w Twoim stosie technologicznym będzie mógł z niego korzystać.
Ta dwukierunkowa obsługa MCP zmienia n8n w hub agentów – Twoje agenty n8n wywołują zewnętrzne narzędzia przez MCP, a zewnętrzni agenci wywołują Twoje workflow n8n przez MCP.
Praktyczne wskazówki dla lepszych agentów n8n
Po zbudowaniu dziesiątek workflow agentów, oto co naprawdę ma znaczenie:
Utrzymuj niską liczbę narzędzi. Agenci gubią się, gdy mają więcej niż 5-7 narzędzi. Jeśli potrzebujesz więcej, stwórz „agenta menedżera”, który kieruje zadania do wyspecjalizowanych „agentów pracowników” – n8n obsługuje workflow agent-do-agenta.
Bądź precyzyjny w promptach systemowych. Nie pisz tylko „pomóż użytkownikowi”. Określ dokładne zasady, formaty wyjścia i kiedy używać każdego narzędzia. Im bardziej specyficzny jest Twój prompt, tym mniej niespodziewanych wywołań narzędzi.
Ustaw limity tokenów. W konfiguracji modelu rozmowy ustaw maksymalny limit tokenów. Bez niego zdezorientowany agent może szybko wydać cały Twój budżet API w ramach jednej pętli.
Używaj węzłów obsługi błędów. Dodaj workflow Error Trigger, który przechwytuje awarie i powiadamia Cię przez Slacka lub e-mail. W przeciwnym razie agenci milcząco zawodzą.
Testuj najpierw przypadki brzegowe. Zapytaj agenta o coś, czego nie powinien wiedzieć. Jeśli halucynuje zamiast powiedzieć „nie wiem”, Twój prompt potrzebuje ograniczników (guardrails).
Loguj wszystko w fazie rozwoju. Włącz logowanie wykonania (dostępne w planie Pro lub przy hostowaniu własnym), aby móc odtworzyć i zdebugować dokładnie miejsce, w którym agent poszedł nie tak.
Kiedy agenty n8n mają sens (a kiedy nie)
n8n świetnie sprawdza się, jeśli:
- Chcesz produkcyjnych agentów bez zarządzania infrastrukturą Pythona
- Twoje workflow łączą wiele narzędzi SaaS (Slack, Gmail, Notion, bazy danych)
- Twój zespół obejmuje osoby nietechniczne, które muszą modyfikować zachowanie agenta
- Potrzebujesz wizualnego debugowania łańcuchów wnioskowania agenta
n8n prawdopodobnie nie jest właściwym wyborem, jeśli:
- Potrzebujesz drobiazgowej kontroli nad architekturami agentów (zamiast tego użyj LangGraph lub CrewAI)
- Twój agent jest czysto obliczeniowy (pipeline ML, przetwarzanie danych) bez integracji
- Budujesz system badawczy multi-agentów ze złożonym zarządzaniem stanem
W przypadku przypadków użycia automatyzacji biznesowej, botów obsługi klienta, agentów przetwarzających dane, asystentów badawczych czy kwalifikacji leadów, n8n trafia w idealny punkt między mocą a dostępnością.
FAQ
Jakie LLM obsługuje n8n dla agentów AI?
n8n obsługuje OpenAI (GPT-4o, GPT-4, GPT-3.5), Anthropic Claude (rodzina Claude 3.5 i 4), Google Gemini, Mistral, Cohere, modele HuggingFace oraz modele lokalne przez Ollama. Zamieniasz modele, zmieniając jeden węzeł podrzędny, bez konieczności zmian w workflow.
Czy n8n jest darmowy do budowania agentów AI?
Self-hostowana wersja Community Edition jest całkowicie darmowa bez limitów wykonania. n8n Cloud zaczyna się od 20 USD/miesięcznie (Starter) z 2500 wykonaniami. Nadal będziesz płacić swojemu dostawcy LLM (OpenAI, Anthropic itp.) osobno za wywołania API.
Jak wypada AI Agent w n8n w porównaniu do pisania agentów w Pythonie?
n8n wymienia personalizację na szybkość. Agent Pythona z LangChain daje pełną kontrolę nad każdym krokiem wnioskowania. n8n daje 80% tych możliwości w 20% czasu, z wizualnym debugowaniem i ponad 500 wbudowanymi integracjami. Wybierz Pythona do badań lub nowatorskich architektur; wybierz n8n do automatyzacji biznesowej.
Czy agenty n8n mogą używać narzędzi takich jak wyszukiwanie w sieci i bazy danych?
Tak. Agenty n8n mogą używać dowolnego narzędzia dostępnego jako węzeł: SerpAPI, Brave Search, HTTP Request (dla dowolnego API), baz SQL, Google Sheets, Slacka i setek innych. Dodajesz je jako węzły podrzędne poniżej węzła Agent.
Czym jest narzędzie MCP Client Tool w n8n?
MCP Client Tool łączy Twojego agenta n8n z zewnętrznymi serwerami MCP (Model Context Protocol). Twój agent automatycznie odkrywa wszystkie narzędzia udostępniane przez ten serwer i może ich używać podczas wnioskowania. To pojedynczy węzeł, który może odblokować dziesiątki zewnętrznych narzędzi.
Jak dodać pamięć do agenta AI w n8n?
Dodaj węzeł pamięci jako węzeł podrzędny poniżej swojego węzła Agent. Window Buffer Memory to najprostsza opcja (zapamiętuje ostatnie N wiadomości). Dla trwałej pamięci między sesjami użyj Postgres Chat Memory, Redis Chat Memory lub Zep Memory. Ustaw ID sesji, aby śledzić poszczególne rozmowy.
Czy mogę połączyć wielu agentów w n8n?
Tak. n8n obsługuje workflow agent-do-agenta, w których „menedżer” deleguje zadania do wyspecjalizowanych „pracowników”. Budujesz każdego pracownika jako oddzielne sub-workflow i łączysz je za pomocą narzędzia Call n8n Workflow.
Jaka jest różnica między Tools Agent a innymi typami agentów?
Tools Agent używa pętli wnioskowania ReAct i współpracuje z dowolnym narzędziem. OpenAI Functions Agent używa natywnego API wywoływania funkcji OpenAI (nieco szybszy, ale tylko dla OpenAI). SQL Agent jest wyspecjalizowany do zapytań bazodanowych. Plan and Execute Agent dzieli złożone zadania na podkroki. W większości przypadków zacznij od Tools Agent.
Jak wdrożyć agenta n8n do produkcji?
Przy hostowaniu własnym: użyj Docker Compose z PostgreSQL i Redis, włącz tryb kolejki (queue mode) dla skalowalności poziomej i umieść go za reverse proxy z SSL. W chmurze: po prostu aktywuj workflow, n8n zajmie się infrastrukturą. W obu przypadkach zamień Chat Trigger na Webhook trigger, aby zewnętrzne aplikacje mogły wywoływać Twojego agenta.
Czy agenty n8n obsługują przesyłanie plików i obrazów?
n8n może przetwarzać pliki poprzez obsługę danych binarnych. Możesz budować agentów, którzy otrzymują pliki przez webhook, ekstrahują tekst (np. używając węzła Code z parserem PDF) i wnioskują na podstawie treści. Natywna analiza wizualna/obrazów zależy od tego, czy Twój LLM obsługuje dane multimodalne (np. GPT-4o tak).