{"version":1,"resources":["https://stablemusic.dev/api/albums/info","https://stablemusic.dev/api/artists/info","https://stablemusic.dev/api/artists/similar","https://stablemusic.dev/api/artists/top-tags","https://stablemusic.dev/api/artists/top-tracks","https://stablemusic.dev/api/charts/top-tags","https://stablemusic.dev/api/charts/top-tracks","https://stablemusic.dev/api/geo/top-tracks","https://stablemusic.dev/api/tags/top-albums","https://stablemusic.dev/api/tags/top-artists","https://stablemusic.dev/api/tags/top-tracks","https://stablemusic.dev/api/tracks/info","https://stablemusic.dev/api/tracks/search","https://stablemusic.dev/api/tracks/top-tags","https://stablemusic.dev/api/tracks/similar"],"description":"Pay-per-request Last.fm music discovery. Search by tag, track, artist, album, chart, and country without user login or playback.","instructions":"# StableMusic API\n\nBase URL: https://stablemusic.dev\n\nStableMusic is a pay-per-request Last.fm music discovery API. It does not stream music, and does not require Last.fm user login.\n\n## Workflow\n\n1. Discover endpoints with `mcp__agentcash__discover_api_endpoints(\"https://stablemusic.dev\")`.\n2. Call `mcp__agentcash__check_endpoint_schema` before first use of an endpoint.\n3. Execute with `mcp__agentcash__fetch`.\n\nAll endpoints are POST requests and cost $0.01. Authentication is x402 only.\n\n## Tag / Category Discovery\n\nUse tags for genre/category requests. Last.fm tags are community-generated:\ngenre tags like `synthwave`, `disco`, `jazz`, `rap`, `hip-hop`,\n`soul`, and `trip-hop` are usually useful; vague activity tags can be noisy.\n\n- `POST /api/tags/top-tracks` — tracks for a tag.\n- `POST /api/tags/top-artists` — artists for a tag.\n- `POST /api/tags/top-albums` — albums for a tag.\n\nExample:\n```json\n{ \"tag\": \"synthwave\", \"limit\": 10 }\n```\n\n## Track Lenses\n\n- `POST /api/tracks/search` — search tracks by title, optional artist hint.\n- `POST /api/tracks/info` — track stats and top tags.\n- `POST /api/tracks/similar` — tracks similar to an artist/track pair.\n- `POST /api/tracks/top-tags` — only the top community tags for a track.\n\nExample:\n```json\n{ \"artist\": \"The Weeknd\", \"track\": \"Blinding Lights\", \"limit\": 10 }\n```\n\n## Artist Lenses\n\n- `POST /api/artists/info` — artist stats, tags, bio summary, similar names.\n- `POST /api/artists/similar` — similar artists with match scores.\n- `POST /api/artists/top-tracks` — an artist's top tracks.\n- `POST /api/artists/top-tags` — top tags for an artist.\n\nExample:\n```json\n{ \"artist\": \"Sade\", \"limit\": 10 }\n```\n\n## Album, Chart, and Geo\n\n- `POST /api/albums/info` — album stats, tags, and tracklist.\n- `POST /api/charts/top-tracks` — global top tracks.\n- `POST /api/charts/top-tags` — global top tags.\n- `POST /api/geo/top-tracks` — top tracks for a country.\n\nExamples:\n```json\n{ \"artist\": \"Sade\", \"album\": \"Love Deluxe\" }\n```\n\n```json\n{ \"country\": \"United States\", \"limit\": 10 }\n```\n\n## Response Notes\n\nResponses normalize Last.fm fields into stable keys: `name`, `artist`,\n`url`, `mbid`, `rank`, `listeners`, `playcount`, `duration_seconds`,\n`match`, and `tags`. Set `include_raw: true` to include the upstream\nLast.fm payload for debugging.\n"}