sonos-ts-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| prompts | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| sonos_discoverA | Actively scan the network for Sonos devices using SSDP. Always call this when the sonos_list_devices tool returns empty or you are missing a device. Returns device UUID, IP address, room name, model, and firmware version. Use room name to communicate with the user. |
| sonos_add_deviceA | Manually add a Sonos device by IP address. Use when SSDP discovery fails due to network restrictions or firewall rules. Device must be network-accessible on port 1400. |
| sonos_list_devicesA | List devices currently in the registry. Note: Call sonos_discover first to populate the registry if a device is not found in the current registry. Returns UUID, IP address, room name, model, and software version of registered devices. Use room name to communicate with the user. |
| sonos_playA | Start or resume playback on a Sonos device. Continues from current queue position and respects volume settings. If device is in a group, affects entire group. |
| sonos_pauseA | Pause playback on a Sonos device. Maintains current position in track and queue for quick resume. If device is in a group, affects entire group. |
| sonos_stopA | Stop playback on a Sonos device. Clears playback state, unlike pause which maintains position. |
| sonos_nextA | Skip to next track in the queue. |
| sonos_previousA | Skip to previous track or restart current track if played more than a few seconds. |
| sonos_get_transport_infoB | Get current transport state (playing, paused, stopped) and playback speed. |
| sonos_get_position_infoB | Get current track information, position, and duration. Includes track metadata like title, artist, album. |
| sonos_get_queueA | Retrieve the current playback queue with track information. Supports pagination for large queues. |
| sonos_add_to_queueC | Add a track URI to the playback queue. Supports music library URIs and streaming service URIs. Optional metadata in DIDL-Lite XML format. |
| sonos_remove_from_queueA | Remove a track from the queue at the specified position. |
| sonos_clear_queueA | Remove all tracks from the queue. Does not stop current playback. |
| sonos_play_from_queueB | Start playing from the queue at a specific position. |
| sonos_save_queueB | Save the current queue as a Sonos playlist with the specified title. |
| sonos_set_shuffleB | Enable or disable shuffle mode for queue playback. |
| sonos_set_repeatA | Set repeat mode for queue playback. Options: off (no repeat), all (repeat entire queue), one (repeat current track). |
| sonos_set_crossfadeB | Enable or disable crossfade between tracks. Crossfade creates smooth transitions between songs. |
| sonos_get_playback_stateA | Get current playback settings including shuffle, repeat, crossfade, transport state, and speed. |
| sonos_set_volumeA | Set volume level on a Sonos device. Range: 0 (silent) to 100 (maximum). Affects entire group if device is grouped. |
| sonos_get_volumeB | Get current volume level from a Sonos device. |
| sonos_set_muteA | Mute or unmute a Sonos device. Mute preserves volume level for quick unmute. |
| sonos_set_bassA | Set bass EQ level. Range: -10 (reduced bass) to +10 (enhanced bass). |
| sonos_set_trebleA | Set treble EQ level. Range: -10 (reduced treble) to +10 (enhanced treble). |
| sonos_set_loudnessA | Enable or disable loudness compensation. Loudness boosts bass and treble at low volumes for better sound quality. |
| sonos_get_eqA | Get current EQ settings including bass, treble, and loudness. |
| sonos_set_night_modeA | Set night mode for home theater devices. Reduces loud sounds and enhances quiet sounds for late-night viewing. |
| sonos_set_dialog_modeA | Set dialog enhancement for home theater devices. Enhances speech clarity in movies and TV shows. |
| sonos_get_zone_groupsA | Get zone group topology showing which devices are grouped together and their coordinator. |
| sonos_join_groupA | Join a device to another device's group for synchronized multi-room playback. The device will follow the master's playback. |
| sonos_unjoinA | Remove a device from its current group, making it a standalone player. |
| sonos_party_modeA | Join all discovered devices to the specified device to create a whole-house audio experience. |
| sonos_browse_artistsB | Browse artists in the music library. Supports pagination for large collections. |
| sonos_browse_albumsB | Browse albums in the music library. Supports pagination for large collections. |
| sonos_browse_tracksB | Browse all tracks in the music library. Supports pagination for large collections. |
| sonos_browse_genresA | Browse music genres in the library. Supports pagination for large collections. |
| sonos_browse_playlistsB | Browse Sonos playlists. Supports pagination for large collections. |
| sonos_get_favorite_radio_stationsA | Get favorite radio stations from Sonos favorites. Returns a list of saved radio stations with their metadata and streaming URIs. |
| sonos_search_libraryB | Search the music library by artist, album, track, or genre. Returns matching items. |
| sonos_browse_itemA | Browse a specific library item to get its children. For example, get albums for an artist or tracks for an album. |
| sonos_list_alarmsA | List all configured alarms including their schedule, enabled status, and room assignments. |
| sonos_create_alarmB | Create a new alarm with specified time, days, music source, and settings. Returns the alarm ID. |
| sonos_update_alarmB | Update an existing alarm. Only specified fields will be changed. |
| sonos_delete_alarmA | Delete an existing alarm permanently. |
| sonos_set_sleep_timerA | Set a sleep timer to automatically stop playback after the specified duration. Format: HH:MM:SS (e.g., "00:30:00" for 30 minutes). |
| sonos_get_sleep_timerA | Get remaining sleep timer duration. Returns empty if no timer is active. |
| sonos_cancel_sleep_timerB | Cancel the active sleep timer. |
| sonos_snapshotA | Take a snapshot of current device state including playback, volume, and EQ settings. Returns snapshot data for later restoration. |
| sonos_restore_snapshotA | Restore a previously saved snapshot to return device to its captured state. Optionally fade in volume. |
| sonos_subscribe_eventsB | Subscribe to real-time events from a Sonos device service to receive automatic notifications of state changes. |
| sonos_unsubscribe_eventsA | Unsubscribe from a specific event subscription to stop receiving notifications. |
| sonos_unsubscribe_allA | Unsubscribe from all active event subscriptions for a specific device. |
| sonos_list_subscriptionsA | List all active event subscriptions for a device including subscription IDs and services. |
| sonos_list_music_servicesA | List all available music services (Sonos Radio, TuneIn, Spotify, etc.) registered with the Sonos system. Returns service details including name, ID, and authentication type. IMPORTANT: Most services require authentication (authType: DeviceLink or AppLink) and will not work unless the user has linked their account through the Sonos app. Only "Anonymous" services work without authentication. |
| sonos_browse_music_serviceA | Browse content from a music service. WARNING: Most services (especially Sonos Radio, Spotify, Apple Music) require authentication and will return empty results or errors if not authenticated. Check authType from sonos_list_music_services first. Only "Anonymous" services (like SomaFM Radio) are guaranteed to work. Use sonos_get_favorite_radio_stations instead for pre-configured radio stations. |
| sonos_search_music_serviceA | Search for content within a music service. WARNING: Requires authentication for most services. Will return errors if the service requires DeviceLink or AppLink authentication and the user has not linked their account in the Sonos app. Prefer sonos_get_favorite_radio_stations for radio content. |
| sonos_play_music_service_itemA | Play a specific item from a music service such as a radio station, track, album, or playlist. Use the item ID from browse or search results. |
| sonos_get_music_service_item_uriA | Get the playable streaming URI for a specific music service item. This is useful for debugging or inspecting the actual stream URL. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| sonos-agent-instructions | Instructions for AI agents on how to properly control Sonos devices using the MCP tools |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Tommertom/sonos-ts-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server