Skip to main content
Glama

get_recommendations

Analyze your Plex watch history to score unwatched films and deliver personalized recommendations, with per-user support and optional Trakt rating refinement.

Instructions

Get personalized movie recommendations from your Plex library based on watch history. Analyzes genres, directors, and actors you've watched to score unwatched films. Supports per-user recommendations for multi-user Plex servers. If Trakt is configured, uses your rating profile to further refine scores.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
libraryKeyYesLibrary section key (required — use get_libraries to find it)
limitNoNumber of recommendations to return (default: 10)
userIdNoPlex account ID for per-user recommendations. Omit to use the server owner. Use get_user_stats to find user IDs.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses key behaviors: it analyzes watch history, genres, directors, actors; scores unwatched films; supports per-user recommendations; and integrates with Trakt for refined scoring. Since no annotations are provided, the description carries full burden—it adequately conveys read-only intent and data usage, though performance or error handling details are omitted.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise—four sentences that efficiently convey purpose, mechanism, and conditional behavior without redundant information. It front-loads the primary action and then adds secondary details, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that there is no output schema, the description covers the main inputs and behavior. It explains what the tool does with the provided parameters (libraryKey, limit, userId) and notes optional Trakt integration. However, it does not describe the return format (e.g., list of movie titles with scores) or any edge cases (e.g., no unwatched films). Still, it is sufficient for basic usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage with detailed parameter descriptions (e.g., libraryKey hint to use get_libraries, userId hint to use get_user_stats). The tool description adds context about per-user functionality and Trakt refinement but does not introduce new parameter-specific semantics beyond what the schema already provides. Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get personalized movie recommendations from your Plex library based on watch history.' It specifies the verb (get), resource (movie recommendations from Plex library), and scope (based on watch history, genres, directors, actors). This distinguishes it from sibling tools like get_popular_content or get_recently_watched, which are not personalized.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context (personalized recommendations for unwatched films) and mentions conditions like 'If Trakt is configured,' but it does not explicitly state when to use this tool versus alternatives such as get_popular_content or search_media. It lacks guidance on when not to use it or what prerequisites are needed beyond library key.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

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/niavasha/plex-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server