Sonos MCP 服务器
该项目是一个 Sonos MCP(模型上下文协议)服务器,允许您控制并与网络上的 Sonos 设备交互。它提供各种功能,例如发现设备、控制播放、检索设备状态和管理队列。
特征
发现网络上的 Sonos 设备
检索和控制设备的播放状态
管理播放队列
将功能公开为 MCP 工具
Related MCP server: MCP SNS Server
要求
Python 3.7+
uv用于管理 Python 项目
安装
克隆存储库:
git clone https://github.com/WinstonFassett/sonos-mcp-server.git cd sonos-mcp-server使用
uv安装所需的依赖项:uv sync
用法
运行服务器
标准输入输出系统
使用 stdio 运行服务器:
带有超级网关的 SSE
使用supergateway工具通过 SSE 运行服务器:
或者,您可以使用存储库中提供的便捷脚本:
发展
要使用 MCP Inspector 以“开发”模式运行服务器:
此命令承载 MCP 检查器以用于测试和调试目的。
要在开发模式下使用 SSE 运行服务器,请使用 supergateway 的 SSE 命令,然后在第二个终端窗口中运行:
可用的 MCP 工具
使用公开的 MCP 工具与 Sonos 设备交互。可用的工具包括:
get_all_device_states:检索所有已发现的 Sonos 设备的状态信息。now_playing:检索有关所有 Sonos 设备上当前播放曲目的信息。get_device_state:检索特定 Sonos 设备的状态信息。pause、stop、play:控制 Sonos 设备上的播放。next、previous:跳过 Sonos 设备上的曲目。get_queue、get_queue_length:管理 Sonos 设备的播放队列。mode:获取或设置 Sonos 设备的播放模式。partymode:在当前 Sonos 设备上启用派对模式。speaker_info:检索 Sonos 设备的扬声器信息。get_current_track_info:检索 Sonos 设备的当前曲目信息。volume:获取或设置 Sonos 设备的音量。skip、play_index、remove_index_from_queue:管理 Sonos 设备队列中的曲目。
执照
本项目遵循 MIT 许可证。详情请参阅LICENSE文件。