TokenSaver
Structural warm start for AI coding agents in .NET: cheap Roslyn signature maps of C#/.NET files.
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
TokenSaver.Mcpclaude mcp add tokensaver -e 'TOKENSAVER_API_URL=<TOKENSAVER_API_URL>' -e 'TOKENSAVER_NO_TELEMETRY=<TOKENSAVER_NO_TELEMETRY>' -- dnx TokenSaver.Mcp@1.15.5 --yes
{
"mcpServers": {
"tokensaver": {
"command": "dnx",
"args": [
"TokenSaver.Mcp@1.15.5",
"--yes"
],
"env": {
"TOKENSAVER_API_URL": "<TOKENSAVER_API_URL>",
"TOKENSAVER_NO_TELEMETRY": "<TOKENSAVER_NO_TELEMETRY>"
}
}
}
}
Variables d'environnement
TOKENSAVER_API_URLURL of the TokenSaver reporting dashboard. Defaults to https://tokensavermcp.com.TOKENSAVER_NO_TELEMETRYSet to 1 to opt out of anonymous usage telemetry.
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
Sommaire
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
| Tool | What it does | Reduction |
|---|---|---|
OutlineCSharpFile | Signatures of every type and member — no bodies. Best for "what's in this file?" | 70–95% |
MinifyFile | Lossless 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.
| Tool | What it does |
|---|---|
TraceDiRegistrations | Finds 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 type | Tool | Tokens sent | Reduction |
|---|---|---|---|
| "What's in this file?" | OutlineCSharpFile | 1,039 | 89% |
| "Read one method body" | OutlineCSharpFile + narrow Read of the // L.. range | ~300 | ~95% |
| "Audit the whole file" | MinifyFile | 5,525 | 40% |
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 agent | Real-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
| Tier | Languages |
|---|---|
| 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.
Questions fréquentes
Qu'est-ce que TokenSaver ?
Structural warm start for AI coding agents in .NET: cheap Roslyn signature maps of C#/.NET files.
Comment installer TokenSaver ?
Il s'exécute sur votre machine. Dans Claude Code : claude mcp add tokensaver -e 'TOKENSAVER_API_URL=<TOKENSAVER_API_URL>' -e 'TOKENSAVER_NO_TELEMETRY=<TOKENSAVER_NO_TELEMETRY>' -- dnx TokenSaver.Mcp@1.15.5 --yes. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour TokenSaver ?
Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.
TokenSaver est-il open source ?
Oui. Son code est sur GitHub sous licence MIT.
Qui maintient TokenSaver ?
Il est publié par Byggarepop. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.