Spotify MCP Server
spotify-mcp MCP 서버
Claude와 Spotify를 연결하는 MCP 프로젝트입니다. spotipy-dev의 API를 기반으로 구축되었습니다.
특징
재생 시작, 일시 정지 및 건너뛰기
트랙/앨범/아티스트/재생목록 검색
트랙/앨범/아티스트/재생목록에 대한 정보 얻기
Spotify 대기열 관리
Related MCP server: Spotify MCP Server
데모
오디오를 켜두세요
구성
Spotify API 키 받기
developer.spotify.com 에서 계정을 만드세요. 대시보드 로 이동하세요. 'redirect_uri'를 http://localhost:8888 로 설정하여 앱을 만드세요. (원하는 포트를 선택할 수 있지만 http와 localhost를 사용해야 합니다.) 저는 "사용되는 API"를 "웹 재생 SDK"로 설정했습니다.
이 프로젝트를 로컬로 실행하세요
이 프로젝트는 아직 임시 환경(예: uvx 사용)에 맞게 설정되지 않았습니다. 이 저장소를 복제하여 로컬에서 프로젝트를 실행하세요.
지엑스피1
이 도구를 mcp 서버로 추가합니다.
MacOS의 경우: ~/Library/Application\ Support/Claude/claude_desktop_config.json Windows의 경우: %APPDATA%/Claude/claude_desktop_config.json
"spotify": {
"command": "uv",
"args": [
"--directory",
"/path/to/spotify_mcp",
"run",
"spotify-mcp"
],
"env": {
"SPOTIFY_CLIENT_ID": YOUR_CLIENT_ID,
"SPOTIFY_CLIENT_SECRET": YOUR_CLIENT_SECRET,
"SPOTIFY_REDIRECT_URI": "http://localhost:8888"
}
}문제 해결
이 MCP가 작동하지 않으면 문제를 제기해 주세요. 몇 가지 팁을 알려드리겠습니다.
uv최신 상태인지 확인하세요.>=0.54버전을 권장합니다.클로드에게 프로젝트에 대한 실행 권한이 있는지 확인하세요:
chmod -R 755.Spotify 프리미엄이 있는지 확인하세요(개발자 API를 실행하는 데 필요).
할 일
안타깝게도 Spotify API에서 여러 가지 멋진 기능이 지원 중단되었습니다 . 대부분의 새로운 기능은 비교적 사소하거나 프로젝트 운영에 도움이 될 것입니다.
테스트.
재생목록 관리를 위한 API 지원 추가.
페이지별 검색 결과/재생 목록/앨범에 대한 API 지원 추가.
전개
(할 일)
건축 및 출판
배포를 위해 패키지를 준비하려면:
종속성 동기화 및 잠금 파일 업데이트:
uv sync패키지 배포 빌드:
uv build이렇게 하면 dist/ 디렉토리에 소스와 휠 배포판이 생성됩니다.
PyPI에 게시:
uv publish참고: 환경 변수나 명령 플래그를 통해 PyPI 자격 증명을 설정해야 합니다.
토큰:
--token또는UV_PUBLISH_TOKEN또는 사용자 이름/비밀번호:
--username/UV_PUBLISH_USERNAME및--password/UV_PUBLISH_PASSWORD
디버깅
MCP 서버는 stdio를 통해 실행되므로 디버깅이 어려울 수 있습니다. 최상의 디버깅 환경을 위해서는 MCP Inspector 사용을 강력히 권장합니다.
다음 명령을 사용하여 npm 통해 MCP Inspector를 시작할 수 있습니다.
npx @modelcontextprotocol/inspector uv --directory /Users/varun/Documents/Python/spotify_mcp run spotify-mcpInspector를 실행하면 브라우저에서 접근하여 디버깅을 시작할 수 있는 URL이 표시됩니다.
Available Tools
4 toolsSpotifyGetInfoC
Get detailed information about a Spotify item (track, album, artist, or playlist).
Inputs: item_id (required), qtype.
SpotifyPlaybackB
Manages the current playback with the following actions: - get: Get information about user's current track. - start: Starts of resumes playback. - pause: Pauses current playback. - skip: Skips current track.
Inputs: action (required), track_id, num_skips.
SpotifyQueueB
Manage the playback queue - get the queue or add tracks.
Inputs: action (required), track_id.
SpotifySearchB
Search for tracks, albums, artists, or playlists on Spotify.
Inputs: query (required), qtype, limit.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose with no overlap: GetInfo retrieves metadata, Playback controls active listening, Queue manages upcoming tracks, and Search finds new content. The separation between Playback (current track control) and Queue (future track management) is particularly well-defined.
All tools follow a perfect 'Spotify[Action]' naming pattern with consistent PascalCase throughout. The pattern is immediately recognizable and predictable across all four tools.
Four tools is ideal for this music streaming domain - it covers the essential workflows (discovery, playback control, queue management, and information lookup) without being overwhelming or sparse. Each tool earns its place in the set.
The toolset covers core Spotify functionality well with only minor gaps. Notable missing operations include playlist/library management (saving/removing tracks), volume control, and seeking within tracks, but the provided tools enable basic listening workflows.
Maintenance
Related MCP Connectors
Connect Claude to your Platform7n workspaces: chat, links, work and decks. One-click OAuth.
Connect Claude to your Platform7n workspaces: chat, links, work and decks. One-click OAuth.
Connect Claude to Fathom meeting recordings, transcripts, and summaries
Connect Claude to your Intervals.icu watch data for fitness, workout review, and plan writing.
Related MCP Servers
- AlicenseBqualityBmaintenanceConnects Claude with Spotify, allowing users to control playback, search for content, get music information, and manage the Spotify queue.48457 PyPI13MIT
- FlicenseNot gradedqualityDmaintenanceConnects Claude with Spotify to control playback, search music, get track information, and manage the queue through conversation.1-
- FlicenseAqualityDmaintenanceConnects Claude with Spotify, allowing users to control playback, search for music, get track/artist information, and manage the queue via the Spotify API.51-
- AlicenseNot gradedqualityDmaintenanceEnables Claude to control Spotify features including playback control, playlist management, search, and accessing user's listening history and preferences through the Spotify API.1ISC