Spotify Data

cc.checkleaked由 checkleaked.cc 發布官方發布者v0.1.1更新於 Nov 1, 2026

Spotify play counts, monthly listeners, charts, artist stats, albums, playlists and ISRC lookup.

已驗證Streamable HTTP可網頁執行資料與分析媒體與設計

概覽

AI 產生的概覽

唯讀的 Spotify 資料伺服器:曲目播放次數、藝人月聽眾與排名、榜單、專輯、播放清單和 ISRC 查詢,需自備 API 金鑰。

可以做什麼
  • 搜尋 Spotify 目錄中的曲目、藝人、專輯和播放清單,並取得搜尋結果對應的完整紀錄
  • 批次取得曲目詳情、累計播放次數,以及曲風、情緒、BPM 和製作人員等資訊
  • 取得藝人月聽眾、追蹤者、全球排名、熱門城市、藝人概覽、風格輪廓和相關藝人
  • 取得專輯及每首曲目的播放次數,以及可分頁讀取曲目和播放次數的播放清單
  • 取得各國 Top 200、病毒榜、熱門藝人和熱門專輯榜單,並依 ISRC 查找曲目
適用情境
適合讓助理回答 Spotify 熱度與目錄資料類問題,例如比較播放次數、查看藝人月聽眾或聽眾城市、讀取某國榜單,或把 ISRC 解析成曲目。
執行需求
可使用遠端端點,或以 uvx、pip 或 Docker 映像在本機執行。需要自備 API 金鑰並放入 SPOTIFY_API_KEY(託管伺服器可用 Authorization bearer 標頭),金鑰來自免費試用、RapidAPI spotify81 方案或直連付費金鑰;SPOTIFY_API_PROVIDER 可選指定服務商。需要能連線到所設定 API 的網路。
安裝前請注意
每次工具呼叫都會消耗金鑰的一次請求額度(播放清單首頁為兩次),用量按次計費,付費方案會產生費用。託管伺服器可把金鑰放在網址中,可能出現在日誌裡,建議改用 Authorization 標頭。金鑰會傳送給所設定的第三方 API。所有工具皆為唯讀。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Spotify Data,將其新增到工作區。
  2. 連接 Authorization token 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
  3. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/cc.checkleaked%2Fspotify-data/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "spotify-data": {
      "type": "http",
      "url": "https://spotify-proxy.checkleaked.cc/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

README

Spotify Data MCP Server

[PyPI] [Python] [License: MIT]

An MCP server that lets AI assistants (Claude Desktop, Claude Code, Cursor, VS Code and other MCP clients) look up Spotify data: track play counts, artist monthly listeners, world rank and top cities, Top 200 and viral charts by country, albums and playlists with per-track play counts, search, ISRC lookup, and genres, moods and BPM.

It runs on your machine and calls the CheckLeaked Spotify Data API with your own API key. A free trial key needs no card. Step-by-step guide: spotify.checkleaked.cc/spotify-mcp-server.

bash
uvx checkleaked-spotify-mcp# or, with Dockerdocker run -i --rm -e SPOTIFY_API_KEY=your-api-key ghcr.io/eduair94/spotify-data-mcp

Unofficial. Not affiliated with, endorsed by or sponsored by Spotify. Spotify is a trademark of Spotify AB.

Ask things like

  • "What are the monthly listeners of Bad Bunny and Karol G?"
  • "Give me the play counts of every track on this album: https://open.spotify.com/album/3RQQmkQEvNCY4prGKE6oc5"
  • "Show today's Top 200 in Brazil, top 20 only."
  • "Which cities listen to Taylor Swift the most?"
  • "Compare the streams of Blinding Lights and Bohemian Rhapsody."
  • "List the first 30 tracks of Today's Top Hits with their play counts, sorted by plays."
  • "What genres, moods and BPM does The Weeknd's music have?"
  • "Which Spotify track has the ISRC USUG11904206?"
  • "Who are the artists related to Rosalía, and how many monthly listeners does each have?"

1. Get an API key

Every user needs their own key. Pick one:

OptionCostWhereSPOTIFY_API_PROVIDER
Free trial: 500 requests over 7 days, no cardFreespotify.checkleaked.cc/pricing#trialdirect (detected automatically)
RapidAPI listing spotify81Free Basic plan, paid tiersrapidapi.com/airaudoeduardo/api/spotify81rapidapi (default)
Direct paid keyFrom the pricing pagespotify.checkleaked.cc/pricingdirect (detected automatically)

Keys issued by spotify.checkleaked.cc (they start with sapi_) are sent to the direct API automatically; any other key is treated as a RapidAPI key. Set SPOTIFY_API_PROVIDER only to override that.

2. Add it to your MCP client

The server is published on PyPI and runs with uvx (part of uv; install it with pip install uv or see the uv install guide). uvx downloads the package into a cached, isolated environment on first use. Replace your-api-key with your key in the snippets below.

No install: the hosted server (Claude.ai, ChatGPT, any remote MCP client)

The same 12 tools, plus a fetch tool for ChatGPT, are also hosted at https://spotify-proxy.checkleaked.cc/mcp (Streamable HTTP). It takes any of the keys above: keys from spotify.checkleaked.cc (they start with sapi_) are spent on the direct API, and any other key on RapidAPI's spotify81 listing, so a RapidAPI subscription works too. Add &provider=direct or &provider=rapidapi to the URL to choose.

  • Claude.ai (Settings → Connectors → Add custom connector) and ChatGPT (Settings → Connectors; also usable in deep research, which calls its search and fetch tools) cannot send custom headers, so put the key in the URL: https://spotify-proxy.checkleaked.cc/mcp?key=your-api-key. Treat that URL like a password.

  • Clients that can send headers use https://spotify-proxy.checkleaked.cc/mcp with Authorization: Bearer your-api-key. With Claude Code:

    bash
    claude mcp add --transport http spotify-data https://spotify-proxy.checkleaked.cc/mcp --header "Authorization: Bearer your-api-key"

Each tool call spends one request of your key, as a direct API call would.

Claude Desktop

Edit claude_desktop_config.json (Settings > Developer > Edit Config; macOS: ~/Library/Application Support/Claude/claude_desktop_config.json, Windows: %APPDATA%\Claude\claude_desktop_config.json) and restart Claude Desktop:

json
{  "mcpServers": {    "spotify-data": {      "command": "uvx",      "args": ["checkleaked-spotify-mcp"],      "env": {        "SPOTIFY_API_KEY": "your-api-key"      }    }  }}

If Claude Desktop cannot find uvx, put its full path in command (run which uvx on macOS / Linux or where uvx on Windows).

Claude Code

bash
claude mcp add spotify-data -s user -e SPOTIFY_API_KEY=your-api-key -- uvx checkleaked-spotify-mcp

Cursor

Add to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (one project):

json
{  "mcpServers": {    "spotify-data": {      "command": "uvx",      "args": ["checkleaked-spotify-mcp"],      "env": {        "SPOTIFY_API_KEY": "your-api-key"      }    }  }}

VS Code (GitHub Copilot agent mode)

Add to .vscode/mcp.json. VS Code asks for the key once and stores it securely:

json
{  "inputs": [    {      "type": "promptString",      "id": "spotify-api-key",      "description": "Spotify Data API key",      "password": true    }  ],  "servers": {    "spotify-data": {      "type": "stdio",      "command": "uvx",      "args": ["checkleaked-spotify-mcp"],      "env": {        "SPOTIFY_API_KEY": "${input:spotify-api-key}"      }    }  }}

Any other MCP client

Run uvx checkleaked-spotify-mcp (stdio transport) with SPOTIFY_API_KEY in its environment. Without uvx: pip install checkleaked-spotify-mcp, then run checkleaked-spotify-mcp (or python -m checkleaked_spotify_mcp).

Docker

The same server is published as a container image (linux/amd64 and linux/arm64):

bash
docker run -i --rm -e SPOTIFY_API_KEY=your-api-key ghcr.io/eduair94/spotify-data-mcp

In a client config, use "command": "docker" with "args": ["run", "-i", "--rm", "-e", "SPOTIFY_API_KEY", "ghcr.io/eduair94/spotify-data-mcp"] and SPOTIFY_API_KEY under env. Keep -i: the server speaks MCP over stdin and stdout.

Configuration

VariableRequiredDescription
SPOTIFY_API_KEYyesYour API key (see above).
SPOTIFY_API_PROVIDERnorapidapi (RapidAPI spotify81.p.rapidapi.com) or direct (https://spotify-proxy.checkleaked.cc/spotify-data). Default: detected from the key.
SPOTIFY_API_BASEnoOverride the base URL of the chosen provider.

Without a key the server still starts, and every tool answers with an error that says where to get a free key, so you can see what is wrong from inside your chat.

Tools

All tools are read-only. Every id parameter accepts a bare id, a spotify: URI or an open.spotify.com URL (with or without /intl-xx/ and ?si=).

ToolWhat it returnsBatchRequests
searchTracks, artists, albums or playlists matching a query, with ids and URLs (optionally play counts for tracks)up to 20 hits1
get_tracksTrack details: artists, album, release date, duration, ISRC, popularity, play count; optional genres / moods / BPM / credits50 tracks1
get_track_play_countLifetime play counts with name, artists, release date50 tracks1
get_track_insightsGenres, moods, activities (with weights), BPM, credits, lyrics flag, languages50 tracks1
get_artists_statsMonthly listeners, followers, world rank, popularity, genres, top 5 cities50 artists1
get_artist_overviewProfile with stats, top tracks with play counts, latest release, discography counts, related artists, biography, links1 artist1
get_artist_insightsGenre, mood and tempo profile from the artist's top tracks20 artists1
get_related_artists"Fans also like" artists1 artist1
get_albumAlbum details and every track with its play count, plus the album total1 album1
get_playlistName, owner, followers, description and up to 100 tracks per page with play counts100 tracks2 on the first page, then 1
get_chartTop 200, viral, top artists or top albums for a country (daily or weekly, latest or by date), optional play countsup to 200 entries1
isrc_lookupSpotify tracks for an ISRC1 ISRC1

Outputs are compact JSON: ids, names, numbers and open.spotify.com URLs, with lists capped, so they fit in the model's context. Notes:

  • Spotify shows a play count of 0 for tracks with fewer than 1,000 plays.
  • Play counts are lifetime plays; chart streams are the plays in that chart's day or week.
  • Results may be cached by the API for a while (play counts about an hour).
  • Lyrics, audio downloads, webhooks, tracking and AI endpoints of the API are deliberately not exposed.

Privacy

The server only talks to the API you configure (RapidAPI's spotify81.p.rapidapi.com or spotify-proxy.checkleaked.cc). It sends your key in the x-rapidapi-key header, stores nothing on disk and has no telemetry. Requests carry a checkleaked-spotify-mcp/<version> user agent.

The hosted server passes each tool call to the same API with your key and keeps no conversation data. A key sent in the URL can appear in request logs like any URL, so prefer the Authorization header where your client supports it.

Development

bash
git clone https://github.com/eduair94/spotify-data-mcpcd spotify-data-mcppython -m venv .venv && . .venv/bin/activate   # Windows: .venv\Scripts\activatepip install -e ".[dev]"pytest                                          # offline tests (recorded API answers)SPOTIFY_MCP_LIVE=1 SPOTIFY_API_KEY=... pytest -m live   # optional live smoke test

Built on the official MCP Python SDK and the checkleaked-spotify-api SDK. API reference: spotify-proxy.checkleaked.cc/docs. Service status: spotify.checkleaked.cc/status.

License

MIT

來源:README.md,提交 fbca604

工具

13

fetch

Fetch a Spotify record

The full record behind a search result: a track (play count, album, release date, genres, moods, BPM, credits), an artist (monthly listeners, followers, world rank, top cities, top tracks), an album (every track with play counts) or a playlist (details and its first 50 tracks with play counts). Takes an id from the search results (track:<id>, artist:<id>, album:<id>, playlist:<id>), a spotify: URI or an open.spotify.com URL.

輸入參數id必填

get_tracks

Get tracks

Track details for up to 50 tracks in one call: name, artists, album, release date, duration, explicit flag, popularity, ISRC and (by default) lifetime play count. include_insights adds genres, moods, activities, BPM, credits, lyrics flag and languages. A play count of 0 means fewer than 1,000 plays.

輸入參數tracks必填include_insightsinclude_play_counts

get_track_play_count

Track play counts

Lifetime Spotify play counts (streams) for up to 50 tracks in one call, with track name, artists and release date. The fastest way to compare streams. A play count of 0 means fewer than 1,000 plays.

輸入參數tracks必填

get_track_insights

Track genres, moods and BPM

Genres, moods and activities (with Spotify's 0-1 weights), tempo in BPM, credits (writers, producers), lyrics flag and vocal languages for up to 50 tracks.

輸入參數tracks必填

get_artists_stats

Artist monthly listeners and stats

Monthly listeners, followers, world rank, popularity, genres and top 5 cities (with listener counts) for up to 50 artists in one call.

輸入參數artists必填

get_artist_overview

Artist overview

One artist's profile: monthly listeners, followers, world rank, top cities, top tracks with play counts, latest release, discography counts, related artists, biography and social links.

輸入參數artist必填top_tracks

get_artist_insights

Artist genres, moods and BPM

An artist's sound profile from their top tracks: genres, moods and activities with 0-1 weights, and tempo (average, min, max BPM). Up to 20 artists per call.

輸入參數artists必填

get_album

Get album

An album with its track list and (by default) every track's lifetime play count, plus the album total, release date, label, UPC and popularity.

輸入參數album必填include_play_counts

get_playlist

Get playlist

A playlist's name, owner, followers and description, plus `limit` tracks (max 100) from `offset` with lifetime play counts. Use next_offset from the answer to page through long playlists (later pages skip the metadata and cost one request).

輸入參數limitoffsetplaylist必填include_play_counts

get_chart

Spotify charts

Spotify Charts by country: top_tracks (Top 200), viral_tracks (Viral 50, daily only), top_artists or top_albums. Each entry has rank, previous and peak rank, days (or weeks) on the chart, movement and, for top_tracks, the streams in that period. Defaults to the latest published daily chart.

輸入參數datechartlimitperiodcountryinclude_play_counts

isrc_lookup

Find tracks by ISRC

Find the Spotify track(s) for an ISRC (International Standard Recording Code), e.g. USUG11904206. Returns ids, names, artists, album and release date.

輸入參數isrc必填

版本歷史

1
  1. v0.1.1最新Nov 1, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分