ArtistLens A powerful Model Context Protocol (MCP) server that provides access to the Spotify Web API. ArtistLens enables seamless interaction with Spotify's music catalog, including searching for tracks, albums, and artists, as well as accessing artist-specific information like top tracks and related artists.
Current Version: 0.4.12
<a href="https://glama.ai/mcp/servers/mmrvuig6tp"><img width="380" height="200" src="https://glama.ai/mcp/servers/mmrvuig6tp/badge" alt="ArtistLens MCP server" /></a>
Installation Installing via Smithery To install ArtistLens for Claude Desktop automatically via
Smithery :
Manual Installation You can install the package globally:
Or run it directly with npx:
Configuration Add to your MCP settings file (e.g., claude_desktop_config.json
or cline_mcp_settings.json
):
You'll need to provide your Spotify API credentials:
Go to Spotify Developer Dashboard Create a new application Get your Client ID and Client Secret Add them to the configuration as shown above Features Search for tracks, albums, artists, and playlists Get artist information including top tracks and related artists Get album information and tracks Access new releases and recommendations Get audiobook information with market-specific content and chapters Note: Audiobook endpoints may require additional authentication or market-specific access Get and modify playlist information (name, description, public/private status) Access playlist tracks and items with pagination support Support for both Spotify IDs and URIs Automatic token management with client credentials flow Comprehensive test suite for all functionality Well-organized code with separation of concerns Available Tools get_access_token
: Get a valid Spotify access tokensearch
: Search for tracks, albums, artists, or playlistsget_artist
: Get artist informationget_artist_top_tracks
: Get an artist's top tracksget_artist_related_artists
: Get artists similar to a given artistget_artist_albums
: Get an artist's albumsget_album
: Get album informationget_album_tracks
: Get an album's tracksget_track
: Get track informationget_available_genres
: Get a list of available genres for recommendationsget_new_releases
: Get new album releasesget_recommendations
: Get track recommendations based on seed tracks, artists, or genresget_audiobook
: Get audiobook information with optional market parameterget_multiple_audiobooks
: Get information for multiple audiobooks (max 50)get_audiobook_chapters
: Get chapters of an audiobook with pagination support (1-50 chapters per request)get_playlist
: Get a playlist owned by a Spotify userget_playlist_tracks
: Get full details of the tracks of a playlist (1-100 tracks per request)get_playlist_items
: Get full details of the items of a playlist (1-100 items per request)modify_playlist
: Change playlist details (name, description, public/private state, collaborative status)add_tracks_to_playlist
: Add one or more tracks to a playlist with optional positionremove_tracks_from_playlist
: Remove one or more tracks from a playlist with optional positions and snapshot IDget_current_user_playlists
: Get a list of the playlists owned or followed by the current Spotify user (1-50 playlists per request)get_featured_playlists
: Get a list of Spotify featured playlists with optional locale and pagination supportget_category_playlists
: Get a list of Spotify playlists tagged with a particular categoryUpdating To update to the latest version:
Development This project is open source and available on GitHub at
https://github.com/superseoworld/artistlens .
Project Structure The codebase is organized into the following directories:
src/handlers/
: Contains handler classes for different Spotify API endpointssrc/types/
: TypeScript interfaces for request and response objectssrc/utils/
: Utility functions and classes for API communicationsrc/__tests__/
: Jest test files for all functionalityTesting The project uses Jest for testing. To run the tests:
To run tests in watch mode during development:
Contributing To contribute:
Fork the repository Create your feature branch (git checkout -b feature/amazing-feature
) Add tests for your changes Commit your changes (git commit -m 'Add some amazing feature'
) Push to the branch (git push origin feature/amazing-feature
) Open a Pull Request License MIT License
ArtistLens A powerful Model Context Protocol (MCP) server that provides access to the Spotify Web API. ArtistLens enables seamless interaction with Spotify's music catalog, including searching for tracks, albums, and artists, as well as accessing artist-specific information like top tracks and related artists.
Current Version: 0.4.12
<a href="https://glama.ai/mcp/servers/mmrvuig6tp"><img width="380" height="200" src="https://glama.ai/mcp/servers/mmrvuig6tp/badge" alt="ArtistLens MCP server" /></a>
Installation Installing via Smithery To install ArtistLens for Claude Desktop automatically via
Smithery :
Manual Installation You can install the package globally:
Or run it directly with npx:
Configuration Add to your MCP settings file (e.g., claude_desktop_config.json
or cline_mcp_settings.json
):
You'll need to provide your Spotify API credentials:
Go to Spotify Developer Dashboard Create a new application Get your Client ID and Client Secret Add them to the configuration as shown above Features Search for tracks, albums, artists, and playlists Get artist information including top tracks and related artists Get album information and tracks Access new releases and recommendations Get audiobook information with market-specific content and chapters Note: Audiobook endpoints may require additional authentication or market-specific access Get and modify playlist information (name, description, public/private status) Access playlist tracks and items with pagination support Support for both Spotify IDs and URIs Automatic token management with client credentials flow Comprehensive test suite for all functionality Well-organized code with separation of concerns Available Tools get_access_token
: Get a valid Spotify access tokensearch
: Search for tracks, albums, artists, or playlistsget_artist
: Get artist informationget_artist_top_tracks
: Get an artist's top tracksget_artist_related_artists
: Get artists similar to a given artistget_artist_albums
: Get an artist's albumsget_album
: Get album informationget_album_tracks
: Get an album's tracksget_track
: Get track informationget_available_genres
: Get a list of available genres for recommendationsget_new_releases
: Get new album releasesget_recommendations
: Get track recommendations based on seed tracks, artists, or genresget_audiobook
: Get audiobook information with optional market parameterget_multiple_audiobooks
: Get information for multiple audiobooks (max 50)get_audiobook_chapters
: Get chapters of an audiobook with pagination support (1-50 chapters per request)get_playlist
: Get a playlist owned by a Spotify userget_playlist_tracks
: Get full details of the tracks of a playlist (1-100 tracks per request)get_playlist_items
: Get full details of the items of a playlist (1-100 items per request)modify_playlist
: Change playlist details (name, description, public/private state, collaborative status)add_tracks_to_playlist
: Add one or more tracks to a playlist with optional positionremove_tracks_from_playlist
: Remove one or more tracks from a playlist with optional positions and snapshot IDget_current_user_playlists
: Get a list of the playlists owned or followed by the current Spotify user (1-50 playlists per request)get_featured_playlists
: Get a list of Spotify featured playlists with optional locale and pagination supportget_category_playlists
: Get a list of Spotify playlists tagged with a particular categoryUpdating To update to the latest version:
Development This project is open source and available on GitHub at
https://github.com/superseoworld/artistlens .
Project Structure The codebase is organized into the following directories:
src/handlers/
: Contains handler classes for different Spotify API endpointssrc/types/
: TypeScript interfaces for request and response objectssrc/utils/
: Utility functions and classes for API communicationsrc/__tests__/
: Jest test files for all functionalityTesting The project uses Jest for testing. To run the tests:
To run tests in watch mode during development:
Contributing To contribute:
Fork the repository Create your feature branch (git checkout -b feature/amazing-feature
) Add tests for your changes Commit your changes (git commit -m 'Add some amazing feature'
) Push to the branch (git push origin feature/amazing-feature
) Open a Pull Request License MIT License