/* engineering · 2026-05-11 · context economics */

Anthropic's Tool Search Fixed the Manifest. It Didn't Fix the Grep Cascade.

2026-05-11 ~7 min read Companion: SVERKLO_PROFILE measured

Tool Search shipped GA in January 2026 and is now default-on in Claude Code. Anthropic reports it cuts MCP manifest tokens by ~85%. A predictable question follows: does sverklo's "stop Claude Code from burning tokens on grep" pitch still hold? Short answer: yes, because they're not the same bill. Tool Search shrinks the manifest. Sverklo replaces the grep loop. The 312-session field study we ran in May measured grep at 41% of total input-token spend — Tool Search doesn't touch that number. Long answer below.

Two different bills

Every Claude Code session that uses MCP pays tokens in at least two places:

BillWhat's in itTypical cost (full sverklo)
ManifestThe tools/list response — every MCP tool's name, description, JSON schema, fed into the system prompt on session start~8,016 tokens for 36 tools
RetrievalTool-call results streamed back into context — grep output, file contents, search hits~14,200 tokens per "find a function" task (312-session study)

Tool Search optimizes the manifest bill. It moves the tool catalog server-side and pages in definitions on demand. ~85% reduction on the manifest, per Anthropic's published numbers. Default-on in Claude Code as of Feb 2026.

Sverklo optimizes the retrieval bill. The agent calls sverklo_search or sverklo_lookup against a pre-built symbol graph instead of running grep. One structured tool call replaces 7-12 grep cascades. The retrieval payload drops from ~14,200 tokens to ~500.

These are different lines on the receipt. Optimizing one doesn't optimize the other.

The 312-session study

Earlier this month we instrumented 312 Claude Code sessions on real engineering tasks — the same harness the bench uses, but with token-attribution turned on. Full writeup here. The breakdown by category of input-token spend:

Tool Search default-on dropped manifest from 6% to ~1% on Claude Code sessions — real, measurable, exactly what Anthropic claimed. Grep cascades stayed at 41%. The bottom-line input-token spend dropped ~5% on a typical session from Tool Search alone. That's a real win and it stacks cleanly with sverklo's retrieval-side wins.

SVERKLO_PROFILE vs Tool Search

Worth being precise about manifest reduction because both systems do it, but at different layers:

SystemLayerMechanismHosts
SVERKLO_PROFILEServer-sidesverklo advertises fewer tools in tools/listEvery MCP host
Tool SearchHost-sideClaude Code lazy-loads tool definitions from full server catalogClaude Code only (today)

Three things this matters for:

Most agents aren't Claude Code. Cursor (the largest installed base), Windsurf, Zed, JetBrains Junie, Antigravity — none have Tool Search yet. For users on those hosts, SVERKLO_PROFILE=core is the only manifest fix available. Sverklo defaults to that profile as of v0.20.9, so the win lands without configuration.

Cold-start cost. Tool Search's first request for a sverklo tool requires a round trip to page in the definition. On a session that starts with "find auth code", that's one extra round-trip latency before the agent actually retrieves. SVERKLO_PROFILE eliminates that by advertising only the tools likely to be used.

Defense in depth. Even on Claude Code with Tool Search, two reductions stack. Sverklo advertises 6 tools (not 36); Tool Search then lazy-loads from those 6. The combined manifest cost is lower than either system alone.

The verification problem (and how doctor solves it)

One real difficulty with both systems: how do you know they're working? Tool Search is transparent to user code. SVERKLO_PROFILE applies at tools/list time and isn't visible in any standard MCP tooling. A user could install sverklo, expect core profile, and have no way to confirm the host actually sees 6 tools and not 36.

That's the gap sverklo doctor fills. As of v0.20.15, the doctor probe sends the same three calls Claude Code makes on every fresh session — initializetools/listtools/call sverklo_status — and reports the tool count it actually receives:

$ sverklo doctor
sverklo doctor — checking MCP setup
  ✓ .mcp.json (project root)     sverklo configured (profile: core)
  ✓ MCP handshake                responds correctly (protocol 2024-11-05)
  ✓ MCP tools/list               6 tools advertised (sverklo_status present)
  ✓ MCP tools/call               sverklo_status returned 1021 chars — dispatch round-trip works

All checks passed — MCP dispatch verified end-to-end.

If you see "6 tools advertised" the SVERKLO_PROFILE is in effect. If you see "36 tools advertised" with profile=core in .mcp.json, something's wrong — and doctor will say so. (v0.20.15 fixes a real bug where doctor's own probe ignored the .mcp.json env block — the headline v0.20.9 fix used to be silently undone in the headline diagnostic.)

What if Anthropic ships native code intel?

This is the right next question. Tool Search is one of several Anthropic patterns absorbing what used to be MCP-server territory — Code Execution with MCP (write Python to call tools), Skills (declarative behavior bundles), Tool Search (lazy manifest). The honest answer is: if Anthropic ships a built-in symbol graph for Claude Code, sverklo's wedge gets narrower for Claude Code specifically.

Three reasons we still think this works:

Bottom line

Tool Search is a real ship. Anthropic's 85% manifest reduction number lines up with our measurements. If you're on Claude Code, you should let it run — sverklo's manifest gets lazy-loaded automatically and you save ~5% of input tokens session-over-session for free.

But Tool Search and sverklo are not competitors. The retrieval cascade — grep loops, file reads, low-signal context dumps — is a separate bill, ~41% of input-token spend, and it's still the largest single cost line in a Claude Code session. Sverklo's wedge is on that bill. The numbers hold.

Try the stack

npm i -g sverklo@latest
cd your-project && sverklo init    # writes SVERKLO_PROFILE=core
sverklo doctor                       # verifies dispatch end-to-end
# Then restart your AI agent — sverklo + Tool Search compose automatically on Claude Code

github.com/sverklo/sverklo · Public 90-task bench · Security posture

Related