Claude Desktop config — where to look
Claude Desktop loads MCP servers from claude_desktop_config.json:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Open it. Most users have 4-8 MCP servers configured. Each one runs as a subprocess every time Claude Desktop launches and stays alive until you quit the app.
The hidden cost: idle MCP servers still charge you
Several MCP servers (filesystem, codebase indexers, github) eagerly fetch context on startup or background-poll for changes. You don't see this in the chat UI — but every fetched token is billed on your next conversation turn because the agent decides whether to read the result.
Worst offenders we've seen in real Claude Desktop configs:
- playwright — keeps a browser context alive; every navigation pulls a full DOM snapshot
- codebase indexers (sourcegraph, codeium) — large initial context dump per session
- github MCPs — list_issues / get_pr returns 50+ items by default
Optimization order
- Audit your config. Open
claude_desktop_config.jsonand ask: do I actually use each entry weekly? Remove what you don't. - Move browser tools to a separate profile. If you have multiple Claude Desktop profiles, keep Playwright on a "browser" profile and a leaner config for everyday chat.
- Cap GitHub query sizes. Most GitHub MCPs accept
--per-pageor--max-results. Set it to 10 instead of the default 50-100. - Set a $50/month budget alert. Heavy Claude Desktop users without browser tools land at $30-50/month; with browser tools, $100-300/month.
Track your Claude Desktop spend
The MCPSpend proxy auto-detects Claude Desktop's config path and wraps every entry. One command:
npx --yes @mcpspend/proxy@latest init --key mcps_live_xxx
It writes a .mcpspend.bak backup of your original config. Quit and restart Claude Desktop; calls start streaming to the dashboard in under 30 seconds.
Free tier: 25,000 calls / month. No card. MIT-licensed proxy on npm so you can audit what we send.