claw-tsaver
claw-tsaver
A token-saving MCP proxy for OpenClaw users. Cuts tool call payloads by 90%+ via lazy expansion.
Why
MCP tool calls often return thousands of tokens of HTML or JSON in a single response — but the model typically uses only 5% of it. The remaining 95% silently burns context window and increases cost. claw-tsaver sits between OpenClaw and your downstream MCP servers, intercepts oversized responses, and hands the model a compact preview + an on-demand handle instead.
Related MCP server: TokenSaver MCP
How
sequenceDiagram
participant U as OpenClaw (Claude)
participant C as claw-tsaver proxy
participant F as fetch / puppeteer / etc.
U->>C: call_tool("fetch", url)
C->>F: forward call
F-->>C: 11,507 tokens of HTML
Note over C: tiktoken count > threshold
C->>C: store full content in SQLite
C-->>U: {preview_head, preview_tail, expand_handle}<br/>(only 104 tokens)
Note over U: model decides if it needs full text
U->>C: expand_content(handle)
C-->>U: full 11,507 tokensReal measurement
Test | Original tokens | Returned tokens | Saved |
fetch Wikipedia "Tokenization (data security)" | 11,507 | 104 | 99.1% |
Tested on OpenClaw + Claude Sonnet 4.6 + mcp-server-fetch, 2026-04-25.
Raw data: benchmarks/mvp-day1-fetch.jsonl.
Quick Start
1. Prerequisites
Install uv (one-time setup):
curl -LsSf https://astral.sh/uv/install.sh | shNo claw-tsaver install needed — uvx will fetch and run it on demand.
2. Configure downstream MCP servers
Edit ~/.claw-tsaver/config.json (first run of claw-tsaver-mcp will auto-create a template):
{
"downstream_servers": [
{"name": "fetch", "command": "uvx", "args": ["mcp-server-fetch"]}
],
"compression_threshold_tokens": 500
}3. Register with OpenClaw
Add this block at the top level of ~/.openclaw/openclaw.json:
"mcp": {
"servers": {
"claw-tsaver": {
"command": "uvx",
"args": ["--from", "git+https://github.com/Yang1Bai/claw-tsaver",
"claw-tsaver-mcp"]
}
}
}Then restart OpenClaw gateway: openclaw gateway restart
Dashboard
Optional: a local web UI for real-time token savings stats.
uvx --from git+https://github.com/Yang1Bai/claw-tsaver claw-tsaver-dashboardOpen http://localhost:7878 in your browser.
Roadmap
Module A: lazy expansion proxy (this release)
Module D: local dashboard (this release)
Module B: tool routing (auto-load only relevant MCPs per turn)
Module C: conversation history compression (atomic fact cards)
License
MIT — see LICENSE file.
Contributing
Issues and PRs welcome.
🇨🇳 中文说明
什么是 claw-tsaver?
claw-tsaver 是一个为 OpenClaw 用户设计的 MCP 代理,通过懒加载扩展机制将工具调用的 token 消耗削减 90%+。
问题背景
MCP 工具调用(如 fetch、puppeteer)经常在单次响应中返回数千个 token 的 HTML 或 JSON,但模型通常只使用其中约 5% 的内容。剩余 95% 悄悄消耗上下文窗口并增加费用。
解决方案
claw-tsaver 作为 OpenClaw 与下游 MCP 服务器之间的代理:
拦截过大的响应(超过可配置的 token 阈值)
将完整内容存储到本地 SQLite 数据库
返回给模型一个紧凑预览 + 按需扩展句柄
模型需要更多内容时,调用
expand_content工具按需获取
快速安装
npm install -g claw-tsaver
# 在 OpenClaw 配置中添加为 MCP 服务器开源协议
MIT License
Available Tools
1 toolexpand_contentA
Retrieve the full content of a previously compressed tool result. Pass the expand_handle returned in the compressed envelope.
Inputs: handle (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 1 tool
Only one tool exists, so there is no potential for confusion between different tools.
With a single tool, there is no naming inconsistency to evaluate; the name 'expand_content' is clear and descriptive.
A single tool for expanding compressed results is very thin; the server likely needs additional tools (e.g., for listing handles) to be useful as an MCP server.
The tool covers its stated purpose of retrieving full content, but the server lacks any supporting tools for compression or handle management, leaving a minor gap in the overall surface.
Maintenance
Related MCP Connectors
An MCP memory server. One memory your agents share — across models, devices and apps.
MCP server for building and testing AI agents with multi-model experimentation and insights.
One MCP server for the services your AI needs: memory, files, Microsoft 365, kanban and more.
Persistent memory for AI agents to retain, retrieve, and recall conversation context through MCP.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that helps AI agents reduce token usage by converting data to TOON format and stripping comments and unnecessary whitespace from code files.29 PyPIMIT
- AlicenseAqualityDmaintenanceAn MCP server that reduces AI API costs by up to 97% through token measurement, compression, caching, and pruning, all without changing prompts.101Apache 2.0
- AlicenseAqualityCmaintenanceAn MCP server that intelligently filters and compresses tool outputs to reduce context window usage, saving up to 90% of tokens by removing noise such as passing tests and redundant information.532 npmMIT
- AlicenseNot gradedqualityCmaintenanceMCP server that reduces AI agent token usage by up to 90% through intelligent context compression. Enables efficient code exploration, multi-file refactoring, and debugging by providing tools for smart reading, searching, and managing code context.4MIT