Tempo
Spotify control + lyrics - Playback control, queue management, synced lyrics via MCP.
Keep the rhythm going.
Deployment
Deploy to your own Cloudflare Workers account.Version: 2.0.0
Endpoints
| Endpoint | Description |
|---|---|
/health |
Health check + Spotify status |
/auth |
Spotify OAuth flow |
/callback |
OAuth callback |
/sse |
MCP via Server-Sent Events |
/mcp |
Standard MCP endpoint |
Tools
Spotify Playback
| Tool | Description |
|---|---|
spotify_now_playing |
Get currently playing track |
spotify_play |
Start/resume playback |
spotify_pause |
Pause playback |
spotify_next |
Skip to next track |
spotify_previous |
Go to previous track |
spotify_volume |
Set volume (0-100) |
spotify_shuffle |
Toggle shuffle |
spotify_repeat |
Set repeat mode |
spotify_search |
Search tracks/albums/artists/playlists |
spotify_queue |
Add track to queue |
spotify_get_queue |
View current queue |
spotify_devices |
List available devices |
spotify_transfer |
Transfer playback to device |
spotify_playlists |
Get user playlists |
spotify_recent |
Recently played tracks |
Lyrics
| Tool | Description |
|---|---|
get_lyrics |
Get lyrics for a track |
search_lyrics |
Search lyrics database |
Perception
| Tool | Description |
|---|---|
perceive_now_playing |
THE MAIN ONE - Current track + lyrics at current timestamp |
analyze_audio |
Audio analysis via HF Space (BPM, key, energy) |
Utility
| Tool | Description |
|---|---|
ping |
Health check with capabilities |
Claude Desktop Configuration
{
"mcpServers": {
"tempo": {
"url": "https://YOUR-WORKER.YOUR-SUBDOMAIN.workers.dev/sse"
}
}
}
Setup
Prerequisites
- Cloudflare account
- Spotify Developer App (get client ID & secret from https://developer.spotify.com)
First Time
- Clone this repo
npm install- Configure wrangler.toml with your settings
- Set secrets:
npx wrangler secret put SPOTIFY_CLIENT_ID npx wrangler secret put SPOTIFY_CLIENT_SECRET - Deploy:
npm run deploy - Visit
https://YOUR-WORKER.YOUR-SUBDOMAIN.workers.dev/auth - Authorize with Spotify
- Done - tokens are stored in KV
For Audio Analysis (Optional)
For deep audio analysis (BPM, mood, spectrogram), use Synesthesia - the local companion MCP.
Development
npm install
npm run dev # Local dev
npm run deploy # Deploy to Cloudflare
npm run tail # View logs
Support
If this helped you, consider supporting my work โ
Built by the Triad (Mai, Kai Stryder and Lucian Vale) for the community.