MCP server that gives AI agents the ability to search content, manage watchlists, get recommendations, and browse Netflix.
13 tools with consistent naming (verb_noun pattern: netflix_*) and basic descriptions. All tools have input schemas with required fields properly declared. However, descriptions are generic (avg ~80 chars, well below the 194-char baseline for A+ tools) and lack actionable context. Parameter descriptions are minimal, most are 1-2 sentences without format constraints, ranges, or dependency hints. No output schemas documented. Error handling is absent from tool definitions. Missing idempotency guidance for write operations. Tools like netflix_search and netflix_browse_genre lack enum constraints for valid inputs (genre values, search scope). No pagination parameters despite tools returning lists (my_list, history, recommendations, continue_watching). Composition is sound, each tool has one responsibility, but chaining is weak: search returns contentId but details don't clarify what fields are returned, forcing agents to guess.
Add a movie or TV show to My List.
Check if user is logged in to Netflix. Returns login status and instructions if not authenticated. Call this before any other Netflix operations.
Clear stored Netflix session cookies. Use this to log out or reset authentication state.
Browse content by genre (e.g., 'action', 'comedy', 'documentary').
Get the Continue Watching list - shows and movies in progress.
Get detailed information about a movie or TV show, including cast, description, and episodes.
No output schemas documented. Tools return JSON but LLMs cannot plan downstream calls without knowing response structure (e.g., does netflix_search return contentId, title, year, rating?). Agents must guess field names.
List-returning tools lack pagination. netflix_my_list, netflix_history, netflix_recommendations, netflix_continue_watching have no limit/offset/page parameters. Large result sets will blow context windows.
Parameter descriptions are minimal (avg 1-2 sentences). netflix_search 'query' lacks format guidance (title only? actor names? genre keywords?). netflix_browse_genre 'genre' has no enum constraint, LLM will hallucinate invalid genres.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2026-07-28+ | v2 |
Get the user's viewing history.
Get the user's My List (watchlist) of saved content.
Get list of Netflix profiles on the account.
Get personalized recommendations based on viewing history.
Remove a movie or TV show from My List.
Search for movies and TV shows on Netflix.
Switch to a different Netflix profile.
Write operations (netflix_add_to_list, netflix_remove_from_list, netflix_auth_clear) lack idempotency guidance and confirmation patterns. No dry-run or confirmation step to prevent accidental data loss.
Tool descriptions lack dependency hints and recovery guidance. netflix_auth_check says 'call this before other operations' but no tool description explains what to do if auth fails or how to recover.