get_artist_top_tracks
Retrieve an artist's most popular tracks globally or by country using Spotify streaming data to identify hits and build playlists.
Instructions
Discover an artist's most popular and widely-played tracks based on global streaming data.
🎯 USE CASES: • Quick introduction to an artist's biggest hits • Building "best of" playlists for parties or events • Understanding which songs made an artist famous • Creating radio-friendly playlists with mainstream appeal • Checking what's trending from your favorite artists
📝 WHAT IT RETURNS: • Top 10 tracks ranked by global popularity • Track names, album information, and release dates • Popularity scores and play count estimates • Preview URLs and track durations • Market-specific popularity rankings
🔍 EXAMPLES: • "What are Ed Sheeran's top tracks?" • "Show me The Weeknd's biggest hits in the US" • "Get Ariana Grande's most popular songs" • "Find the top tracks for artist ID: 1Xyo4u8uXC1ZmMpatF05PJ"
🌍 MARKET SPECIFICITY: • Results can vary by country/region • Reflects local music preferences and cultural differences • Use country parameter for region-specific results • Defaults to US market if not specified
⚠️ REQUIREMENTS: • Valid Spotify access token • Artist must have released tracks
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | Spotify access token for authentication | |
| artistId | Yes | Spotify artist ID or URI | |
| country | No | Country code for localized content (e.g., 'US', 'GB') |
Implementation Reference
- src/mcp/tools/artists.ts:135-138 (handler)The handler function for the MCP 'get_artist_top_tracks' tool. It destructures the input arguments and delegates the API call to SpotifyService.getArtistTopTracks.
handler: async (args: any, spotifyService: SpotifyService) => { const { token, artistId, country = "US" } = args; return await spotifyService.getArtistTopTracks(token, artistId, country); }, - src/mcp/tools/artists.ts:130-134 (schema)The input schema for the 'get_artist_top_tracks' tool defining validation for token, artistId, and optional country parameters.
schema: createSchema({ token: commonSchemas.token(), artistId: commonSchemas.spotifyId("artist"), country: commonSchemas.country(), }), - src/mcp/tools/index.ts:22-36 (registration)Registration of all tools including artistTools (which contains get_artist_top_tracks) into the central allTools registry used by ToolRegistrar for MCP tool exposure.
export const allTools: ToolsRegistry = { ...albumTools, ...artistTools, ...trackTools, ...playlistTools, ...playbackTools, ...userTools, ...searchTools, }; - src/spotify.ts:401-413 (helper)The SpotifyService helper method that performs the actual Spotify API request to retrieve the top tracks for an artist in a specific market.
async getArtistTopTracks( token: string, artistId: string, country: string = "US" ): Promise<{ tracks: SpotifyTrack[] }> { const id = this.extractId(artistId); const params = { market: country }; return await this.makeRequest<{ tracks: SpotifyTrack[] }>( `artists/${id}/top-tracks`, token, params ); }