Dieser Beitrag beschreibt den Aufbau eines KI-gesteuerten Agentensystems in n8n, das über das Model Context Protocol (MCP) externe Tools identifiziert, auswählt und ausführt.

Zielsetzung
Ein Benutzer stellt eine natürliche Spracheingabe, z. B.: „Gib mir die 10 größten Städte in Deutschland. Absteigend nach der Fläche. Suche auch im Internet, um dein Ergebnis abzugleichen.“
Der Agent erkennt die Absicht, prüft verfügbare Werkzeuge, entscheidet über eine Toolauswahl, führt bei Bedarf eine Websuche durch und generiert eine geeignete Antwort. Das zugrunde liegende Steuerungskonzept basiert auf MCP, einem Protokoll zur strukturierten Toolkommunikation in agentenbasierten Systemen.
MCP (Model Context Protocol)
„MCP is an open protocol that standardizes how applications provide context to LLMs. Think of MCP like a USB-C port for AI applications. Just as USB-C provides a standardized way to connect your devices to various peripherals and accessories, MCP provides a standardized way to connect AI models to different data sources and tools.“ [quelle]
In diesem Beispiel besteht MCP aus zwei Kernkomponenten:
- listTools: Liefert eine strukturierte Liste aller zur Verfügung stehenden Tools.
- executeTool: Führt ein bestimmtes Tool mit definierten Parametern aus.
Das Protokoll abstrahiert die konkrete Implementierung der Tools (lokal, API, Datenbank, etc.) und erlaubt eine einheitliche, KI-gesteuerte Steuerung über natürliche Sprache.
Vorteile der MCP-Integration
- Trennung von Steuerung und Ausführung: Das Sprachmodell trifft Entscheidungen, führt aber keine Tools direkt aus.
- Skalierbarkeit: Neue Tools können hinzugefügt werden, ohne das Modell oder den Agenten anzupassen.
- Erweiterbarkeit: Tools lassen sich über HTTP, DB, Python, Shell etc. integrieren – solange sie über MCP angesprochen werden können.
- Transparenz: Jede Entscheidung des Agenten (Toolauswahl, Parameter, Ausführung) ist nachvollziehbar dokumentiert.

Architektur in n8n
- When chat message received: Startpunkt für jede Benutzereingabe
- AI Agent: Steuerzentrale: analysiert, entscheidet, delegiert
- OpenAI Chat Model: Sprachverständnis und Entscheidungslogik
- Simple Memory: Sitzungskontext und Zustandsverwaltung
- MCP Client (list): Implementierung von listTools
- MCP Client (execute): Implementierung von executeTool
Ablaufbeschreibung
Eingabe und Initialisierung
Die Verarbeitung beginnt mit dem Node When chat message received. Er übergibt folgende Daten an den Agenten:

- Session-ID
- Nachrichtentext (chatInput)
- Aktionskennzeichen (sendMessage)
Kontextherstellung
Der AI Agent lädt über Simple Memory alle relevanten Sitzungsinformationen (z. B. vorherige Tools, Ergebnisse, Fragen). Dies ist notwendig für korrekte Kontextverarbeitung und Follow-ups.

System-Prompt
Sprachverständnis
Der erste Aufruf des OpenAI Chat Model analysiert die Benutzereingabe semantisch. Das Modell erkennt:
- Ziel der Anfrage
- Notwendigkeit externer Daten
- Mögliche Toolkategorien
Toolverfügbarkeit prüfen (listTools via MCP)
Der Node MCP Client (list) wird aktiviert. Dieser implementiert die MCP-Funktion listTools und gibt die folgenden Informationen strukturiert zurück:

Toolauswahl und Parametergenerierung
Ein zweiter Aufruf des Sprachmodells erfolgt, um:
- Ein passendes Tool aus der Liste auszuwählen
- Die erforderlichen Parameter zur Ausführung zu generieren

Toolausführung (executeTool via MCP)
Das Tool wird über den Node MCP Client (execute) ausgeführt. Dieser implementiert die MCP-Funktion executeTool.
Toolname: {{ $fromAI(„tool“, „selected tool to execute“) }}
Antworterzeugung
Ein dritter Aufruf des OpenAI Chat Model erstellt aus den MCP-Ergebnissen eine Antwort für den Benutzer. Dabei werden die relevantesten Inhalte gefiltert, zusammengefasst und ggf. aufbereitet.
Kontextspeicherung
Der aktuelle Agentenzustand wird erneut im Simple Memory abgelegt. Dazu gehören:
- Genutzte Tools
- Antworten
- Nutzerabsichten
- Abgeleitete Begriffe (z. B. Thema „Geografie“)