Registering a token without leaving it in your shell history
The command on the Connect screen contains the token, so running it as-is leaves it in your shell history. If that bothers you, register it one of these two ways.
Way 1: run it, then delete one line from your history (quickest)
- 1Run the command from the Connect screen as usual.
- 2With zsh on Mac or Linux (the macOS default), open ~/.zsh_history in an editor, delete the claude mcp add line, save, and reopen the terminal.
- 3With bash on Mac or Linux, run history -d -1 right after (bash 5.0 or later).
- 4With PowerShell on Windows, run (Get-PSReadLineOption).HistorySavePath to find the history file, open it in an editor, delete the claude mcp add line, save, and reopen PowerShell.
Way 2: pass it in an environment variable (the token is in neither the command nor the repository)
- 1Copy the token with "Copy just the token" on the Connect screen.
- 2Put the token in an environment variable, with a different name for each board (see the examples). On Mac or Linux, open your shell's settings file (~/.zshrc, for example) in an editor, add a line, save, and reopen the terminal. On Windows, add it under User variables in Settings → System → About → Advanced system settings → Environment Variables, then reopen the terminal.
- 3Put that variable's name in the .mcp.json of the repository you want to connect. It contains no token, so it is fine to commit.
- 4Start Claude Code in that repository, and allow the .mcp.json connection when asked.
~/.zshrc on Mac or Linux (connecting two boards, "shop" and "blog")
export VONDET_TOKEN_SHOP="vdt_… (the shop board's token)" export VONDET_TOKEN_BLOG="vdt_… (the blog board's token)"
User variables on Windows (same example)
Name: VONDET_TOKEN_SHOP Value: vdt_… (the shop board's token) Name: VONDET_TOKEN_BLOG Value: vdt_… (the blog board's token)
.mcp.json in the shop repository
{
"mcpServers": {
"vondet-shop": {
"type": "http",
"url": "https://vondet.com/api/mcp",
"headers": {
"Authorization": "Bearer ${VONDET_TOKEN_SHOP}"
}
}
}
}.mcp.json for one repository that connects to two boards
{
"mcpServers": {
"vondet-shop": {
"type": "http",
"url": "https://vondet.com/api/mcp",
"headers": {
"Authorization": "Bearer ${VONDET_TOKEN_SHOP}"
}
},
"vondet-blog": {
"type": "http",
"url": "https://vondet.com/api/mcp",
"headers": {
"Authorization": "Bearer ${VONDET_TOKEN_BLOG}"
}
}
}
}Always use a different variable name for each board. Using the same name in two repositories makes one of them write to the other's board (any name of capitals, digits and _ works). If you start Claude Code some other way than from a terminal, pass the variable through that launcher. If you registered a connection with the same name by command before, remove it first with claude mcp remove <name> (the local registration takes priority over .mcp.json).
Caution
Either way, the token stays in plain text in a settings file on your machine — method 1 in ~/.claude.json (and running the command also leaves one line in your shell history, which you can delete), method 2 as an environment variable in your shell startup file (~/.zshrc and the like). The only difference between the two methods is whether a line is left in your shell history; both leave one plain-text copy on your machine. Treat those settings files as carefully as the token itself (do not share them, do not show them on a screen share). Neither goes into the repository. If it may have leaked, revoke just that key under Manage connections on the Connect screen and issue a new one.
Related guides
Signing up and signing inYou sign in with a link we email you, or with Google or GitHub — there is no password to set or remember.Connecting your AIThis board is one your AI writes to over MCP, the shared method AIs use for outside tools. Any MCP-capable AI can connect (so far we have actually tested Claude). You connect each app you use.When connecting does not workThree things to check first when you connected but nothing is written to the board.Clean up the AI side when you stop or replace a connectionRevoking a token does not remove the registration left in Claude Code or the Claude app; it stays behind as a connection that cannot connect. Remove it yourself.
← Back to the guideStill stuck? Contact us