Back to Directory/File Systems

TokenSaver

Structural warm start for AI coding agents in .NET: cheap Roslyn signature maps of C#/.NET files.

File SystemsC#v1.15.5

TokenSaver

A structural warm start for AI coding agents in .NET. Instead of loading whole files into your assistant, TokenSaver hands it a cheap map of your code — every type and member as a signature, each tagged with its line range — so the model reads only the slice it needs instead of slurping the file. Built on the Roslyn compiler platform.

Where it pays off: outlining a file costs 70–95% fewer tokens than reading it — up to 90% on a large file. The end-to-end win is biggest on smaller / cheaper models (which over-read the most) and on large codebases: on real tasks it trims a Haiku-class model's token use by ~8%, and the savings climb with file size. A top-tier model already reads tightly, so it sees less benefit — the leaner the model, the more a warm start helps.

Works with Visual Studio 2026 (GitHub Copilot Chat), Claude Code, VS Code Copilot, Claude Desktop, and any other MCP client that speaks stdio.

→ Full docs and setup guide: mcp/README.md
→ Changelog: CHANGELOG.md


Install

See tokensavermcp.com/install for one-click install buttons, per-client config snippets, upgrade/uninstall instructions, and troubleshooting.


What the tools do

Single-file tools

ToolWhat it doesReduction
OutlineCSharpFileSignatures of every type and member — no bodies. Best for "what's in this file?"70–95%
MinifyFileLossless minify of an entire file — strips comments and whitespace, logic unchanged. Auto-dispatches by extension (C#, Razor, JS/TS, Python, HTML, CSS, JSON, YAML, XML, C, C++, X++, VB.NET).20–50%

* Reductions are measured against reading the whole file — the real alternative when you'd otherwise load it. The end-to-end saving on a task is smaller, because a capable model already reads somewhat selectively; it is largest on smaller/cheaper models and large files (see Token savings in practice below).

Cross-file traversal tools

These scan an entire project directory in one call — no need to know which file to look in first.

ToolWhat it does
TraceDiRegistrationsFinds every Dependency-Injection registration referencing a type (interface or concrete) and returns a compact table of file:line, method, ServiceType -> ImplType, and key. Answers "where is IFoo wired, and to what?"

Both accept a directory path or .csproj file — obj/ and bin/ are excluded automatically.


Token savings in practice

Measured against this project's own FocusedEmitter.cs (9,261 tokens raw):

Question typeToolTokens sentReduction
"What's in this file?"OutlineCSharpFile1,03989%
"Read one method body"OutlineCSharpFile + narrow Read of the // L.. range~300~95%
"Audit the whole file"MinifyFile5,52540%

Those are per-read figures versus loading the whole file. The end-to-end saving on a real task is smaller, because a capable model already reads somewhat selectively — and that's the honest part of the story:

Model running the agentReal-task token saving vs no tool
Top-tier (reads tightly already)~1% — negligible
Mid-tier (Sonnet-class)~5–7%
Smaller / cheaper (Haiku-class)~8%

The leaner the model, the more it over-reads on its own — and the more a warm start saves. TokenSaver is most worth it for agents running on small/cheap models, large files, or any workflow that would otherwise read whole files. It won't make a top model meaningfully cheaper, and it won't make a model write better code — it curbs wasteful reading, which is where cheap-model token budgets actually leak.


Collective impact

Every invocation is counted at tokensavermcp.com — a live dashboard showing total tokens saved by the community. Fewer tokens processed means less GPU compute and a smaller carbon footprint for AI-assisted development.


Language support

TierLanguages
Primary (Roslyn, full support)C# .cs, Razor .razor, VB.NET .vb, .NET project files .csproj .props .config .xml
Basic (comment-strip + whitespace collapse)JavaScript, TypeScript, Python, HTML, CSS/SCSS/LESS, JSON/JSONC, YAML, C, C++, X++

OutlineCSharpFile and TraceDiRegistrations are C# only; MinifyFile works across every supported language.

Setup from the maintainer

This listing does not have a supported local package template. Use the maintainer’s documentation for its hosted endpoint, authentication, and client-specific setup. No install command has been inferred.

Package

TokenSaver.Mcpother

Compatible MCP Clients

TokenSaver works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More