Spotify, for your AI.
Not a remote. A DJ that talks back.
npx -y spotify-aux demo
npx -y spotify-aux loginThen in Cursor: “rainy 2am drive” · “roast my top tracks” · “start auto DJ”
- Spotify Dashboard → create app
- Redirect URI (exact):
http://127.0.0.1:7654/callback
(Optional roast site later: also add http://127.0.0.1:7656/)
- Install & login:
npm i -g spotify-aux
# or: git clone … && npm i && npm run build
export SPOTIFY_CLIENT_ID=…
export SPOTIFY_CLIENT_SECRET=…
npx -y spotify-aux login- Cursor MCP config:
{
"mcpServers": {
"aux": {
"command": "npx",
"args": ["-y", "spotify-aux"],
"env": {
"SPOTIFY_CLIENT_ID": "your_id",
"SPOTIFY_CLIENT_SECRET": "your_secret"
}
}
}
}From a local clone, point command/args at node + dist/server.js instead.
| Say this | What happens |
|---|---|
| rainy 2am drive | vibe — LLM invents searches, catalog DJ |
| music Spotify won’t show me | vibe + anti_algorithm |
| DJ for right now | context_vibe — time + weather |
| keep it going | auto_dj_start → npx spotify-aux autodj |
| roast my week | weekly_report |
| party room | party_room_create + friend relay |
| roast this playlist (no Cursor) | npx spotify-aux web |
Every hook can drop an ASCII card made for screenshots.
# host machine
npx -y spotify-aux party-host
# tunnel it, e.g. cloudflared tunnel --url http://127.0.0.1:7655
# everyone
export AUX_PARTY_RELAY=https://your-tunnel.exampleThen party_room_create → share the code → friends party_room_add / party_room_vote.
npx -y spotify-aux web
# open http://127.0.0.1:7656See Architecture for the tool-module, Spotify endpoint, authentication, and vibe-pipeline map.
Peak / viral
vibe · context_vibe · weekly_report · auto_dj_start · auto_dj_tick · auto_dj_stop · auto_dj_status · party_room_create · party_room_join · party_room_add · party_room_vote · party_room_play_winner · set_mood · adjust_playlist_vibe · roast_my_playlist · playlist_dna · aux_battle · blend_tastes · music_compatibility · whats_playing_story · party_* · record_taste_feedback · get_taste_memory · auth_status
Spotify coverage
Search, browse, playback, playlists, library, personalization — full Web API surface so the agent never stalls mid-task.
npx -y spotify-aux # MCP server
npx -y spotify-aux login
npx -y spotify-aux status
npx -y spotify-aux autodj # refill loop
npx -y spotify-aux party-host # friend relay :7655
npx -y spotify-aux web # roast site :7656
npx -y spotify-aux demoAfter npm i -g spotify-aux, binaries: spotify-aux and aux-mcp.
| Flow | Unlocks |
|---|---|
| Client ID + Secret | Search / catalog |
npx spotify-aux login |
Playback, library, hooks, Auto-DJ |
Tokens → ~/.aux-mcp/. Premium + open Spotify app for playback.
Register AUX as an OpenClaw-managed MCP server + install the skill:
npx -y spotify-aux openclaw
openclaw mcp add aux \
--command npx \
--arg -y \
--arg spotify-aux \
--env SPOTIFY_CLIENT_ID="$SPOTIFY_CLIENT_ID" \
--env SPOTIFY_CLIENT_SECRET="$SPOTIFY_CLIENT_SECRET"
openclaw mcp doctor aux --probeClawHub: @brian-mwirigi/aux-mcp · skill: skills/aux-mcp/SKILL.md · docs/openclaw.md
PRs welcome. See CONTRIBUTING.md and open good first issues.
Site: brianmunene.me/aux-mcp
github.com/brian-mwirigi/aux-mcp
MIT