Movie information assistant MCP server that provides tools for searching movies, getting details and ratings from OMDb, and querying current/upcoming releases from TMDb. Includes a web UI and CLI agent powered by local LLM (Ollama) or OpenRouter.
CineMCP demonstrates solid tool design with clear naming conventions (verb_noun pattern: search_movie, movie_details, movie_ratings) and comprehensive descriptions (avg 180-220 chars, well above 10-char minimum). All 8 tools have documented input schemas with type definitions and parameter descriptions. However, output schemas are documented only in docstrings, not in formal JSON Schema format. Error handling is present but generic ('Unexpected error' messages lack recovery guidance). Tool composition is clean, each tool has a single responsibility. Missing: tool annotations (readOnlyHint), structured output schema declarations, and actionable error messages that guide LLM recovery.
Get full details (plot, cast, crew, etc.) for a specific IMDb ID. This tool queries the OMDb API to retrieve comprehensive information about a movie including its plot, director, writer, actors, genre, runtime, country, language, and awards. This tool does NOT return ratings information - use movie_ratings() for that.
Get ratings breakdown for a specific IMDb ID. This tool queries the OMDb API to retrieve ratings information about a movie, including IMDb rating, IMDb vote count, Metascore, and ratings from various sources (Rotten Tomatoes, Metacritic, etc.). This tool does NOT return plot, cast, or crew information - use movie_details() for that.
Get movies currently playing in Indian theaters. This tool queries the TMDb API's now-playing endpoint filtered to the India region (IN) to retrieve movies that are currently in theatrical release. Results are paginated, with each page containing up to 20 movies.
Get recently released movies worldwide (default: last 90 days). This tool queries the TMDb API's discover endpoint to find movies that were released in the last X days globally. Perfect for finding movies that just came out in theaters (2 weeks ago, 1 month ago, etc.).
Output schemas documented only in docstrings, not in formal JSON Schema. LLMs cannot parse docstring examples to infer response structure for downstream tool chaining.
Error messages are generic ('Unexpected error in search_movie: {str(e)}') and lack recovery guidance. LLMs cannot determine if errors are retryable or require user intervention.
Tool annotations (readOnlyHint, idempotentHint) are missing. All tools are read-only but this is not declared in the tool definition, forcing LLMs to infer safety from descriptions.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 61 | 2026-07-28+ | v2 |
Get recently released movies in India (last 90 days). This tool queries the TMDb API's discover endpoint with India region filter to find movies that were released in the last X days in Indian theaters. Use this (not now_playing_india) for recent releases in India - it uses a proper region + date-range filter instead of TMDb's less reliable curated endpoint.
Search for movies by title, optionally filtered by year. This tool queries the OMDb API's search endpoint to find movies matching the given title. Returns a list of candidates with their IMDb IDs, which can be used with movie_details() or movie_ratings() for more information.
Get upcoming movie releases worldwide (no region filter). This tool queries the TMDb API's upcoming endpoint WITHOUT region filtering to retrieve movies that will be released globally. Perfect for finding international releases, Hollywood blockbusters, and movies announced for future years (2025, 2026, etc.).
Get movies about to release in Indian theaters. This tool queries the TMDb API's upcoming endpoint filtered to the India region (IN) to retrieve movies that will be released soon in Indian theaters. Results are paginated, with each page containing up to 20 movies.
Pagination parameters (page, days) lack explicit min/max constraints in schema. LLMs could pass invalid values (page=0, days=-1) without validation guidance.
No batch variants for tools agents call in loops. If an agent needs ratings for 10 movies, it must call movie_ratings 10 times sequentially instead of one batch call.