这是一个提供访问 Last.fm 音乐数据库的 Model Context Protocol (MCP) 服务器。用 Swift 编写,它使 AI 助手能够搜索音乐、管理用户库以及提交播放记录。
# 全局安装
npm install -g scrobblercontext-mcp
# 设置你的 Last.fm API 凭证
export LASTFM_API_KEY="your_api_key_here"
export LASTFM_SECRET_KEY="your_secret_key_here"
# 运行服务器
scrobblercontext-mcp
http://localhost:8080/callback(用于 OAuth)添加到你的 claude_desktop_config.json:
{
"mcpServers": {
"lastfm": {
"command": "scrobblercontext-mcp",
"env": {
"LASTFM_API_KEY": "your_api_key_here",
"LASTFM_SECRET_KEY": "your_secret_key_here"
}
}
}
}
配置文件位置:
~/Library/Application Support/Claude/claude_desktop_config.json添加到你的 MCP 设置:
{
"mcpServers": {
"lastfm": {
"command": "scrobblercontext-mcp",
"env": {
"LASTFM_API_KEY": "your_api_key_here",
"LASTFM_SECRET_KEY": "your_secret_key_here"
}
}
}
}
该服务器通过 stdio 按照 Model Context Protocol 标准进行通信。配置你的客户端以:
scrobblercontext-mcp 作为服务器命令与 Last.fm 认证:
用户: "与 Last.fm 认证"
助手: [使用 authenticate_browser 工具启动 OAuth 流程]
搜索音乐:
用户: "找到与 Radiohead 类似的艺术家"
助手: [使用 get_similar_artists 工具查找推荐]
提交播放记录:
用户: "提交 '波西米亚狂想曲' 由皇后乐队"
助手: [使用 scrobble_track 工具提交到你的个人资料]
前提条件:
从源代码构建:
git clone https://github.com/tfmart/ScrobblerContext
cd ScrobblerContext
swift build
export LASTFM_API_KEY="your_api_key_here"
export LASTFM_SECRET_KEY="your_secret_key_here"
swift run ScrobblerContext
authenticate_browser - 在浏览器中启动 OAuth 流程set_session_key - 设置现有会话密钥check_auth_status - 检查认证状态restore_session - 恢复保存的会话logout - 清除认证search_artist - 搜索艺术家get_artist_info - 获取艺术家详情及传记get_similar_artists - 查找相似艺术家get_artist_correction - 获取纠正后的艺术家名称get_artist_tags - 获取艺术家标签get_artist_top_albums - 获取艺术家的热门专辑get_artist_top_tracks - 获取艺术家的热门曲目add_artist_tags - 添加个人标签(需要认证)remove_artist_tag - 移除个人标签(需要认证)search_album - 搜索专辑get_album_info - 获取专辑详情及曲目列表
-_ get_album_tags - 获取专辑标签get_album_top_tags - 获取热门专辑标签add_album_tags - 添加个人标签(需要认证)remove_album_tag - 移除个人标签(需要认证)search_track - 搜索曲目get_track_info - 获取曲目详情get_similar_tracks - 查找相似曲目get_track_correction - 获取纠正后的曲目信息get_track_tags - 获取曲目标签get_track_top_tags - 获取热门曲目标签add_track_tags - 添加个人标签(需要认证)remove_track_tag - 移除个人标签(需要认证)get_user_info - 获取用户资料及统计数据get_user_recent_tracks - 获取最近的收听历史get_user_top_artists - 获取按时间段划分的顶级艺术家get_user_top_tracks - 获取按时间段划分的顶级曲目get_user_top_albums - 获取按时间段划分的顶级专辑get_user_top_tags - 获取最常用的标签get_user_friends - 获取好友列表get_user_loved_tracks - 获取喜爱的曲目get_user_personal_tags_for_artists - 获取标记的艺术家scrobble_track - 提交单个曲目播放scrobble_multiple_tracks - 提交多个播放update_now_playing - 更新当前播放状态love_track - 将曲目标记为喜爱unlove_track - 从喜爱的曲目中移除欢迎贡献!请参阅 CONTRIBUTING.md 了解指南。
未找到 Swift:从 swift.org 安装 Swift
无效的会话密钥:重新运行认证 authenticate_browser
API 键错误:验证你的 LASTFM_API_KEY 和 LASTFM_SECRET_KEY 是否正确
服务器断开连接:检查 MCP 客户端配置中的环境变量是否已设置
MIT 许可证 - 详情见 LICENSE 文件。