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 的网络。
安装前请注意
每次工具调用都会消耗密钥的一次请求额度(歌单首页为两次),用量按次计费,付费套餐会产生费用。托管服务器可把密钥放在 URL 中,可能出现在日志里,建议改用 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 分