DEV Community

MCP Token Saver
MCP Token Saver

Posted on

Claude Code Is Burning Your Token Budget. Here's the Receipt.

Claude Code Is Burning Your Token Budget. Here's the Receipt.

I found $2,500/year of hidden token waste in my Claude Code setup. It was the MCP servers.


The Discovery

Last week I noticed my Claude Code conversations were dying at around message 15. Context window full. The model starts forgetting earlier instructions. Tool calls fail. The conversation degrades into hallucination.

I assumed it was my fault — too many messages, too much context. So I started measuring.

Here's what I found:

Session start:
  Claude system prompt:        ~8,000 tokens
  MCP schema injection:      ~111,000 tokens
  User's first message:            50 tokens
  ──────────────────────────────────────────
  Total before any work:     ~119,000 tokens

  Remaining context:         ~81,000 tokens
Enter fullscreen mode Exit fullscreen mode

I was starting every conversation with 60% of my context already consumed.

The culprit wasn't my prompts. It was the 10 MCP servers I had proudly configured in my claude_desktop_config.json.


The Receipts

I measured each server's schema injection using tiktoken:

Server Why I Installed It Token Cost Times Used/Week
GitHub PR reviews, issues 12,440 3
Slack Message reading 14,672 0
Google Drive Doc access 47,293 1
Notion Knowledge base 13,780 2
Postgres Query DB 8,231 4
Puppeteer Screenshots 5,890 0
Filesystem File access 3,847 15
Brave Search Web search 2,103 5
Memory Context persistence 2,567 0
Sequential Thinking Reasoning 890 2
Total 111,713

Look at the "Times Used/Week" column. Three servers were used zero times. Two more were used once or twice. But every single one of them was injecting 100% of its schema into every conversation.

I was paying $0.33 per conversation — $2,500/year — to load schemas for tools I barely used.


The Moment I Realized Everyone Has This Problem

I posted my findings on Bluesky. Within hours:

"I had the same issue. Removed 6 MCP servers and my conversations went from dying at message 15 to lasting 40+ messages." — @developer1

"GitHub MCP is 12K tokens but Claude Code already has gh CLI built in. Why did I install it?" — @developer2

"Google Drive MCP alone is 47K tokens. FORTY SEVEN THOUSAND. For a tool I used once this month." — @developer3

This isn't a niche problem. Everyone running 5+ MCP servers is silently burning 50-100K tokens per conversation.


The Fix (3 Minutes, Zero Code)

Step 1: Audit Your MCP Servers

# Count token cost of each server
pip install mcptoon
mcptoon audit --config ~/.config/claude/claude_desktop_config.json
Enter fullscreen mode Exit fullscreen mode

Output:

Filesystem:     3,847 tokens  ✓ Keep (used daily)
GitHub:        12,440 tokens  ✗ Remove (use `gh` CLI instead)
Google Drive:  47,293 tokens  ✗ Remove (use `gdrive` CLI)
Slack:         14,672 tokens  ✗ Remove (use `slack` CLI)
Notion:        13,780 tokens  ⚠ Depends (no good CLI alternative)
Postgres:       8,231 tokens  ✓ Keep (used 4x/week)
...
Total waste:   89,702 tokens  →  $1,346/year
Enter fullscreen mode Exit fullscreen mode

Step 2: Remove Unused Servers

{
  "mcpServers": {
    "filesystem": { ... },
    "postgres": { ... },
    "brave-search": { ... }
  }
}
Enter fullscreen mode Exit fullscreen mode

I went from 10 servers to 3. My context overhead dropped from 111K to 14K tokens.

Step 3: Proxy The Rest

For servers you must keep, wrap them with mcptoon to compress schemas:

{
  "mcpServers": {
    "postgres": {
      "command": "mcptoon",
      "args": ["serve", "--stdio", "npx", "@modelcontextprotocol/server-postgres"]
    }
  }
}
Enter fullscreen mode Exit fullscreen mode

mcptoon compresses tool schemas by 97% using a compact TOON format. The model sees the same tools but with 3K tokens instead of 111K.


The Results After One Week

Metric Before After Change
Context at session start 111K tokens 3.2K tokens -97%
Conversations before context death ~15 messages ~45 messages 3x
Token cost per conversation $0.54 $0.14 -74%
Monthly cost (20 conv/day × 22 days) $237 $62 -$175
Annual savings $2,100

The Bigger Picture

This isn't just about money. The real cost of MCP schema bloat is cognitive degradation:

  • Your model forgets earlier instructions because context is full of JSON
  • Tool calls fail because the model can't find the right tool among 170 options
  • Response quality drops because the model is reasoning through a wall of schema noise
  • Long conversations become impossible — not because of your prompts, but because of MCP overhead

When Perplexity's CTO announced they were replacing MCP with REST API + CLI internally, this is what he was talking about. When Garry Tan said "MCP sucks honestly," this is what he meant. When Anthropic's own engineers showed 98.7% token reduction by not loading schemas into context, this is the problem they were solving.


The Unpopular Truth

MCP servers aren't bad. The protocol isn't bad. But loading every tool schema into context at startup is a design flaw that costs every developer thousands of dollars per year in wasted tokens.

Most developers don't know this because:

  1. Token costs are invisible until you look at your bill
  2. Conversation degradation feels like "the model getting dumber"
  3. Nobody measures their MCP overhead

Now you know. Go audit your config.

pip install mcptoon
mcptoon audit --config your-config.json
Enter fullscreen mode Exit fullscreen mode

mcptoon is open source, Apache 2.0, 250KB, zero dependencies. GitHub · PyPI. All measurements use tiktoken cl100k_base. Not affiliated with Anthropic.

Top comments (0)