Docs · Connect an agent

Claude Code

One command. Claude Code speaks MCP over HTTP and takes the header on the command line.

Add it

Mint a token on the dashboard's Tokens page and put it where tt_live_… is:

terminal
claude mcp add --transport http browser \
  https://tabtunnel.dev/v1/mcp \
  --header "Authorization: Bearer tt_live_…"

browser is the name Claude Code will know the server by; call it what you like. Add --scope project to put it in the current repository's .mcp.json instead of your user config — useful for a team, though note that the header carries a secret, so a committed .mcp.json commits the token with it.

Check it worked

terminal
claude mcp list

Then, in a session, ask it to list your browsers. Your machine should come back by the name you gave it during setup, reading connected, reachable or offline. Remember that the first command against an idle browser waits a few seconds while it is pulled up.

If it does not

Answered with 401 The token is wrong, revoked or expired — all one answer, on purpose. Mint a fresh one.
The list is empty No browser is enrolled in that token's organization, or the token is for a different one. A token is a (you, organization) pair.
Your machine reads offline Chrome is closed, or the extension is signed out. It reads reachable when it is polling and connected when a socket is open; both can be driven.
A command hangs, then a prompt appears in Chrome That is consent doing its job. On confirm_every the first command to each new site asks you. Answer it and the command continues.

Next: what it can do.

Is something here wrong, or missing? Tell us.