Skip to content

Conversation

@Teagan42
Copy link
Contributor

@Teagan42 Teagan42 commented Oct 4, 2025

What

  • add Plex playback helpers and a play-media FastMCP tool that targets Plex clients by friendly name, machine id, or client id
  • extend configuration to accept Plex connection settings and JSON friendly-name mappings for clients
  • cover the new behaviour with configuration parsing tests and mocked playback integration tests
  • bump the project version metadata

Why

  • allow users to trigger playback for specific Plex players while supporting custom aliases for devices that report duplicate names

Affects

  • Plex server tooling, configuration parsing, automated tests, and package metadata

Testing

  • uv run ruff check .
  • uv run pytest

Documentation

  • Not needed

https://chatgpt.com/codex/tasks/task_e_68e0ff3a67148328b2baebe27bcc8041

Copilot AI review requested due to automatic review settings October 4, 2025 11:16
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Adds Plex playback capability with a new play-media tool, supporting player selection via friendly names, machine IDs, or client IDs, plus configurable aliases. Extends configuration to include Plex connection settings and alias parsing, with supporting tests and a version bump.

  • Add Plex playback utilities and play-media FastMCP tool
  • Extend Settings with Plex fields and alias JSON parsing
  • Add configuration and playback integration tests; bump version metadata

Reviewed Changes

Copilot reviewed 6 out of 7 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
mcp_plex/server.py Implements Plex playback logic, player discovery, identity caching, and new play-media tool.
mcp_plex/config.py Adds Plex-related settings and JSON alias parsing validator.
tests/test_server.py Adds playback integration tests (configuration required, alias resolution, capability enforcement).
tests/test_config.py Adds tests for alias parsing and invalid alias handling.
pyproject.toml Bumps project version for release.
docker/pyproject.deps.toml Mirrors version bump in Docker dependency metadata.

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@github-actions
Copy link

github-actions bot commented Oct 4, 2025

Coverage

Coverage Report
FileStmtsMissCoverMissing
mcp_plex
   config.py33682%50, 52–55, 58
   loader.py565699%198, 253, 255–257, 273
   server.py5922895%41–42, 117–118, 146, 250, 254, 275–278, 295, 353, 367, 385–386, 423, 1074, 1096–1102, 1138, 1156, 1161, 1179, 1303, 1340
TOTAL13644097% 

Tests Skipped Failures Errors Time
91 0 💤 0 ❌ 0 🔥 45.982s ⏱️

@Teagan42 Teagan42 merged commit 7bb482b into main Oct 4, 2025
4 checks passed
@Teagan42 Teagan42 deleted the codex/create-media-playback-tool-for-plex branch October 4, 2025 11:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants