ScrobblerContext-Last.fm MCP服务器
](https://badge.fury.io/js/scrobblercontext-mcp)   
一种模型上下文协议(MCP)服务器,提供对Last.fm音乐数据库的访问。内置Swift,它使AI助手能够搜索音乐、管理用户库和滚动曲目。
目录
特性
- 认证:具有会话持久性的安全浏览器OAuth流
- 艺人运营:搜索艺术家,获取详细信息,找到相似的艺术家
- 相册操作:搜索专辑,获取曲目列表和元数据
- 轨道运行:搜索曲目,获取详细信息和建议
- 用户数据:访问收听历史、统计数据和社交功能
- 拼字游戏:提交曲目播放,更新当前播放状态,爱/不爱曲目
快速开始
通过npm安装(推荐)
# Install globally
npm install -g scrobblercontext-mcp
# Set up your Last.fm API credentials
export LASTFM_API_KEY="your_api_key_here"
export LASTFM_SECRET_KEY="your_secret_key_here"
# Run the server
scrobblercontext-mcp获取Last.fm API凭据
- 访问 Last.fm API帐户创建
- 填写申请详情:
- 应用程序名称:您的应用程序名称(例如“我的MCP服务器”) - 用途说明:简要说明 - 应用程序主页URL:您的网站(可以是GitHub仓库) - 回调URL: http://localhost:8080/callback (适用于OAuth)
- 保存您的 API密钥 和 共享的秘密
使用MCP客户端进行设置
克劳德桌面
添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"lastfm": {
"command": "scrobblercontext-mcp",
"env": {
"LASTFM_API_KEY": "your_api_key_here",
"LASTFM_SECRET_KEY": "your_secret_key_here"
}
}
}
}配置文件位置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%/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"
}
}
}
}其他MCP客户端
服务器通过以下方式进行通信 标准 遵循模型上下文协议标准。将您的客户端配置为:
- 执行
scrobblercontext-mcp作为服务器命令 - 设置所需的环境变量
- 使用stdio传输
使用示例
使用Last.fm进行身份验证:
User: "Authenticate with Last.fm"
Assistant: [Uses authenticate_browser tool to start OAuth flow]搜索音乐:
User: "Find artists similar to Radiohead"
Assistant: [Uses get_similar_artists tool to find recommendations]Scrobble轨迹:
User: "Scrobble 'Bohemian Rhapsody' by Queen"
Assistant: [Uses scrobble_track tool to submit to your profile]手动安装
先决条件:
- Swift 6.0+(下载)
- macOS 13.0+或支持Swift的Linux
- 上次.fm API证书
从源代码构建:
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可用工具
Authentication Tools (5)
authenticate_browser-在浏览器中启动OAuth流set_session_key-设置现有会话密钥check_auth_status-检查身份验证状态restore_session-恢复已保存的会话logout-清除身份验证
Artist Tools (9)
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-删除个人标签(需要身份验证)
Album Tools (6)
search_album-搜索相册get_album_info-获取专辑详细信息和曲目列表get_album_tags-获取相册标签get_album_top_tags-获取热门专辑标签add_album_tags-添加个人标签(需要身份验证)remove_album_tag-删除个人标签(需要身份验证)
Track Tools (8)
search_track-搜索曲目get_track_info-获取曲目详细信息get_similar_tracks-查找相似的轨迹get_track_correction-获取正确的曲目信息get_track_tags-获取曲目标签get_track_top_tags-获取热门曲目标签add_track_tags-添加个人标签(需要身份验证)remove_track_tag-删除个人标签(需要身份验证)
User Tools (9)
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 Tools (5)
scrobble_track-提交单曲播放scrobble_multiple_tracks-提交多个剧本update_now_playing-更新当前轨道状态love_track-将曲目标记为喜爱unlove_track-从喜爱的曲目中删除
贡献
欢迎投稿!请看 贡献.md 作为指导方针。
文档
故障排除
未找到Swift:从安装Swift swift.org
会话密钥无效:使用重新运行身份验证 authenticate_browser
API关键错误:验证您的 LASTFM_API_KEY 和 LASTFM_SECRET_KEY 是正确的
服务器断开连接:检查MCP客户端配置中是否设置了环境变量
许可证
MIT许可证-请参阅 许可证 文件以获取详细信息。
致谢
- 最后一分钟 用于音乐数据API
- ScrobbleKit Swift Last.fm SDK
- 模型上下文协议 通信标准

