Token Dashboard
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Token Dashboardshow me which MCP servers are eating the most tokens per request"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Claude Token Dashboard
An MCP server for Claude Code that shows every MCP server, skill, command, agent and plugin on your machine, estimates how many tokens each one adds to every request, and lets you switch them off per project or for all projects. A live tracker reads your Claude Code sessions as they happen and counts the tokens your switched-off items no longer send.
No dependencies. Needs Node.js 20 or newer.
Add it to Claude Code
Every project (recommended)
Add it once at user scope and it loads in every project you open:
# macOS / Linux
claude mcp add --scope user token-dashboard -- npx -y github:Yiamin24/claude-token-dashboard
# Windows
claude mcp add --scope user token-dashboard -- cmd /c npx -y github:Yiamin24/claude-token-dashboardFrom a local copy
git clone https://github.com/Yiamin24/claude-token-dashboard.git
claude mcp add --scope user token-dashboard -- node /full/path/to/claude-token-dashboard/server.jsOne project only
Run this inside the project, or leave out --scope user from either command above:
claude mcp add token-dashboard -- npx -y github:Yiamin24/claude-token-dashboardWhen a Claude Code session starts, the server also starts the dashboard at http://127.0.0.1:7377/ for the project you're in. Open it yourself, or ask Claude to "open the token dashboard".
To remove it: claude mcp remove --scope user token-dashboard
To run only the dashboard, without Claude Code:
npm start # node server.js --standaloneRelated MCP server: work-tracker
Works across your AI tools
It also reads the MCP servers and skills of other AI coding tools on the same machine. That covers both global and project-level config, so you can see everything that loads, wherever it's set up. When the same server or skill is set up in several tools, it shows as one card with a switch per tool.
Tool | MCP servers read from | Skills read from | Switch on/off from the dashboard |
Claude Code |
|
| MCP, skills, plugins |
Codex |
|
| MCP ( |
Gemini CLI |
|
| MCP ( |
Antigravity |
|
| Plugins ( |
Kiro |
|
| MCP ( |
OpenCode |
|
| MCP ( |
Windsurf |
|
| MCP ( |
Devin |
| read-only | |
Cline / Roo Code / Kilo Code | editor | MCP ( | |
Copilot CLI |
|
| read-only |
VS Code (Copilot) | user | read-only | |
Cursor |
|
| read-only |
Zed, Claude Desktop |
| read-only | |
Shared |
| read-only |
"Read-only" means the tool keeps its on/off state inside the app instead of in a file, so the dashboard shows the item and its cost but you switch it in that tool. Skills of other tools are read-only too, because those tools have no per-skill setting. Every file the dashboard writes is backed up first, and only the one setting is changed.
Projects: the project list comes from every tool, not just Claude Code: Claude Code's project list and session history, Codex's trusted projects, Antigravity's projects, and the workspace history of VS Code, Kiro, Cursor and Windsurf. It also includes folders under Desktop and Documents that have their own AI-tool setup. Projects with their own MCP servers or skills are listed on the overview; click one to see what it adds.
Measuring a server once covers every tool that runs the same server. Antigravity caches each connected server's tool list on disk, and the dashboard reads that cache, so those servers are measured without being started.
From Claude: context_report takes agent (codex, gemini, … or all). context_toggle takes agent too, and agent: "all" switches the same server in every tool that allows it.
What it does
Area | Details |
Detects | MCP servers from |
New items | Watches those folders and config files. Anything that appears after the first scan gets a NEW badge, a banner and a count on its tab, until you click "Mark as seen". |
Token cost | Skills: the listing line Claude sees (name plus description, capped at 1,536 characters). Agents: their listing line. MCP servers: click Measure. The dashboard starts the server briefly, reads its tool list and server instructions, and counts both. |
Switches | MCP servers use |
Live tracker | Tails |
MCP schema counting
Claude Code loads MCP tool definitions in one of two ways:
full: every tool's full schema is sent with each request.
deferred: only tool names and server instructions are sent; schemas load when a tool is needed.
Claude Code switches to deferred when MCP tools would fill more than about 10% of the context window. auto follows the same rule; you can force either mode from the MCP tab.
MCP tools (kept small: about 290 tokens)
dashboard: opens the dashboard and returns its URL.context_report: a text summary of what's loaded, the costs, savings so far and new items.context_toggle:{ name, state: on|off|name-only, scope: project|global }.
Notes
Changes apply to new Claude Code sessions, not the one already running.
Token counts are estimates at about 4 characters per token.
Servers that need OAuth sign-in (for example remote HTTP servers) can't be measured from outside Claude Code. They show "needs sign-in to measure".
claude.ai connectors added from your claude.ai account aren't stored locally, so they aren't listed.
Plugin SessionStart hooks can add text to each session. They're flagged on the plugin but not counted.
Only one dashboard runs per machine. Extra Claude sessions share it, and if the session hosting it closes, another one takes over within about 20 seconds.
Settings:
TOKEN_DASHBOARD_PORT(default 7377),TOKEN_DASHBOARD_DATA(default~/.claude/token-dashboard),CLAUDE_CONFIG_DIR.
Files
server.js MCP stdio server + --standalone entry
src/scan.js finds items, works out on/off state and token cost, spots new items
src/agents.js other AI tools: Codex, Gemini, Antigravity, Kiro, Cursor, VS Code...
src/toggle.js writes switches to Claude Code settings (with backups)
src/probe.js measures MCP servers (stdio and HTTP)
src/tracker.js live transcript tailing and the savings ledger
src/web.js local HTTP server, live event stream, file watchers
public/index.html the dashboard
test/ node --test suites (npm test)License
MIT © 2026 Yiamin24. See LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Use AI models for chat, image, and video generation from Claude Code and other MCP hosts.
LLM cost optimization gateway, repo token-waste auditor & model arbitrage MCP server.
LLM cost optimization gateway, repo token-waste auditor & model arbitrage MCP server.
AI Visibility and Content Intelligence tools for Claude and MCP-compatible agents.
Related MCP Servers
- AlicenseBqualityFmaintenanceTrack LLM token costs across Claude, GPT and Gemini. MCP server + CLI with optimization hints and $ savings estimates.89 npm1MIT
- AlicenseNot gradedqualityCmaintenanceAutomatically tracks AI-assisted work sessions, code changes, and commands in Claude Code or Codex CLI, and provides daily stats, weekly reports, and data export through MCP tools.23 npmMIT
- AlicenseNot gradedqualityDmaintenanceClaude Code token usage and cost visibility for MCP-capable agents.21 npmMIT
- AlicenseNot gradedqualityCmaintenanceSurface Claude Code token usage, estimated cost, and plan-limit status in any MCP client. Enables agents to query usage data from local logs and Anthropic API.MIT