FastMCP 3.2+ server for Jellyfin Media Server — open-source Plex alternative with plugins, WebSocket real-time events, and full OpenAPI. Includes React webapp + Tauri native wrapper.
Single tool 'jellyfin_server' with a portmanteau design combining 9 distinct operations (status, info, health, logs, restart, shutdown, updates, tasks, transcode_queue) into one tool. Input schema is present with proper types and enums, but the tool violates single-responsibility principle. Description is adequate (95 chars) but generic. No output schema documented. Tool name does not start with action verb and masks multiple concerns behind an 'operation' enum. This pattern forces LLMs to reason about which operation to invoke rather than selecting a tool by name.
Query and manage Jellyfin server: status, info, health, logs, restart, shutdown, updates, scheduled tasks, and transcode queue.
Tool combines 9 distinct operations (status, info, health, logs, restart, shutdown, updates, tasks, transcode_queue) into a single portmanteau tool with an 'operation' enum. Violates single-responsibility principle. LLMs cannot infer intent from tool name alone; must read description and reason about which operation to select.
Tool name 'jellyfin_server' does not start with action verb (get_, create_, update_, delete_, search_, list_). Baseline: 90% of A+ tools start with action verb. This makes tool discovery and intent inference harder for LLMs.
No output schema documented. LLMs cannot plan downstream operations or extract required fields. Pattern requires documenting return types for all tools.
Parameter 'task_id' is nullable and only required for 'task_run' operation, but this dependency is not documented in the parameter description. Undocumented parameter relationships cause silent misuse.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 43 | <=2025-11-25 | v2 |
Tool marked as WRITE risk but no error handling guidance provided. No recovery hints for destructive operations (restart, shutdown). Agents need to know what to do if an operation fails.