Connect Claude · MCP

Connect Claude to TollRoad.

Point Claude at the vibe-DJ MCP server and it can search the catalog, queue a session, and stream licensed music by describing a vibe — paid per minute from a wallet, no login.

Heads up

Today the server runs locally — Claude spawns it from the repo. A hosted endpoint, an npx package, and self-serve API keys are on the way. You’ll need the mcp/ server, Node 22+, and a TollRoad API key (issued by us for now).

    1

    Get the server

    From the TollRoad repo, install the MCP server’s dependencies.

    cd mcp
    npm install
    2

    Set your credentials

    The server reads two required environment variables (and one optional):

    • TOLLROAD_API_BASE — the API base URL, e.g. https://api.tollroad.music/v1 (no trailing slash).
    • TOLLROAD_API_KEY — your key, sent as the x-api-key header; it resolves to a wallet.
    • TOLLROAD_TOKEN (optional) — an end-user session JWT for user-scoped sessions.
    3

    Register it with Claude

    Claude Desktop — add to claude_desktop_config.json:

    {
      "mcpServers": {
        "tollroad-vibe-dj": {
          "command": "node",
          "args": [
            "--experimental-strip-types",
            "/path/to/tollroadmusic/mcp/src/server.ts"
          ],
          "env": {
            "TOLLROAD_API_BASE": "https://api.tollroad.music/v1",
            "TOLLROAD_API_KEY": "<your-api-key>"
          }
        }
      }
    }

    Claude Code — run:

    claude mcp add tollroad-vibe-dj \
      --env TOLLROAD_API_BASE=https://api.tollroad.music/v1 \
      --env TOLLROAD_API_KEY=<your-api-key> \
      -- node --experimental-strip-types /path/to/tollroadmusic/mcp/src/server.ts

    Use the absolute path to mcp/src/server.ts on your machine.

    4

    Restart Claude

    Restart Claude Desktop (or reload your Claude Code session) so it picks up the new server. You should see tollroad-vibe-dj in the MCP tool list.

    5

    Try it

    Ask Claude for music — it will search, pick, and play:

    Find a tense 140 BPM synthwave track and play it.

The tools Claude gets

search_musicDiscover tracks by vibe/mood — returns ranked, licensed results.
start_sessionStart a DJ session queue; returns a session id.
next_trackAdvance the session to the next track (optionally with a signal hint).
get_streamGet a signed streaming URL — or 402 Payment Required if the wallet is empty.
get_balanceCheck the current wallet balance for the authenticated key.
Coming soon
  • A published npx tollroad-mcp — no repo clone.
  • A hosted remote MCP endpoint — nothing to run locally.
  • Self-serve API keys + wallet top-up.