Token导航 LogoToken导航TokenDH.com
Playlist Matcher logo
音视频未说明官方级别未说明来源级核验

Playlist Matcher

MCP Server

Sortify是一款自动将Spotify收藏歌曲按艺术家和流派相似性分类到播放列表的工具,提供Web界面、自动调度和多用户支持。

工具数

7

提示词数

0

GitHub Stars

0

资源数

0
TypeScriptClaude机器学习Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

gauravdewani99

提供方

gauravdewani99

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

排序

根据艺术家和流派的相似性,自动将您的Spotify喜欢的歌曲排序到播放列表中。

特性

  • 网络界面 -漂亮的Spotify风格的仪表板,用于管理您的设置和查看比赛历史记录
  • 自动调度 -设置您喜欢的间隔和时间,其余的由Sortify处理
  • 基于类型的匹配 -使用艺术家流派、重叠检测和流行度进行智能匹配
  • 比赛历史 -跟踪已分类到播放列表中的所有歌曲
  • 多用户支持 -PostgreSQL后端用于生产部署
  • MCP集成 -还可以作为Claude Code的MCP服务器

运作原理

Sortify分析您最近喜欢的歌曲,并使用以下公式将其与现有播放列表进行匹配:

score = (artistOverlap × 0.35) +
        (genreOverlap × 0.25) +
        (weightedGenreScore × 0.25) +
        (popularitySimilarity × 0.15)
组件重量描述
艺术家重叠35%如果曲目艺术家出现在播放列表中,则直接匹配
类型重叠25%类型集的Jaccard相似性
加权流派25%播放列表中频繁出现的流派奖金
流行度15%与播放列表平均流行度相似的曲目

快速启动(地方发展)

1.获取Spotify API证书

  1. 首选 Spotify开发者仪表板
  2. 创建新应用程序
  3. 添加以下重定向URI:

- http://localhost:3001/api/auth/callback (适用于网络模式) - http://127.0.0.1:8888/callback (适用于MCP模式)

  1. 复制您的 客户端ID

2.安装并运行

# Install dependencies
npm install
cd web && npm install && cd ..

# Build
npm run build
cd web && npm run build && cd ..

# Set environment variable
export SPOTIFY_CLIENT_ID=your_client_id_here

# Run the web server
npm run web

3.打开应用程序

访问 http://localhost:5173 并使用Spotify登录。

生产部署

为了生产,您需要:

  • PostgreSQL 数据库
  • 后端 (例如,铁路)
  • 前端 (例如,Vercel)

环境变量

后端:

SPOTIFY_CLIENT_ID=your_client_id
DATABASE_URL=postgresql://...
REDIRECT_URI=https://your-backend.com/api/auth/callback
FRONTEND_URL=https://your-frontend.com
BETA_WHITELIST=user1@example.com,user2@example.com  # Optional: comma-separated emails for beta access

前端:

VITE_API_URL=https://your-backend.com

MCP模式(克劳德码)

Sortify还可以作为Claude Code的MCP服务器。

添加到您的 ~/.claude.json:

{
  "playlist-matcher": {
    "command": "node",
    "args": ["/path/to/playlist-matcher/dist/index.js"],
    "env": {
      "SPOTIFY_CLIENT_ID": "your_client_id_here"
    }
  }
}

MCP工具

工具说明
spotify_authorize启动OAuth登录流程
spotify_check_auth检查身份验证状态
spotify_get_liked_songs获取最近喜欢的歌曲
spotify_get_liked_songs_with_genres获取带有流派信息的喜欢歌曲
spotify_get_playlists获取您的播放列表
spotify_match_songs_to_playlists为每首喜欢的歌曲找到最佳播放列表
spotify_auto_organize_liked_songs匹配歌曲并将其添加到播放列表

项目结构

sortify/
├── src/                      # Backend (Express + MCP server)
│   ├── web-server.ts         # Express API server
│   ├── server.ts             # MCP server tools
│   ├── scheduler/            # Cron job runner
│   ├── matching/             # Matching algorithm
│   │   └── genre-matcher.ts  # Genre-based matching
│   ├── storage/              # Data persistence
│   │   ├── database.ts       # PostgreSQL setup
│   │   └── pg-*.ts           # PostgreSQL stores
│   ├── spotify/              # Spotify API client
│   └── auth/                 # OAuth handling
│
├── web/                      # Frontend (React + Vite)
│   └── src/
│       ├── components/       # React components
│       │   ├── Home.tsx      # Settings page
│       │   ├── NewDashboard.tsx  # Match history
│       │   └── About.tsx     # About page
│       └── api.ts            # API client
│
└── package.json

API终点

端点描述
GET /api/health正常运行时间和版本的健康检查
GET /api/auth/url获取OAuth URL
GET /api/auth/status检查是否经过身份验证
POST /api/auth/logout注销
GET /api/settings获取用户设置
POST /api/settings更新设置
GET /api/match-history获取比赛历史记录
POST /api/sync-now触发手动同步

许可证

麻省理工学院

目录标签

目录标签

TypeScriptClaude机器学习音乐管理本地部署自动化工具Spotify集成播放列表优化

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

oauth

工具数量(toolCount,工具数)

7

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明oauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP