goodrecmovies
Server Details
Movie and series ranking as MCP tools: top titles, search, lookup by IMDb id. Free, no key.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 3 tools
Each tool targets a clearly distinct access mode: single lookup by IMDb id (get_title), text search (search_titles), and ranked listing (top_titles). There is no meaningful overlap between them, so misselection is unlikely.
All three follow a consistent verb_noun pattern (get_, search_, top_) in snake_case. The convention is predictable throughout.
Three tools is on the lean side, but for a focused read-only ranking service each tool maps to a genuine access pattern with no filler. It is well-scoped though minimal.
The core surface (lookup, search, top ranking) is covered for a ranking/reference service. Minor gaps exist around pagination and filtering (e.g. by genre/year or result limits), but agents can work around these.
Available Tools
3 toolsget_titleARead-onlyIdempotentInspect
Look up one title by IMDb id (tconst, e.g. tt0111161). Returns its GRM score, tier, rank, vote count, and detail URL.
| Name | Required | Description | Default |
|---|---|---|---|
| tconst | Yes | IMDb id of the title. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and closed-world behavior, so the safety profile is covered and the bar is lower. The description adds real context beyond that by enumerating what the call returns (GRM score, tier, rank, vote count, detail URL), though it says nothing about behavior for an unknown or malformed tconst.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the identifier and its format, followed immediately by the return payload. No filler, no restatement of the name, and every clause carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, and the description compensates by listing the returned fields, which is the main thing an agent needs to decide whether to call it. It is close to complete for a one-parameter lookup, missing only edge-case behavior such as what happens when the id does not exist.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single parameter already carries a type, a required flag, and a regex pattern. The description reinforces the id format with a concrete example (tt0111161), but adds no semantics beyond what the schema documents, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb ('Look up') and resource ('one title'), plus the exact key semantics (IMDb id, tconst pattern with an example). It implicitly separates itself from search_titles and top_titles by emphasizing a single-title lookup, but never names those siblings, so the differentiation is inferred rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'by IMDb id' and 'one title', which tells an agent this is the direct-key lookup path rather than a search or ranking call. However, there is no explicit when-to-use guidance, no statement of when not to use it, and no mention of the sibling tools as alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_titlesARead-onlyIdempotentInspect
Search goodrecmovies titles by name fragment. Returns matching titles with rank, GRM score, and detail URL.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | Restrict to one pool. | |
| query | Yes | Title fragment to search for. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful context by disclosing that matching is a fragment match and enumerating what is returned (rank, GRM score, detail URL), which matters since there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the core action and followed by the return shape. No filler, no repetition of the name or title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read tool with rich annotations, the definition covers purpose, matching semantics and return fields. It stops short of noting result-count limits or pagination, but nothing essential to a correct call is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (query and the kind enum) are already documented. The description only echoes the fragment semantics of query and adds nothing about the kind filter, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (search) and resource (goodrecmovies titles) with the matching criterion (name fragment), and even names the return fields. It is clearly distinct from get_title and top_titles by the verb 'search', though it never explicitly contrasts itself against those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent can infer this is the lookup-by-name tool, but the description gives no explicit when-to-use or when-to-prefer-get_title/top_titles guidance, and no prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
top_titlesARead-onlyIdempotentInspect
The best titles in the goodrecmovies ranking, best first. Returns rank, GRM score (0-100 display scale), tier band, and detail URL per title.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | Pool to rank. Default movie. | |
| count | No | How many titles. Default 10. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false, so the safety profile is covered; the description usefully adds the ordering guarantee ('best first') and enumerates the returned fields since no output schema exists. It does not mention rate limits or pagination, but for a small read-only ranking call that is a minor omission.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero filler, with the core purpose front-loaded and the return payload summarized second. Nothing could be cut without losing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-optional-parameter read-only tool with full schema coverage and annotations, the description supplies what the structured fields do not: the sort order and the shape of each result row. Only the absence of any routing guidance toward its siblings keeps it short of complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% – both kind (pool to rank, default movie) and count (default 10, max 20) are fully documented in the schema. The description adds nothing about the parameters, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (titles in the goodrecmovies ranking) and behavior (returned best-first), which distinguishes it from get_title (single lookup) and search_titles (query-driven search). It does not name those siblings explicitly, so the differentiation is implicit rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance: nothing says to pick this over search_titles when the agent wants a ranked 'best of' list rather than a keyword match, and no exclusions or prerequisites are given. 'Best first' describes output ordering, not selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- First observed
get_title - First observed
search_titles - First observed
top_titles
Related MCP Connectors
OMDb MCP — IMDB-derived movie / TV / episode data (BYO key)
IMDB MCP — title metadata, ratings, episodes, and crew from IMDB's
Movies MCP — wraps iTunes Search API (movies, free, no auth) and TVmaze API (TV shows, free, no…
TVMaze MCP — TV show metadata, episodes, schedules (no auth)
Related MCP Servers
- AlicenseAqualityCmaintenanceMCP server for the OMDb API - search movies, series, and episodes from any MCP-compatible client.5MIT
- AlicenseAqualityBmaintenanceA comprehensive MCP server providing detailed IMDb data including movies, TV shows, and upcoming releases.2318MIT
- AlicenseAqualityAmaintenanceMCP server for The Movie Database (TMDB): search and look up movies, TV shows and people, and read IMDb/Rotten Tomatoes/Metacritic ratings (via OMDb) in the same call.31112 npm4MIT
- FlicenseAqualityDmaintenanceAn MCP server that wraps The Movie Database (TMDB) API, enabling search for movies and TV shows, retrieval of movie details, recommendations, similar movies, trending content, streaming providers, and movie discovery.8-
Glama MCP Gateway
Add one secure layer between your agents and this server.