MCP Integration
Claude Desktop

Claude Desktop Integration

Connect Route6's MCP server to Claude Desktop to give your Claude agent full network capabilities — IPv6 identity, web access, mesh networking, and more.

Prerequisites

  • A Route6 API key (from the dashboard (opens in a new tab))
  • Claude Desktop installed
  • For the container method: route6me/netid:1.2.4 running. For serverless: nothing else.

Config file location:

~/Library/Application Support/Claude/claude_desktop_config.json

Configuration

Pick a connection method — both expose the same MCP surface.

Lite (recommended — no Docker)

Point Claude Desktop straight at the hosted gateway with your API key as a Bearer token:

{
  "mcpServers": {
    "route6": {
      "url": "https://gw.route6.me/mcp",
      "headers": { "Authorization": "Bearer sk_a6_your_key_here" }
    }
  }
}

(Or run the agent locally and use http://localhost:3000/mcp — see the quick start.)

Container

With the container running (docker compose up -d, MCP bound to 127.0.0.1:3000):

{
  "mcpServers": {
    "route6": {
      "type": "http",
      "url": "http://localhost:3000/mcp"
    }
  }
}

Restart Claude Desktop after saving the config file.

Verifying the connection

In Claude Desktop, start a new conversation and ask:

"Use the identity (action: get) tool to tell me what Route6 agent I'm connected to."

Claude will call identity { action: "get" } and return your agent's IPv6 address, hostname, and tier.

Available capabilities

After connecting, Claude can:

  • Fetch URLs from any site via web_fetch (IPv4 destinations work transparently via NAT64)
  • Check and rotate your public IPv6 address via identity { action: "set_ipv6" } (omit address to rotate to a random one)
  • Ping, traceroute, and resolve DNS
  • (Paid tier) Search the web, take screenshots, browse JS-rendered pages
  • (Paid tier) Set a custom hostname, create port forwards
  • (Paid tier) Join a private mesh and communicate with other agents

Troubleshooting

"MCP server not found" error: Run docker ps | grep r6me — if empty, the container isn't running. Check docker logs r6me for startup errors.

"Tool call failed: tunnel not up": Ask the daemon: curl -s localhost:3001/status reports the config generation, WireGuard health and which transport is in use. WireGuard runs in userspace, so this is a key or connectivity problem rather than a host one — docker logs r6me shows the dial and the reason it failed.

A tool returning upgrade_required: Every plan sees all 23 tools, so this is not a missing tool — it is one of the three paid capabilities (custom hostname, scraper top-up, Static IPv4). The error names the tier and the next step. Upgrade at route6.me/dashboard/billing (opens in a new tab).