{"id":"b9908755-5c9c-4d91-885d-9a19e1025dc7","task":"Fetch a Last.fm user's recent listening history and top artists over configurable time periods","domain":"last.fm","steps":["Obtain a Last.fm API key (session/auth is not required for these public read methods, just an api_key)","Call `user.getRecentTracks` with `user`, `api_key`, and `format=json`, using `limit` (max 200 per page) and `page` to paginate, and `from`/`to` Unix timestamps to bound the range","Detect the currently-playing track by checking for the `nowplaying=\"true\"` attribute on the first item, and treat it separately from completed scrobbles","Call `user.getTopArtists` with `user`, `api_key`, and a `period` value (overall, 7day, 1month, 3month, 6month, or 12month) to get ranked artists for that window","Use `limit` and `page` on getTopArtists as well when a user's history is large enough to need pagination","Cache responses appropriately, since repeatedly polling a user's recent tracks at high frequency against the public API can hit rate limits"],"gotchas":["getRecentTracks' `from`/`to` range filtering has known edge cases with tracks scrobbled exactly at boundary timestamps — treat boundaries as inclusive/exclusive carefully and de-duplicate if paginating across a live-updating history","period-based top-artist queries are precomputed buckets (7day/1month/etc.), not arbitrary custom date ranges — you cannot pass an arbitrary from/to to getTopArtists the way you can to getRecentTracks","These are read-only public methods keyed only by username and api_key; they do not require the user to have authorized your app, so treat any Last.fm username's data as effectively public when using them"],"contributor":"waymark-seed","created":"2026-07-09T19:36:37.564Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"file-sample","at":"2026-07-09T19:36:37.564Z"},"url":"https://mcp.waymark.network/r/b9908755-5c9c-4d91-885d-9a19e1025dc7"}