You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Scrobble now-playing and listened tracks to Last.fm so users get listening history, stats, and recommendations from their existing Last.fm account.
Why
Last.fm scrobbling is a low-effort, high-goodwill feature. A significant portion of audiophile terminal users already use Last.fm and will adopt any player that supports it. It requires no UI changes — just a background POST when a track starts and completes.
API
Last.fm has a free, stable API:
track.updateNowPlaying — call when playback starts
track.scrobble — call when >50% of track duration has elapsed
Auth: one-time auth.getMobileSession with username + password MD5 hash, store session key in config
Feature
Scrobble now-playing and listened tracks to Last.fm so users get listening history, stats, and recommendations from their existing Last.fm account.
Why
Last.fm scrobbling is a low-effort, high-goodwill feature. A significant portion of audiophile terminal users already use Last.fm and will adopt any player that supports it. It requires no UI changes — just a background POST when a track starts and completes.
API
Last.fm has a free, stable API:
track.updateNowPlaying— call when playback startstrack.scrobble— call when >50% of track duration has elapsedauth.getMobileSessionwith username + password MD5 hash, store session key in configImplementation sketch
[lastfm]section to future config file (see enhancement: add get_now_playing, remove_from_playlist MCP tools + config file support #38):nowPlayingTick, when a new track is detected: callupdateNowPlayingtimePos / duration > 0.5on a new track: callscrobbleNotes
ArtistandSongTitlefields indb.Trackmap directly to Last.fm'sartistandtrackparams