Drop-in MCP proxy. 71% fewer tokens. Session dedup compounds to 92%. Zero code changes.
Drop-in MCP proxy that translates between JSON and GCF (Graph Compact Format). It is designed to reduce token usage by reporting “71% fewer tokens,” with session dedup compounding to “92%.” The server supports standard MCP transport over stdio and includes structured data serialization and streaming.
🛠️ Key Features
Bidirectional MCP proxy
JSON ↔ GCF translation (Graph Compact Format)
Token optimization: 71% fewer tokens; session dedup to 92%
Drop-in with “zero changes” to server or client
JSON-alternative via GCF; structured-data serialization
json-rpc compatibility and streaming support
stdio-based operation
🚀 Use Cases
Use MCP tooling with fewer tokens
Replace JSON wire format with a compact graph format
Run existing MCP servers/clients without code changes
Improve context transfer efficiency for AI agents
⚡ Developer Benefits
Reduced payload size for MCP traffic
Potentially fewer tokens through session dedup
Easier integration via drop-in behavior
⚠️ Limitations
Source data does not specify performance tradeoffs, platform support, or configuration details.
Bidirectional MCP proxy that translates between JSON and GCF. Drop-in, zero changes to your server or client. Works with any structured data format.
100% comprehension on every frontier model. 29% fewer tokens than TOON, 56% fewer than JSON (2,400+ evals, 11 models, 3 providers). Nested object flattening with opt-out for open-weight models. One line change in your MCP config.
Install
bash
pip install gcf-proxy # PyPI
npm install -g @blackwell-systems/gcf-proxy # npm
go install github.com/blackwell-systems/gcf-proxy@latest # Go
Try it (30 seconds, no auth)
bash
gcf-proxy --verbose uvx yfinance-mcp
Use it with any MCP client. When tools return structured JSON, the proxy re-encodes to GCF and logs savings to stderr:
Detection is a 4-byte prefix check (GCF ). Zero overhead. Non-GCF strings pass through untouched.
How it works
Spawns your MCP server as a subprocess
Proxies stdin/stdout between client and server
Responses: intercepts JSON-RPC responses, re-encodes structured JSON as GCF
Requests: scans tool call arguments for GCF strings, decodes to JSON
Passes everything else through unchanged in both directions
Why not modify the server?
Sometimes you can't. The server is a third-party binary, or it's maintained by another team, or you just don't want to add a dependency. gcf-proxy gives you the token savings without touching server code.
If you control the server, use the GCF libraries directly for better control over session deduplication and delta encoding.
Benchmarks
100% general comprehension on every frontier model. 91.2% on adversarial code graphs (vs TOON 68.8%, JSON 54.1%). Wins 15/16 datasets on token benchmark.
Eval
GCF
TOON
JSON
General comprehension
100%
100%
100%
Adversarial code graphs (500 symbols)
91.2%
68.8%
54.1%
Token efficiency (16 datasets)
15/16 wins
1/16
baseline
Reproduce comprehension eval: git clone https://github.com/blackwell-systems/gcf-go && cd gcf-go/eval && GOWORK=off go test -run TestComprehension -v -timeout 0