Skip to main content
Glama

cap-shield MCP-Server

Kontextauswahl und -kompression für KI-Agenten – mit gemessenem, nicht behauptetem Recall.

Der Server selbst importiert nichts außerhalb der Standardbibliothek. Installieren Sie ihn als Paket oder nehmen Sie ihn als einzelne Datei – beides funktioniert.

Warum

Mehr Kontext macht Agenten schlechter. Die ETH Zürich fand heraus, dass Kontextdateien den Aufgabenerfolg SENKEN, verglichen damit, dem Agenten gar keinen Repository-Kontext zu geben, während sie die Inferenzkosten um über 20 % erhöhen. Etwa zwei Drittel der Produktionsfehler von Agenten lassen sich auf Kontextprobleme zurückführen, nicht auf ein unfähiges Modell.

Die Frage ist also nicht, wie viel Sie kürzen. Sondern ob das, was Sie behalten haben, ausreicht – und das wird hier gemessen, an einem Benchmark, den wir nicht gewählt haben: LongMemEval-S, 500 Fragen. Recall@10 von 93.8 % gegenüber einer lexikalischen Baseline von 51.9 %.

Recall@10 ist das strenge Maß: Eine Frage zählt nur, wenn ALLE Gold-Sitzungen gefunden wurden. Die Hälfte der Antwort zu finden bedeutet, dass der Agent auf halber Grundlage selbstbewusst antwortet.

Zwei der fünf Tools benötigen kein Konto. Erst messen, dann entscheiden.

Related MCP server: compresh-mcp

Installation

pip install cap-shield
{
  "mcpServers": {
    "cap-shield": {
      "command": "cap-shield-mcp",
      "env": {
        "CAP_SHIELD_API_KEY": "cap_live_..."
      }
    }
  }
}

Python 3.9+. Der env-Block wird nur für remember und assemble_context benötigt – lassen Sie ihn weg und die beiden Messwerkzeuge funktionieren trotzdem.

Auch im offiziellen MCP-Registry als io.github.robinlidberg-dot/cap-shield veröffentlicht.

Bevorzugen Sie eine einzelne Datei gegenüber einem Paket?

curl -O https://cap-shield-robin.fly.dev/cap_mcp.py

Dann lautet der Befehl python und das Argument ist der Pfad zur Datei.

Die optionale SKILL.md sagt einem Agenten, wann diese Tools verwendet werden sollen – und wann nicht.

Tools

measure_traffic · kein Konto

Messen Sie, wie viel Ihres eigenen Agenten-Traffics eingespart werden könnte. KEIN KONTO ODER SCHLÜSSEL ERFORDERLICH – verwenden Sie dies zuerst. Gibt Byte-Einsparungen über die Leitung zurück und, wenn eine Abfrage angegeben ist, Token-Einsparungen durch selektiven Kontextabruf. Es wird nichts gespeichert: Der Text wird im Speicher komprimiert und verworfen. Auf 20 Aufrufe pro Stunde und IP begrenzt.

list_packages · kein Konto

Listet die verfügbaren Wörterbücher mit ihrer GEMESSENEN Kompression auf, einschließlich derer, die schlecht abschneiden. Jeder Eintrag sagt, ob es eine Nachricht nach der anderen oder nur in Stapeln funktioniert, und wie viele Nachrichten GRÖSSER herausgekommen sind. Kein Schlüssel erforderlich.

remember · erfordert einen Schlüssel

Speichert einen Speichereintrag für den späteren Abruf. ERFORDERT EINEN SCHLÜSSEL. Dies ruft kein Sprachmodell auf – es speichert Text in einem isolierten Archiv pro Mandant. Verwenden Sie assemble_context, um relevante Einträge zurückzubekommen.

assemble_context · erfordert einen Schlüssel

Ruft die Speichereinträge ab, die eine Frage beantworten, innerhalb eines Token-Budgets. ERFORDERT EINEN SCHLÜSSEL. Senden Sie den zurückgegebenen 'context' an Ihr Sprachmodell, STATT der gesamten Historie. Dies ruft selbst kein Modell auf – es wählt aus, was gesendet wird. Das Budget ist eine Obergrenze, kein Ziel: Die Auswahl stoppt dort, wo die Relevanz endet, oft weit darunter. Die Antwort sagt, wie viele Einträge zurückgelassen wurden und warum.

get_account

Erhalten Sie ein Konto und einen API-Schlüssel. Erfordert eine E-Mail-Adresse. Der Schlüssel wird EINMAL zurückgegeben und kann nicht erneut angezeigt werden – speichern Sie ihn sofort. Beta-Kontingente sind bewusst niedrig; sie sind harte Stopps, niemals Übernutzungsabrechnung.

Die obigen Beschreibungen sind wörtlich vom Server kopiert. Falls sie jemals von dem abweichen, was tools/list zurückgibt, hat der Server recht und diese Datei ist veraltet.

Was die Zahlen bedeuten

Kompression spart Bytes über die Leitung. Auswahl spart Tokens im Kontext. Zwei verschiedene Mechanismen – sie zusammenzuzählen ergibt eine Zahl, die nichts bedeutet.

Komprimierte Pakete werden dekomprimiert, bevor ein Modell sie sieht, daher reduziert dies nicht die Inferenzkosten. Das Gegenteil zu behaupten ist der einfachste Weg, sich bei diesem Projekt zu irren.

Jede Zahl wird live veröffentlicht, einschließlich dessen, was nicht gemessen wurde und welche Pakete schlecht abschneiden:

https://cap-shield-robin.fly.dev/.well-known/cap-shield.json

Rufen Sie das ab, anstatt dieser Datei zu vertrauen. Sie wird veraltet; das Dokument nicht.

Messen ohne MCP

pip install cap-shield
from cap_shield import measure, print_measurement
print_measurement(measure(texts=[...], query="..."))

Kein Konto, nichts gespeichert. Die Antwort enthält den Anteil der Verschlechterung – wie viele Ihrer Nachrichten größer herausgekommen sind.

Batching hat eine Sicherheitsbedingung

Batching komprimiert mehrere Nachrichten im selben Kontext, was einen Seitenkanal im Stil von CRIME/BREACH eröffnet: Jemand, der ausgewählten Text im selben Stapel wie ein Geheimnis platzieren und die Stapelgröße beobachten kann, erfährt etwas über das Geheimnis.

Stapeln Sie nur Nachrichten, die bereits eine Vertrauensgrenze teilen. Optionales Padding schließt das Leck für unter zwei Bytes pro Nachricht, und es ist standardmäßig deaktiviert – wir sagen das, anstatt Sie etwas anderes annehmen zu lassen.

Einzelverpackung hat dieses Problem überhaupt nicht.

Portabilität

Wörterbuchversionen werden nie gelöscht, und die Garantie beruht nicht darauf, dass wir noch da sind: Der Archiv-Export enthält die Wörterbuch-Binärdateien, und ein eigenständiger Entpacker läuft ohne Gateway, ohne Netzwerk und ohne andere Teile des Systems.

https://cap-shield-robin.fly.dev/cap_unpack.py

Es wird ohne Token ausgeliefert, denn wer es am meisten braucht, ist der, der kein Konto mehr hat.

Status

Beta. Serverversion 0.1.0.

Dokumentation: https://cap-shield-robin.fly.dev/docs/quickstart
Konsole: https://cap-shield-console.lovable.app

Lizenz

MIT – siehe LICENSE.

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

0Releases (12mo)
Commit activity

Related MCP Connectors

Related MCP Servers

View all related MCP servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/robinlidberg-dot/cap-shield-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server