ArtistLens
Accede a la API web de Spotify para buscar y recuperar información sobre canciones, álbumes, artistas y listas de reproducción.
Documentación
ArtistLens
Un potente servidor del Protocolo de Contexto de Modelos (MCP) que proporciona acceso a la API web de Spotify. ArtistLens permite una interacción fluida con el catálogo musical de Spotify, incluyendo la búsqueda de canciones, álbumes y artistas, así como el acceso a información específica de artistas como sus canciones más populares y artistas relacionados.
Versión actual: 0.4.12
Instalación
Instalación mediante Smithery
Para instalar ArtistLens para Claude Desktop automáticamente a través de Smithery:
npx -y @smithery/cli install @superseoworld/artistlens --client claude
Instalación manual
Puedes instalar el paquete de forma global:
npm install -g @thomaswawra/artistlens
O ejecutarlo directamente con npx:
npx -y @thomaswawra/artistlens
Configuración
Añade a tu archivo de configuración de MCP (por ejemplo, claude_desktop_config.json o cline_mcp_settings.json):
{
"mcpServers": {
"spotify": {
"command": "npx",
"args": ["-y", "@thomaswawra/artistlens"],
"env": {
"SPOTIFY_CLIENT_ID": "your_client_id",
"SPOTIFY_CLIENT_SECRET": "your_client_secret"
},
"disabled": false,
"autoApprove": []
}
}
}
Necesitarás proporcionar tus credenciales de la API de Spotify:
- Ve al Panel de desarrolladores de Spotify
- Crea una nueva aplicación
- Obtén tu ID de cliente y tu secreto de cliente
- Añádelos a la configuración como se muestra arriba
Características
- Busca canciones, álbumes, artistas y listas de reproducción
- Obtén información de artistas, incluyendo sus canciones más populares y artistas relacionados
- Obtén información de álbumes y sus canciones
- Accede a nuevos lanzamientos y recomendaciones
- Obtén información de audiolibros con contenido específico por mercado y capítulos
- Nota: Los endpoints de audiolibros pueden requerir autenticación adicional o acceso específico por mercado
- Obtén y modifica información de listas de reproducción (nombre, descripción, estado público/privado)
- Accede a las canciones y elementos de listas de reproducción con soporte de paginación
- Soporte tanto para IDs como para URIs de Spotify
- Gestión automática de tokens con el flujo de credenciales de cliente
- Suite de pruebas completa para toda la funcionalidad
- Código bien organizado con separación de responsabilidades
Herramientas disponibles
get_access_token: Obtén un token de acceso válido de Spotifysearch: Busca canciones, álbumes, artistas o listas de reproducciónget_artist: Obtén información de un artistaget_artist_top_tracks: Obtén las canciones más populares de un artistaget_artist_related_artists: Obtén artistas similares a un artista dadoget_artist_albums: Obtén los álbumes de un artistaget_album: Obtén información de un álbumget_album_tracks: Obtén las canciones de un álbumget_track: Obtén información de una canciónget_available_genres: Obtén una lista de géneros disponibles para recomendacionesget_new_releases: Obtén nuevos lanzamientos de álbumesget_recommendations: Obtén recomendaciones de canciones basadas en canciones, artistas o géneros semillaget_audiobook: Obtén información de audiolibros con parámetro de mercado opcionalget_multiple_audiobooks: Obtén información de múltiples audiolibros (máximo 50)get_audiobook_chapters: Obtén capítulos de un audiolibro con soporte de paginación (1-50 capítulos por solicitud)get_playlist: Obtén una lista de reproducción propiedad de un usuario de Spotifyget_playlist_tracks: Obtén detalles completos de las canciones de una lista de reproducción (1-100 canciones por solicitud)get_playlist_items: Obtén detalles completos de los elementos de una lista de reproducción (1-100 elementos por solicitud)modify_playlist: Cambia los detalles de una lista de reproducción (nombre, descripción, estado público/privado, estado colaborativo)add_tracks_to_playlist: Añade una o más canciones a una lista de reproducción con posición opcionalremove_tracks_from_playlist: Elimina una o más canciones de una lista de reproducción con posiciones opcionales e ID de instantáneaget_current_user_playlists: Obtén una lista de las listas de reproducción propiedad o seguidas por el usuario actual de Spotify (1-50 listas por solicitud)get_featured_playlists: Obtén una lista de listas de reproducción destacadas de Spotify con configuración regional opcional y soporte de paginaciónget_category_playlists: Obtén una lista de listas de reproducción de Spotify etiquetadas con una categoría particular
Actualización
Para actualizar a la versión más reciente:
# If installed globally
npm update -g @thomaswawra/artistlens
# If using npx, it will automatically use the latest version
npx -y @thomaswawra/artistlens
Desarrollo
Este proyecto es de código abierto y está disponible en GitHub en https://github.com/superseoworld/artistlens.
Estructura del proyecto
El código está organizado en los siguientes directorios:
src/handlers/: Contiene clases de controladores para diferentes endpoints de la API de Spotifysrc/types/: Interfaces de TypeScript para objetos de solicitud y respuestasrc/utils/: Funciones y clases de utilidad para la comunicación con la APIsrc/__tests__/: Archivos de prueba de Jest para toda la funcionalidad
Pruebas
El proyecto utiliza Jest para las pruebas. Para ejecutar las pruebas:
npm test
Para ejecutar las pruebas en modo de observación durante el desarrollo:
npm run test:watch
Contribuciones
Para contribuir:
- Haz un fork del repositorio
- Crea tu rama de características (
git checkout -b feature/amazing-feature) - Añade pruebas para tus cambios
- Realiza tus commits (
git commit -m 'Add some amazing feature') - Sube la rama (
git push origin feature/amazing-feature) - Abre una Solicitud de Extracción (Pull Request)
Licencia
Licencia MIT