plex_streaming
Control Plex media playback and manage active sessions. List clients, play or pause media, seek, skip, and adjust volume across devices.
Instructions
Comprehensive playback control and session management operations for Plex Media Server.
PORTMANTEAU PATTERN RATIONALE: Consolidates session monitoring, client discovery, and remote playback control into a single tool.
OPERATIONS:
list_sessions: List all active sessions with client and playback details.
list_clients: List all available Plex clients for remote control.
play: Start media playback on a specific client (auto-selects if omitted).
pause/stop: Control current playback state on a client.
seek: Jump to a specific position (milliseconds) in the media.
skip_next/skip_previous: Navigate through the play queue.
set_volume: Adjust the playback volume (0-100) on a client.
control: Generic playback control for custom actions (e.g., step_forward).
Return Format
{"success": bool, "operation": str, "data": dict, "count": int | None, "error": str | None}
Examples
await plex_streaming(operation="list_sessions") await plex_streaming(operation="play", client_id="abc123", media_key="12345") await plex_streaming(operation="seek", client_id="abc123", seek_to=60000)
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | Playback action for the control operation (play, pause, stop, etc.). | |
| offset | No | Offset in seconds for skip operations. | |
| volume | No | Volume level (0-100) for set_volume operation. | |
| quality | No | Stream quality setting (e.g., '1080p', '720p', '480p'). | |
| seek_to | No | Position in milliseconds to seek to. | |
| client_id | No | Machine identifier of the target Plex client. | |
| media_key | No | Media key (rating key) of the item to stream. | |
| operation | Yes | The streaming operation to perform. |