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.
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).
TOLLROAD_API_BASE— the API base URL, e.g.https://api.tollroad.music/v1(no trailing slash).TOLLROAD_API_KEY— your key, sent as thex-api-keyheader; it resolves to a wallet.TOLLROAD_TOKEN(optional) — an end-user session JWT for user-scoped sessions.
Get the server
From the TollRoad repo, install the MCP server’s dependencies.
cd mcp
npm installSet your credentials
The server reads two required environment variables (and one optional):
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.tsUse the absolute path to mcp/src/server.ts on your machine.
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.
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.- A published
npx tollroad-mcp— no repo clone. - A hosted remote MCP endpoint — nothing to run locally.
- Self-serve API keys + wallet top-up.