Claude Desktop integration
Claude Desktop runs local MCP servers listed in its claude_desktop_config.json. Adding @burnbound/mcp there lets Claude pay x402 APIs from a chat, within your agent's caps and allowed hosts. This page has the exact configuration for macOS and Windows and where to look when the server does not start. Steps as documented in Connect to local MCP servers and Anthropic's local MCP servers on Claude Desktop.
Open the config file
Claude Desktop needs Node.js installed: check it with node --version in a terminal (@burnbound/mcp needs version 20 or later).
- Click the Claude menu in your system's menu bar (not the settings inside the Claude window) and choose Settings….
- Open the Developer tab and click Edit Config.
That opens, or creates, the file:
| System | Path |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
Add the server
Add a burnbound entry under mcpServers, with your agent key (bb_agent_…) from the Burnbound dashboard. Keep any servers already in the file:
{
"mcpServers": {
"burnbound": {
"command": "npx",
"args": ["-y", "@burnbound/mcp"],
"env": {
"BURNBOUND_KEY": "bb_agent_…"
}
}
}
}
Save the file, then quit Claude Desktop completely and start it again. It only reads the file at startup.
Check that it is connected
Click the Add files, connectors, and more button (+) at the bottom left of the message box, hover Connectors and choose Manage connectors. burnbound should be listed with its tools: fetch_paid, get_budget, list_payments, get_approval_status and search_paid_apis.
Then ask in a chat:
What is my Burnbound budget?
Claude asks for your approval before it uses a tool, then calls get_budget and shows today's spend, the daily cap and the allowed hosts.
Make a paid request
Add a seller's host to the agent's allowed hosts in the dashboard, then ask. For example, with Nansen (api.nansen.ai, 0.01 USDC per call on Base when we last verified it):
Use fetch_paid to POST https://api.nansen.ai/api/v1/profiler/address/current-balance
with the header Content-Type: application/json, the JSON body
{"address": "0x28c6c06298d514db089934071355e5743bf21d60", "chain": "ethereum"},
and maxAmountUsd "0.02". Summarize the balances.
Each payment is checked against the agent's policy before it is signed, and appears in the dashboard with its transaction. The x402 API catalog lists more verified sellers, and Claude can search it with search_paid_apis.
When the server does not start
Claude Desktop writes MCP logs to:
- macOS:
~/Library/Logs/Claude - Windows:
%APPDATA%\Claude\logs
mcp.log has the connection errors, and mcp-server-burnbound.log has the server's own messages (its stderr). On macOS, follow them with:
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
| In the log | Fix |
|---|---|
BURNBOUND_KEY is required. |
The env block is missing or misspelled. |
BURNBOUND_KEY has an invalid format. |
The key was pasted with extra characters. |
An ENOENT error that names npx |
Claude Desktop cannot find npx. Run which npx (macOS) or where npx (Windows) and put that full path in command. |
An ENOENT error with ${APPDATA} in a path (Windows) |
Add "APPDATA": "C:\\Users\\<you>\\AppData\\Roaming\\" to env, and make sure npm is installed globally. |
Every tool answers unauthorized |
The key was revoked or mistyped. Create a new one in the dashboard. |
To test the server outside Claude Desktop, run it in a terminal with the key set; it should start and wait for input without printing an error:
BURNBOUND_KEY=bb_agent_… npx -y @burnbound/mcp
Which wallet mode fits Claude Desktop?
Both work. Client-side signing keeps the key on your machine, and its protection depends on the agent not being able to read that key. If you also give Claude Desktop tools that run commands or read files on your machine, the same caveat as for coding agents applies, and a Coinbase CDP wallet is the safer choice. See Agent wallets: Coinbase CDP vs a local key.
Related
- Quickstart: create the agent, its caps and its key.
- Human approval for agent payments with Slack: make larger payments wait for you.
- Claude Code and Cursor setups.