
gaegeroot/spotify-mcp
Developer tools이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
MCP Server to interact with public and personal Spotify data through AI Clients with natural language
개요
A Model Context Protocol (MCP) server that lets an MCP client search Spotify's track catalog and access the connected user's recently played tracks. - Node.js and npm - A Spotify account - A Spotify app created in the Spotify Developer Dashboard In your Spotify app settings, add this exact Redirect URI: The server uses Spotify's client credentials flow to search the catalog, and OAuth authorization with the user-read-recently-played permission to read listening history. 1. Install dependencies and compile the TypeScript source: 2. Provide your Spotify app's client ID and client secret to the MCP server as SPOTIFY_CLIENT_ID and SPOTIFY_CLIENT_SECRET. This repository includes a VS Code MCP configuration at .vscode/mcp.json. When VS Code prompts for the server inputs, enter the client ID and secret from your Spotify app. The secret input is masked. For another MCP client, configure a stdio server that runs node /absolute/path/to/spotify-mcp/build/index.
README
원문 README의 일부입니다. 원문 보기.
Spotify MCP
A Model Context Protocol (MCP) server that lets an MCP client search Spotify’s track catalog and access the connected user’s recently played tracks.
Requirements
- Node.js and npm
- A Spotify account
- A Spotify app created in the Spotify Developer Dashboard
In your Spotify app settings, add this exact Redirect URI:
http://127.0.0.1:8080/callback
The server uses Spotify’s client credentials flow to search the catalog, and
OAuth authorization with the user-read-recently-played permission to read
listening history.
Setup
-
Install dependencies and compile the TypeScript source:
npm ci npm run build -
Provide your Spotify app’s client ID and client secret to the MCP server as
SPOTIFY_CLIENT_IDandSPOTIFY_CLIENT_SECRET.This repository includes a VS Code MCP configuration at
.vscode/mcp.json. When VS Code prompts for the server inputs, enter the client ID and secret from your Spotify app. The secret input is masked.For another MCP client, configure a stdio server that runs
node /absolute/path/to/spotify-mcp/build/index.jsand pass both variables in that server’s environment. Do not commit credentials or put them in source files. -
Start the
spotify-mcpserver from your MCP client. The first time you need listening history, callspotify_connectand open the returned URL in a browser. Once Spotify confirms the connection, return to your MCP client.
The refresh token is saved locally at
~/.config/spotify-mcp/token.json with restrictive file permissions. You
normally only need to connect once; use spotify_connect again if access
needs to be restored.
Available tools
spotify_connect
Starts Spotify account authorization and returns a URL to open in a browser.
The local callback listener uses 127.0.0.1:8080.
search_tracks
Searches Spotify’s track catalog by track, artist, or album terms.
query(string, required): Search terms.limit(integer, optional): Number of results, from 1 to 10; defaults to 5.
Requires both Spotify environment variables. Does not require connecting a user account.
get_recently_played
Returns recently played tracks for the connected Spotify account, including artist, play time, and Spotify link.
limit(integer, optional): Number of results, from 1 to 50; defaults to 20.after(integer, optional): Unix timestamp in milliseconds; return plays after this time.before(integer, optional): Unix timestamp in milliseconds; return plays before this time.
Specify at most one of after and before. This tool requires the user to
have completed spotify_connect.
Development
The TypeScript source is in src/; npm run build emits runnable JavaScript
into build/. The server communicates over stdio, so start it through an MCP
client rather than as an interactive command-line application.
License
설치
This server does not publish a one-line install command.
Open the repository installation guide MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →