Skip to content

MCP-Antworten kürzen: Der schnelle Fix für Datenfluten

Eine einfache Suche nach offenen Vorgängen kann im KI-Chat vollständige Datensätze, lange Historien und irrelevante Felder zurückgeben. Begrenze die Ausgabe direkt im MCP-Tool und ermögliche gezieltes Nachladen.

Moritz Klaßen

Moritz Klaßen

Entwickler & Gründer von Klassen AI

5 Min. Lesezeit

Zu große Antworten eines MCP-Tools lassen sich nicht zuverlässig allein über den Prompt begrenzen. Ein Prompt kann um eine knappe Auswahl bitten, erzwingt aber weder eine feste Trefferzahl noch eine reduzierte Feldmenge. Die Begrenzung gehört deshalb in das Tool, das die Daten ausgibt.

Das Ziel ist keine möglichst kleine Antwort. Das Tool soll genug Informationen liefern, damit der nächste fachliche Schritt möglich ist. Für eine Liste offener Vorgänge reichen oft Kennung, Status, Bezeichnung und Änderungsdatum. Interne Kommentare, vollständige Kontaktdaten und die komplette Ereignishistorie müssen dafür nicht mitgeliefert werden.

Woran du eine zu große MCP-Antwort erkennst

Eine lange Tool-Ausgabe ist nicht automatisch falsch. Wird ausdrücklich ein vollständiger Datensatz angefordert, darf die Antwort umfangreich sein. Problematisch wird es, wenn eine einfache Such- oder Übersichtsfrage regelmäßig unverhältnismäßig viele Rohdaten zurückgibt.

Typische Anzeichen sind:

  • Eine Suchfunktion liefert vollständige Objekte, obwohl für die Auswahl wenige Felder genügen.
  • Das Tool gibt alle Treffer zurück, obwohl zunächst nur die relevantesten Ergebnisse benötigt werden.
  • Historien, Beschreibungen oder Protokolle werden ungefiltert an jeden Listeneintrag angehängt.
  • Das Modell übersieht wichtige Treffer, vermischt Datensätze oder fasst die Ergebnisse nur grob zusammen.
  • Bei einer Rückfrage wird dieselbe große Datenmenge erneut übertragen.

Prüfe die rohe Tool-Antwort, bevor du das Verhalten des Modells bewertest. Stehen dort bereits fünfzig vollständige Datensätze, begrenzt eine ausführlichere Tool-Beschreibung die Datenmenge nicht.

Begrenze zuerst Treffer und Felder

Ein sinnvoller erster Eingriff kombiniert zwei Grenzen: eine Obergrenze für die Trefferzahl und eine kompakte Feldauswahl. Beide Regeln gehören in die Implementierung des Tools. Damit gelten sie unabhängig vom verwendeten KI-Client oder Prompt.

Eine feste Standardgrenze setzen

Gib Such- und Listen-Tools ein Standardlimit. Das Tool kann zusätzlich einen Parameter wie limit akzeptieren, sollte dafür aber auch eine feste Obergrenze durchsetzen. Sonst hebt ein sehr hoher Parameterwert die Begrenzung wieder auf.

Die passende Grenze hängt von der Aufgabe ab. Eine Auswahl für einen einzelnen Vorgang braucht weniger Treffer als eine Übersicht für eine redaktionelle Prüfung. Leite den Wert aus dem Nutzungsszenario ab, nicht aus der theoretisch verfügbaren Datenmenge.

Für Listen eigene kompakte Felder definieren

Verwende für Suchergebnisse keine vollständige Darstellung des internen Datenmodells. Lege ausdrücklich fest, welche Felder für Erkennung und Auswahl nötig sind. Bei einer Vorgangssuche können das beispielsweise folgende Angaben sein:

  • eindeutige Kennung,
  • kurzer Titel oder Name,
  • aktueller Status,
  • zuständige Person, sofern fachlich erforderlich,
  • Zeitpunkt der letzten Änderung.

Lange Beschreibungen, Notizen, Adressen, technische Metadaten und Ereignislisten gehören in einen gesonderten Detailabruf. So gelangen weniger irrelevante oder sensible Informationen in Aufgaben, für die sie nicht benötigt werden.

Kürzungen müssen für das Modell sichtbar sein

Eine still abgeschnittene Antwort ist riskant. Das Modell könnte zehn gelieferte Treffer für die vollständige Ergebnismenge halten und daraus eine falsche Aussage ableiten. Jede Begrenzung braucht daher eindeutige Metadaten.

Eine kompakte Listenantwort sollte mindestens diese Informationen enthalten:

  • returned_count: Anzahl der tatsächlich gelieferten Einträge,
  • has_more: Hinweis, ob weitere Treffer existieren,
  • applied_limit: das angewendete Limit,
  • next_cursor: eine Fortsetzungsmarke für die nächste Seite, falls Nachladen unterstützt wird.

Ein Cursor ist eine vom System erzeugte Markierung, mit der das Tool eine Suche fortsetzen kann. Er vermeidet, dass für weitere Ergebnisse sämtliche bisherigen Treffer erneut geladen werden müssen.

Wenn die Gesamtzahl ohne hohen Aufwand bestimmbar ist, kann zusätzlich total_count ausgegeben werden. Ist sie technisch teuer oder fachlich nicht zuverlässig verfügbar, solltest du keine vermeintlich exakte Zahl ausgeben. Der Hinweis Weitere Treffer vorhanden ist dann angemessener.

Trenne Suche und Detailabruf

Eine kompakte Suche lässt sich mit einem gezielten Detailabruf ergänzen. Der Ablauf besteht aus zwei Schritten:

  1. Das Modell sucht nach passenden Vorgängen und erhält eine kurze Trefferliste.
  2. Es lädt den vollständigen Datensatz nur für die ausgewählte Kennung nach.

Ein Tool wie search_orders liefert beispielsweise Kennung, Status und Kurzbezeichnung. Ein separates get_order kann bei Bedarf Positionen, Ansprechpartner und Verlauf für genau einen Auftrag ausgeben. Das Modell erhält dadurch erst nach der Auswahl die Detaildaten.

Beschreibe in der Suchfunktion knapp, welche Felder sie liefert und wann der Detailabruf verwendet werden soll. Die technische Begrenzung bleibt trotzdem im Tool. Tool-Beschreibungen helfen bei der Auswahl, ersetzen aber keine Grenzen.

Für Zählungen und Auswertungen keine Datensätze stapeln

Pagination löst nicht jede umfangreiche Anfrage. Soll beispielsweise die Zahl offener Vorgänge je Status ermittelt werden, ist das seitenweise Laden aller Einträge unnötig. Das System kann die Gruppierung ausführen und nur das Ergebnis zurückgeben.

Für wiederkehrende Fragen kann sich deshalb ein separates Auswertungs-Tool für Anzahlen, Summen oder Gruppierungen lohnen. Damit bleibt auch nachvollziehbar, welche Filter für die Auswertung verwendet wurden.

Ein zusätzliches Tool ist nicht für jede spontane Frage nötig. Beginne mit einer begrenzten Liste und einem Detailabruf. Ergänze spezielle Auswertungen, wenn dieselbe fachliche Frage regelmäßig auftritt.

So setzt du den schnellen Fix um

Für ein bestehendes MCP-Tool kannst du die Antwortgrenze schrittweise ergänzen:

  1. Breite Anfrage festhalten: Verwende eine Suchanfrage, die derzeit zu viele Ergebnisse erzeugt.
  2. Standardlimit und Höchstgrenze ergänzen: Beide Werte werden vom Tool durchgesetzt.
  3. Listendarstellung verkleinern: Entferne Felder, die nicht für Erkennung, Vergleich oder Auswahl erforderlich sind.
  4. Kürzung kennzeichnen: Ergänze Trefferzahl, angewendetes Limit und den Hinweis auf weitere Ergebnisse.
  5. Gezieltes Nachladen ermöglichen: Nutze einen Cursor für weitere Treffer und einen Abruf per Kennung für Details.
  6. Tool-Beschreibung anpassen: Erkläre knapp, dass die Suche kompakte Ergebnisse liefert und wann Details nachgeladen werden sollen.

Prüfe danach nicht nur die breite Anfrage. Teste auch eine Suche mit genau einem Treffer, eine leere Ergebnismenge, den maximal erlaubten Grenzwert und das Nachladen der nächsten Seite. Beim Detailabruf muss außerdem feststehen, dass nur berechtigte Datensätze erreichbar sind.

Was dieser Fix nicht löst

Eine kleinere Antwort ist keine Zugriffskontrolle. Das Tool muss weiterhin vor der Ausgabe prüfen, ob der aufrufende Kontext die angeforderten Informationen sehen darf. Ein Trefferlimit begrenzt lediglich die Menge einer Ausgabe.

Auch sehr große Dokumente oder Protokolle benötigen eine andere Behandlung. Dafür eignen sich Abschnitte, gezielte Suchfunktionen oder Verweise auf einzelne Inhalte besser als eine beliebig abgeschnittene Zeichenkette. Der beschriebene Fix passt vor allem zu Suchergebnissen, Listen und strukturierten Datensätzen.

Wählt das Modell trotz kompakter Antworten regelmäßig die falschen Informationen aus, liegt das Problem möglicherweise nicht mehr an der Menge. Untersuche dann Benennung, Beschreibung und Parameter des Tools. Eine weitere Kürzung der Ausgabe löst dieses Problem nicht zwangsläufig.

Fazit: Die Antwortgrenze gehört ins MCP-Tool

Begrenze die Trefferzahl, liefere in Listen nur entscheidungsrelevante Felder und kennzeichne jede Kürzung ausdrücklich. Ein Detailabruf und eine kontrollierte Fortsetzung halten zusätzliche Informationen erreichbar, ohne sie vorsorglich in jede Chat-Antwort zu laden.

Der Prompt kann erklären, wie das Modell diese Möglichkeiten nutzen soll. Die verlässliche Grenze setzt jedoch das Tool selbst.

Häufige Fragen

Kurz beantwortet, damit du schneller einschätzen kannst, was für dein Projekt wichtig ist.

Wie viele Treffer sollte ein MCP-Tool standardmäßig zurückgeben?

Dafür gibt es keinen allgemeinen Idealwert. Wähle eine Grenze, die für die konkrete Auswahl- oder Übersichtsaufgabe ausreicht, und setze zusätzlich eine feste Höchstgrenze im Tool.

Reicht es, das gewünschte Limit in den Prompt zu schreiben?

Nein. Ein Prompt kann das Modell anleiten, erzwingt die Grenze aber nicht zuverlässig. Standardlimit und Höchstgrenze sollten direkt in der Implementierung des MCP-Tools gelten.

Wann ist ein separates Detail-Tool sinnvoll?

Wenn eine Suche nur wenige Felder zur Auswahl benötigt, der vollständige Datensatz aber umfangreich ist. Die Suche liefert dann kompakte Treffer, während Details gezielt über eine eindeutige Kennung abgerufen werden.

Sollte das Tool abgeschnittene Ergebnisse kennzeichnen?

Ja. Gib mindestens an, wie viele Einträge geliefert wurden, welches Limit galt und ob weitere Treffer vorhanden sind. Sonst könnte das Modell eine Teilliste für vollständig halten.