音乐助手MCP服务器
用于控制的MCP(模型上下文协议)服务器 音乐助手 -管理多房间音频、播放队列和跨音乐提供商搜索。
先决条件
安装
无需本地安装。配置您的MCP客户端,使其直接从GitHub运行 uvx:
{
"mcpServers": {
"music-assistant": {
"command": "uvx",
"args": [
"--from", "git+https://github.com/davidpadbury/music-assistant-mcp",
"music-assistant-mcp"
],
"env": {
"MUSIC_ASSISTANT_URL": "http://your-server:8095",
"MUSIC_ASSISTANT_TOKEN": "your_token_here"
}
}
}
}将此配置添加到:
- 克劳德桌面版:
~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或%APPDATA%\Claude\claude_desktop_config.json(Windows) - 克劳德代码:
~/.claude.json - 光标:设置>MCP
快速开始
- 列出发言者名单:使用
ma_list_players查看所有发言者及其当前状态 - 搜索音乐:使用
ma_search通过查询查找歌曲、专辑、艺术家或播放列表 - 播放音乐:使用
ma_play_media具有来自搜索结果的URI和玩家ID - 控制播放:使用
ma_playback播放、暂停、跳过或查找
可用工具
玩家工具
| 工具 | 目的 |
|---|---|
ma_list_players | 列出所有扬声器的音量、状态和组信息 |
ma_volume | 设置音量级别(0-100),向上/向下调整,或静音/取消静音 |
ma_group | 将演讲者分组或取消分组 |
播放工具
| 工具 | 目的 |
|---|---|
ma_playback | 控制播放:播放、暂停、停止、切换、下一个、上一个、查找 |
ma_play_media | 在带有队列选项(播放、替换、下一步、添加)的播放器上播放媒体URI |
队列工具
| 工具 | 目的 |
|---|---|
ma_queue | 获取队列内容、设置shuffle/repeat或清除队列 |
ma_queue_item | 移动或删除队列中的特定项目 |
ma_transfer_queue | 将播放从一个播放器转移到另一个播放器 |
音乐库工具
| 工具 | 目的 |
|---|---|
ma_search | 搜索艺术家、专辑、曲目、播放列表或广播电台 |
ma_browse | 按层次浏览音乐提供商内容 |
常见工作流
在扬声器上播放音乐
1. ma_list_players() → Get player IDs
2. ma_search(query="Beatles Abbey Road") → Find the album, get URI
3. ma_play_media(queue_id="living_room", media="spotify://album/xxx")多房间音频组扬声器
1. ma_list_players() → See available speakers
2. ma_group(action="join", player_ids=["kitchen", "bedroom"], target_player_id="living_room")
3. Now all three speakers play in sync添加到当前队列
1. ma_search(query="Bohemian Rhapsody", media_types=["track"])
2. ma_play_media(queue_id="living_room", media="spotify://track/xxx", option="add")控制正在播放的内容
- Pause: ma_playback(queue_id="living_room", command="pause")
- Skip: ma_playback(queue_id="living_room", command="next")
- Volume: ma_volume(player_id="living_room", level=50)将播放转移到另一个房间
ma_transfer_queue(source_queue_id="living_room", target_queue_id="kitchen")
→ Music moves to kitchen, continuing from the same position了解ID
- player_id:标识说话者(例如“living_room”)。获取自
ma_list_players - queue_id:通常与player_id相同。每个玩家都有自己的队列
- item_id:标识队列中的轨迹。获取自
ma_queue - 统一资源标识符:标识媒体项目(例如,“spotify://track/abc123“)
ma_search或ma_browse
提示
- 总是打电话
ma_list_players首先发现可用的扬声器及其ID - 使用
ma_search在尝试播放之前先找到媒体 - 在对演讲者进行分组时
target_player_id成为组长 - 队列ID通常与玩家ID相同
- 使用
option="add"随着ma_play_media在不中断当前播放的情况下添加到队列
许可证
麻省理工学院
