Skip to main content

cap-shield

Context selection for AI agents. Measured, not estimated.

pip install cap-shield
from cap_shield import CapShield

cap = CapShield(api_key="cap_live_...")

cap.remember("support", "Customer reports a delayed parcel, order 4471")
ctx = cap.context("support", "what did the customer complain about?")

print(ctx.text)              # send this to your model
print(ctx.saving_pct, "%")   # how much you did not send
print(ctx.left_behind)       # ...and how many entries were left behind

What this does

Your agent's history grows every turn, and the whole thing is billed on every call. This selects what answers the question and leaves the rest.

Measured on our corpus with cl100k_base: 80.5 % of context not sent at a 1000-token budget. Measured on LongMemEval-S, 500 questions: 93.8 % retrieval recall against 51.9 % for word matching.

That second number is the one that matters. A saving is worthless if what was dropped is what your agent needed — so we publish both.

What this does not do

It does not call your model. ctx.text goes to Claude, GPT or whatever you use. This library never sees your model provider's keys.

It is not a proxy. Your uptime does not depend on ours for the model call itself.

Measure before you commit

No account, no key:

from cap_shield import measure, print_measurement

print_measurement(measure(
    texts=["...your actual messages..."],
    query="what your agent would search for"))

Runs on your own traffic and stores nothing — the text is compressed in memory, the numbers computed, and everything discarded. No dictionary is trained on it.

Rate limited to 20 measurements per hour per IP. Enough to evaluate, not enough to use the service for free.

Two mechanisms, deliberately separate

context() saves tokens — what your model is billed for. pack() saves bytes — bandwidth and storage. The packet is decompressed before the model sees it, so it saves no tokens.

Conflating them is the most common misunderstanding about this product.

Full documentation

https://cap-shield-robin.fly.dev/docs/quickstart

MCP server

The package also contains an MCP server. Five tools, no extra dependencies, and two of them work without an account.

pip install cap-shield
{
  "mcpServers": {
    "cap-shield": {
      "command": "python",
      "args": ["-m", "cap_mcp"],
      "env": {
        "CAP_SHIELD_API_KEY": "cap_live_..."
      }
    }
  }
}

The env block is only needed for remember and assemble_context. Leave it out and measure_traffic and list_packages still work.

Source and docs: https://github.com/robinlidberg-dot/cap-shield-mcp

The server can also be fetched as a single file, for anyone who would rather not install a package:

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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cap_shield-0.4.1.tar.gz (18.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cap_shield-0.4.1-py3-none-any.whl (19.7 kB view details)

Uploaded Python 3

File details

Details for the file cap_shield-0.4.1.tar.gz.

File metadata

  • Download URL: cap_shield-0.4.1.tar.gz
  • Upload date:
  • Size: 18.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.6

File hashes

Hashes for cap_shield-0.4.1.tar.gz
Algorithm Hash digest
SHA256 f28238a8efd1ac0b31bec20bd527bb9ed23480e00969393a492eb8e204b8942a
MD5 fb161c17f9c1e7e3035da9d3a568475d
BLAKE2b-256 b4c4bc4604555c02024b28b7cfea23f99d12e2ca1a7a723c120fd29c5cf5218f

See more details on using hashes here.

File details

Details for the file cap_shield-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: cap_shield-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 19.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.6

File hashes

Hashes for cap_shield-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cdd06dfbafd8903739b9de1bf35da7a5c05ac56d2e8c8064096d833486b3eab1
MD5 4a5135c651d66a95fe8dd226362ace08
BLAKE2b-256 ac3f0fda921ed6e0ae9d740e9316e83594de3597cbc5c047bdc174476a9abf3d

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.4.1 This release

2 files

0.4.0

2 files

0.3.0

2 files

0.2.0

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page