Ein Tool-Call von Anfang bis Ende
Wenn ein LLM ein MCP-Tool benutzt, kommunizieren vier Akteure miteinander: Nutzer, MCP-Client, LLM und MCP-Server. Klick durch die Schritte, um zu sehen wer wann was sagt.
Warum eigentlich? — Warum nicht das Modell direkt mit dem Server reden lassen?
Das LLM ist ein Textgenerator — es kann nicht von sich aus HTTP-Requests senden. Es schreibt nur das „Ich-möchte-dieses-Tool-mit-diesen-Argumenten“-JSON. Der Client ist der Adapter, der das in einen echten Aufruf übersetzt. Vorteil: alle Sicherheits-Checks (Berechtigungen, Nutzer-Bestätigung) leben im Client, nicht im Modell.
Häufiger Denkfehler — Confused Deputy
Klassisches Risiko: Der MCP-Server hat mehr Berechtigungen als der Nutzer denkt, und das LLM ruft ihn unbeabsichtigt mit gefährlichen Argumenten auf (per Prompt Injection im Tool-Ergebnis). Daher: Tool-Aufrufe mit Side Effects sollten User-Confirmation einholen, bevor sie ausgeführt werden.
Tiefer rein — Roundtrips minimieren
Bei vielen kleinen Tool-Calls explodiert die Latenz. Best practice: Tools mit batch-fähigen Argumenten anbieten (eine SQL-Query statt zehn Row-Fetches), und parallel aufrufbar machen — der Client kann mehrere tools/call gleichzeitig schicken.