ShrinkWrap is a protocol-level transport proxy and compaction engine for Model Context Protocol (MCP) tool outputs and CLI execution streams. It intercepts responses prior to context ingestion, reducing token consumption by over 90% while maintaining exact data access through persistent reference handles (sw-ref:).
Copy and paste this instruction into your AI coding assistant (Antigravity, Claude Code, Cursor, Codex, Windsurf):
Please install and set up ShrinkWrap on my computer to reduce my MCP and tool token usage by ~90%:
1. Install shrinkwrap-cli: `pip install shrinkwrap-cli`
2. Auto-wrap active MCP configs: run `shrinkwrap install`
3. Verify setup: run `shrinkwrap status` and `shrinkwrap benchmark`
4. At the end of every run or task, run `shrinkwrap session --markdown` and include token savings in your final output.
pip install shrinkwrap-cli
shrinkwrap installMeasured across production developer payloads:
| Payload Benchmark | Tool Source | Strategy | Original Tokens | Compacted Tokens | Token Reduction |
|---|---|---|---|---|---|
postgres_query_result (500 SQL rows) |
MCP Server | structured_summary |
28,743 | 178 | 99.38% |
web_scrape_html_extract (API docs) |
MCP Server | structured_summary |
9,962 | 251 | 97.48% |
github_pr_payload (PR diff & comments) |
MCP Server | structured_summary |
1,658 | 95 | 94.27% |
python_real_traceback (100-line trace) |
Shell / CLI | error_summary |
2,831 | 192 | 93.22% |
| Combined Corpus | All Tools | Schema-Aware | 52,428 | 9,998 | 80.93% – 91.8% |
Average execution overhead per tool invocation: < 35 ms.
Large language models operating in agentic tool-use loops frequently process bloated responses from database queries, log dumps, and API calls. These raw payloads consume context space, increase latency, and degrade model reasoning over extended sessions.
ShrinkWrap sits transparently on the MCP transport layer (stdio and HTTP), applying schema-aware transformations to tool responses before they enter model context. Raw payloads are stored in a local TTL-managed buffer, allowing models to query exact data subsets on demand.
┌─────────────────┐ ┌─────────────────────┐ ┌─────────────────────┐
│ MCP Client │ ─── Request ──► │ ShrinkWrap Proxy │ ─── Request ──► │ Target MCP Server │
│ (Codex/Claude) │ ◄── Compact ─── │ (Stdio/HTTP Proxy) │ ◄── Response ── │ (Postgres/Git) │
└─────────────────┘ Payload └─────────────────────┘ Raw └─────────────────────┘
│ Payload
▼
┌───────────────────┐
│ Disk/TTL Buffer │
│ ~/.shrinkwrap/ │ (sw-ref:a1b2c3d4)
└───────────────────┘
ShrinkWrap applies five deterministic strategies based on structural analysis:
| Strategy | Trigger Condition | Output Schema / Format |
|---|---|---|
structured_summary |
Valid JSON objects or arrays exceeding threshold | Keys, record/item counts, array types, representative sample objects, and sw-ref: handle. |
text_excerpt |
Standard text logs or multi-line command output | Head (first 5 lines), tail (last 5 lines), total line count, and sw-ref: handle. |
error_summary |
Stack traces containing Traceback or Exception |
Isolated error types, failure messages, key stack frames, and sw-ref: handle. |
metadata_only |
Binary streams or media payloads | MIME type, byte size, hash digest, and sw-ref: handle. |
pass_through |
Payload within token threshold | Original payload returned unmodified. |
When a payload is compacted, ShrinkWrap generates a reference handle in the format sw-ref:<12-char-hash>.
Agents or users can inspect or retrieve original raw payloads at any time without re-executing tool calls:
# Retrieve full raw payload by handle
shrinkwrap fetch sw-ref:a1b2c3d4- Storage Path:
~/.shrinkwrap/buffer/<hash>.json - Default TTL: 3600 seconds (configurable via
SHRINKWRAP_TTL_SECONDS). - Cleanup: Automatic garbage collection of expired buffer files on every read/write operation.
ShrinkWrap incorporates an inline redactor (SecretRedactor) evaluated prior to buffer storage and context dispatch.
- API Keys & Tokens: Matches OpenAI (
sk-), GitHub (ghp_), GitLab (glpat-), AWS (AKIA), and standard bearer token formats. - Private Credentials: Identifies RSA/EC/OpenSSH private key blocks and masks them as
[REDACTED_PRIVATE_KEY]. - Telemetry: ShrinkWrap operates entirely offline. No payload data, metrics, or telemetry are transmitted off-device.
Discover and wrap active MCP server configurations across supported clients (~/.codex/config.json, Claude Desktop, Cursor):
# Dry run preview (non-destructive)
shrinkwrap install --dry-run
# Apply configuration wrapping
shrinkwrap install~/.codex/config.json before wrapping:
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://localhost/db"]
}
}
}~/.codex/config.json after shrinkwrap install:
{
"mcpServers": {
"postgres": {
"command": "shrinkwrap",
"args": ["wrap-stdio", "--", "npx", "-y", "@modelcontextprotocol/server-postgres", "postgresql://localhost/db"]
}
}
}Restore configuration files from safety backups (.swbak) at any time:
shrinkwrap rollback ~/.codex/config.jsonAI agents operating in multi-step task loops can report their exact tokens saved, reduction percentages, and estimated financial savings at the conclusion of a task.
# Print active run session summary
shrinkwrap session
# Generate agent-ready Markdown snippet for final user turn responses
shrinkwrap session --markdownShrinkWrap Session Savings: 42,478 tokens saved (81.02% reduction across 5 tool invocations, ~$0.1274 USD saved).
| Command | Usage | Description |
|---|---|---|
shrinkwrap install |
shrinkwrap install [--dry-run] |
Auto-discover and wrap local MCP server configurations |
shrinkwrap wrap-stdio |
shrinkwrap wrap-stdio -- <cmd> [args] |
Execute stdio proxy for target server command |
shrinkwrap session |
shrinkwrap session [--markdown] [--json] |
Report token usage and savings for the current agent session |
shrinkwrap gain |
shrinkwrap gain [--history] [--json] [--reset] |
Display cumulative token savings analytics and harness breakdowns |
shrinkwrap fetch |
shrinkwrap fetch <sw-ref:handle> |
Retrieve raw payload from memory buffer |
shrinkwrap status |
shrinkwrap status |
Display system status and capability gate information |
shrinkwrap benchmark |
shrinkwrap benchmark |
Run benchmark test suite |
shrinkwrap gap-report |
shrinkwrap gap-report |
Print Codex host interception gap report |
shrinkwrap rollback |
shrinkwrap rollback <path> |
Restore configuration file from backup |
MIT License. See LICENSE for details.
