From spotify-mood
Set up the Spotify Mood plugin — configure Spotify API credentials, health database, and preferences.
How this skill is triggered — by the user, by Claude, or both
Slash command
/spotify-mood:setupThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Set up the Spotify Mood plugin — configure Spotify API credentials, health database, and preferences.
Set up the Spotify Mood plugin — configure Spotify API credentials, health database, and preferences.
Usage: /spotify-mood-setup
Walks the user through first-time configuration:
Check for existing .env file with Spotify credentials. If not found, guide the user:
SPOTIFY MOOD SETUP
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Step 1: Spotify API Credentials
────────────────────────────────────────────────────────────────
You need a Spotify Developer account to create playlists.
1. Go to https://developer.spotify.com/dashboard
2. Click "Create App"
3. Set Redirect URI to: http://127.0.0.1:8080/callback
4. Copy your Client ID and Client Secret
Enter your Client ID: _______________
Enter your Client Secret: _______________
Save to ~/.spotify-mood/config.json:
{
"spotify": {
"client_id": "...",
"client_secret": "...",
"redirect_uri": "http://127.0.0.1:8080/callback"
}
}
Or, if the user has an existing .env file with SPOTIFY_CLIENT_ID, SPOTIFY_CLIENT_SECRET, and SPOTIFY_REDIRECT_URI, just reference that path:
{
"spotify": {
"env_file": "/path/to/.env"
}
}
Run a one-time OAuth flow to get a refresh token:
# This opens a browser for Spotify login
python -c "
import spotipy
from spotipy.oauth2 import SpotifyOAuth
sp = spotipy.Spotify(auth_manager=SpotifyOAuth(
scope='playlist-modify-public playlist-modify-private',
cache_path=os.path.expanduser('~/.spotify-mood/.spotify_cache'),
open_browser=True
))
print('Authenticated as:', sp.current_user()['display_name'])
"
Step 3: Health Data Integration (Optional)
────────────────────────────────────────────────────────────────
Connect a SQLite database with health metrics for mood-aware playlists.
The database should have:
- health_metrics table: date, metric_type, value, unit
- daily_logs table: date, mood_score, energy_level
Supported metric types: sleep_hours, hrv, caffeine, exercise_mins,
steps, daylight_mins
Path to health database (or press Enter to skip): _______________
If provided, verify the database has the expected tables:
SELECT name FROM sqlite_master WHERE type='table' AND name IN ('health_metrics', 'daily_logs');
Save to config:
{
"health_database": "/path/to/health.db"
}
Run /feed-prefs to set neurochemical weights, or accept defaults (balanced preset).
uv pip install spotipy
# or
pip install spotipy
After configuration, run a test:
SETUP COMPLETE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Spotify: Connected (user: your_username)
Health: Connected (142 entries found)
Prefs: Balanced preset (0.25/0.30/0.25/0.20)
Try it: /spotify-mood
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
All config stored in ~/.spotify-mood/:
~/.spotify-mood/
├── config.json # Spotify creds + health DB path
├── preferences.json # Neurochemical weights
├── .spotify_cache # OAuth token cache
└── playlist_history.json # Log of created playlists
npx claudepluginhub fredzannarbor/spotify-mood-pluginConfigures Spotify Ads API credentials via OAuth 2.0 or direct token. Sets up authentication, ad account, and execution preferences.
Controls Spotify playback and manages playlists: play/pause/skip tracks, search songs/albums/artists, create/add tracks, check now playing/library. Requires Premium.
Generates personalized music playlists by scanning Apple Music play data and Spotify exports, using mmx CLI for AI songs and album covers. Handles multilingual user prompts.