Skip to main content
Glama
Grinv

TMDB MCP Server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
TMDB_REGIONNoRegion for localization (e.g., US, RU) (optional)
OMDB_API_KEYNoOMDb API key for ratings enrichment (optional)
TMDB_LANGUAGENoLanguage for localization (e.g., en-US, ru-RU) (optional)
TMDB_API_TOKENYesTMDB v4 Read Access Token (required)

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_moviesA

Search TMDB movies by title; returns compact summaries with the TMDB id that the other movie tools (get_movie, get_movie_credits, …) require, plus pagination info. Use this over search_multi when you already know the result is a movie. region here only picks which country's release_date is shown per result (e.g. a title's US vs. India theatrical date) — verified live, it does not filter which movies match or reorder them; for actual region-based availability use get_watch_providers instead.

search_tvA

Search TMDB TV shows by name; returns compact summaries with the TMDB id that get_tv and the other TV tools require. Use this over search_multi when you already know the result is a TV show.

search_multiA

Search movies, TV shows and people in one call. Each result carries a media_type ('movie' | 'tv' | 'person') so you can route to the right get_* tool. Use when the user's query could be any of these; if you already know the type, search_movies/search_tv/search_people are more precise.

search_peopleA

Search TMDB people (actors, directors, crew) by name; returns the TMDB id needed by get_person plus their top 5 best-known titles (known_for). Use this over search_multi when you already know the result is a person.

search_keywordsA

Resolve keyword names to TMDB keyword ids (e.g. 'time travel', 'based on true story'). Feed the ids into discover_movies/discover_tv via with_keywords / without_keywords.

search_companiesA

Resolve a production company's name to its TMDB numeric id (e.g. 'A24', 'Pixar'). Feed the id into discover_movies/discover_tv via with_companies. Company names aren't unique — TMDB can have several unrelated companies sharing the same name (e.g. two different 'A24's, one US and one GB) — check origin_country and logo_url to tell rows apart when a name matches more than one.

search_collectionsA

Resolve a franchise/series name (e.g. 'harry potter', 'james bond') to its TMDB collection id — a collection is TMDB's grouping of a movie series' films. Pass the id to get_collection for every part in release order. Use this when you only have the franchise name; if you already have one of its movies, get_movie's collection field carries the same id. Movies only: collection parts are movies, and a TV series name finds nothing (e.g. 'breaking bad' → 0 results). A name can match several collections ('star wars' also returns 'LEGO Star Wars Collection' and other spin-off groupings) — pick by name/overview. Rows are id, name, overview, poster_url, localized per language (e.g. 'de-DE' → 'Harry Potter Filmreihe').

search_watch_providersA

Resolve a streaming/rental/purchase service's name (e.g. 'Netflix', 'Disney Plus') to its TMDB numeric provider id. Feed the id into discover_movies/discover_tv's with_watch_providers (with watch_region set to the same region given here, if any) to find top titles on that service — TMDB has no name-based lookup of its own for this, only numeric ids, and there are hundreds of providers (269+ for the US alone, more elsewhere), so don't guess an id. A provider's id and even whether it's offered at all can differ by region (e.g. a service bundled as a channel add-on in one country vs. standalone in another) — pass watch_region to match what discover_movies/discover_tv will actually see; omitting it searches the full global provider list instead, which may include ids not valid for the region the caller actually cares about.

get_movieA

Get full details for one movie by TMDB id: overview, genres, runtime, budget/revenue, vote average, the age/content rating (certification) for region — falling back to the US rating, then any available country, when region has none; check certification_region to see which one was used — and links (TMDB + IMDb). By default also includes IMDb/Rotten Tomatoes/Metacritic ratings and an awards summary (see include_ratings), plus OMDb's own age rating (ratings.rated — separate from this tool's own certification above; the two can differ) from OMDb (set include_ratings=false to skip); if unavailable (no OMDB_API_KEY, no imdb_id, or the OMDb lookup fails), ratings degrades to {found:false, reason} instead of failing the call. If you only need the headline info (title/year/genres/vote average) — for one id or several — use get_movies instead; it's trimmed on purpose and skips the rest of this payload. Get the id from search_movies.

get_tvA

Get full details for one TV show by TMDB id: overview, genres, seasons/episodes counts, networks, created_by (the show's creator(s)), status, the age/content rating (certification) for region — falling back to the US rating, then any available country, when region has none; check certification_region to see which one was used — and links. By default also includes IMDb/Rotten Tomatoes/Metacritic ratings and an awards summary (see include_ratings), plus OMDb's own age rating (ratings.rated — separate from this tool's own certification above; the two can differ) from OMDb (set include_ratings=false to skip); if unavailable (no OMDB_API_KEY, no imdb_id, or the OMDb lookup fails), ratings degrades to {found:false, reason} instead of failing the call. Set expand_episodes=true to also pull every season's episode list in one extra request instead of calling get_tv_season per season. If you only need the headline info (name/year/genres/vote average, season/episode counts) — for one id or several — use get_tv_shows instead; it's trimmed on purpose and skips the rest of this payload. Get the id from search_tv.

get_moviesA

Get a compact card — title, year, genres, vote average, and (opt-in) ratings — for 1-20 movies by TMDB id in one call. Deliberately trimmed (no overview, cast, budget, certifications, production companies, etc.): use this for a single id too when you only need that headline info and not the full get_movie payload, not just for checking many at once. Call get_movie instead when you need the full details for a title (including region-specific certification). A bad/unknown id never fails the whole call — that entry comes back {id, found:false, reason} instead, in the same order as ids.

get_tv_showsA

Get a compact card — name, year, genres, vote average, season/episode counts, and (opt-in) ratings — for 1-20 TV shows by TMDB id in one call. A quick way to spot short/miniseries shows (low episode count) across many candidates without a per-title get_tv call. Deliberately trimmed otherwise (no overview, the actual episode list, networks, certifications, etc.): use this for a single id too when you only need that headline info and not the full get_tv payload, not just for checking many at once. Call get_tv instead when you need the full details for a title (including region-specific certification). A bad/unknown id never fails the whole call — that entry comes back {id, found:false, reason} instead, in the same order as ids.

get_personA

Get full details for one person by TMDB id: biography, birthday/deathday, department, and links (TMDB + IMDb). Does not include filmography — use get_person_credits for that. Get the id from search_people or a credits list.

get_movie_creditsA

List the top-billed cast (up to 20) and the headline crew (director, writers, composer, DoP, …) of a movie by TMDB id. Get the id from search_movies.

get_tv_creditsA

List a TV show's cast and key crew across its whole run, by TMDB id: up to 20 cast members ranked by how many episodes they appear in (each with their main character and episode_count), plus up to 5 people per key crew job — Director, Writer, Teleplay, Story, Executive Producer, Producer, Original Music Composer, Director of Photography — ranked by episode_count, so 'who directed most of it' is the first Director listed. Creators aren't listed here; use get_tv's created_by. For one specific episode's director/writer, use get_tv_episode. Get the id from search_tv.

get_movie_recommendationsA

Get movies TMDB recommends for the given movie id, based on co-viewing/personalization data (what users who liked this also liked) — usually the more thematically relevant list. Prefer this over get_similar as the default choice; get_similar matches on shared genres/keywords, a blunter heuristic that can surface tonally unrelated titles. Get the id from search_movies.

get_tv_recommendationsA

Get TV shows TMDB recommends for the given show id, based on co-viewing/personalization data (what users who liked this also liked) — usually the more thematically relevant list. Prefer this over get_similar as the default choice; get_similar matches on shared genres/keywords, a blunter heuristic that can surface tonally unrelated titles. Get the id from search_tv.

get_similarA

Get titles TMDB considers similar to a given movie or TV show, based on shared genres and keywords — a blunter heuristic than get_movie_recommendations'/get_tv_recommendations' behavioral (co-viewing) data, so results are often thematically noisy (verified live: The Matrix's first page mixes Videodrome and Dune with The Man with the Golden Gun). Returned exactly as TMDB ranks them, 20 per page; the list runs into the whole catalog (total_results 20001 for The Matrix), so only the first page or two are worth reading. Try recommendations first for thematically closer picks; use this when you specifically want genre/keyword-adjacent titles. Get the id from search_movies/search_tv.

get_reviewsA

Get user reviews for a movie or TV show (author, that one reviewer's own 0-10 rating if they left one — a single person's score, not the aggregate vote_average and not an IMDb/RT/Metacritic value; it can be null, and the review text, clipped to ~1500 characters). Get the id from search_movies/search_tv.

get_collectionA

Get a movie collection/franchise and all its parts in release order (e.g. the whole 'The Dark Knight Collection'). Get the collection id from search_collections (by franchise name) or from a movie's collection field in get_movie.

get_person_creditsA

List the movies and TV shows a person is known for (cast roles and crew jobs), most popular first, capped to the top 25 of each by default; talk-show/awards-show guest appearances ('Self'/'Himself'/'Herself', plus any cast credit on a TV talk or news show) and repeat entries for the same title are excluded so the list stays about actual roles. A cameo credited under the person's own name is kept, since TMDB marks it no differently from a real role (verified live: Tom Hanks's top cast row is The Simpsons as 'Tom Hanks (voice)'). A title with several crew jobs (writer AND director AND producer on one film) still only counts once against the crew cap. Cast entries include a vote_average; crew entries (director, writer, …) do not — call get_movie/get_tv on the id for a crew credit's own vote_average. Pass department (e.g. 'Directing') to restrict crew to just that role — the reliable way to get someone's complete filmography in one department when their other departments would otherwise compete for the same cap; for a handful of exceptionally prolific people even that isn't enough (e.g. 50+ directing credits), so raise limit too when department alone still looks short. Use for 'what has this actor/director been in'. This tool has no genre filter — for 'which of X's movies are animated/horror/etc.' use discover_movies instead, combining with_cast/with_crew/with_people with with_genres (discover_tv has no equivalent — it can't filter by person at all — so for a person's TV work in one genre, call this tool and check the returned media_type 'tv' entries' genres yourself, e.g. via get_tv_shows). Get the id from search_people.

get_trendingA

Get what's trending on TMDB. media_type selects movies, TV, people, or all; time_window is the trending period (today vs this week). Good for 'what's popular right now'. Each result row carries its own media_type ('movie' | 'tv' | 'person') — check it to route to the right get_* tool, especially when media_type is left at 'all'.

get_movie_releasesA

List movies in cinemas now (list='now_playing') or opening soon (list='upcoming') in one country — for 'what's playing in theaters' or 'what comes out next month'. Use get_trending for overall popularity regardless of release, discover_movies for an arbitrary date range. region filters to movies with a theatrical release in that country inside the window (a different set per country, not just a re-sort; an unrecognized code such as 'ZZ' returns an empty page, but 'XX' is a real TMDB pseudo-region), and each row's release_date is that country's release date, which can predate the window for a re-release (e.g. a 2014 film re-released this month). The window itself comes from TMDB and is returned as dates {minimum, maximum} (YYYY-MM-DD; same for every region — roughly the last six weeks for now_playing, the next three weeks for upcoming). TMDB's own order: roughly most popular first, not by date.

get_movie_genresA

List TMDB movie genres with their numeric ids and names (reference data; rarely changes). Feed the ids into discover_movies' with_genres/without_genres.

get_tv_genresA

List TMDB TV genres with their numeric ids and names (reference data; rarely changes). Feed the ids into discover_tv's with_genres/without_genres.

discover_moviesA

Find movies by structured filters instead of a title query: genres (include/exclude), year or release-date range, TMDB vote-average range, vote count, runtime range, original language, cast/crew/people, companies (include/exclude), origin country, keywords (include/exclude), watch providers (include/exclude) and access model (subscription/rent/buy/free/ads), certification, a release window in one country by release type (any_release_date_gte/lte + region + with_release_type — e.g. 'movies in German cinemas this month'), an adult-content toggle, and sort order. certification/with_watch_providers/without_watch_providers/with_watch_monetization_types/with_release_type/region have validation and silent-fallback rules — see their own field descriptions. Use for 'popular sci-fi from the 1990s with a TMDB vote average above 7 available on Netflix', or for a specific person's work in one genre — 'which of this director's/actor's/composer's films are animated' — via with_crew/with_cast/with_people + with_genres together; get_person_credits has no genre filter, so this combination is the right tool for that question, not that one. Resolve ids with get_movie_genres, search_people, search_keywords, search_companies, search_watch_providers.

discover_tvA

Find TV shows by structured filters (genres (include/exclude), first-air year or date range, TMDB vote-average range, vote count, runtime, language, origin country, companies (include/exclude), networks, keywords (include/exclude), watch providers (include/exclude) and access model (subscription/rent/buy/free/ads), episodes airing in a date range (air_date_gte/lte), type, status, certification, an adult-content toggle, sort) — but NOT cast/crew/person: this tool doesn't accept those params for TV at all (calling with them is a validation error, not a silent no-op) because TMDB's own /discover/tv would silently ignore them anyway, unlike /discover/movie; to find TV shows featuring someone, call get_person_credits instead and filter its results to media_type 'tv'. certification/with_watch_providers/without_watch_providers/with_watch_monetization_types have validation and silent-fallback rules — see their own field descriptions. The TV counterpart of discover_movies; use with_networks for 'HBO shows', with_type='Miniseries' for short/limited series (e.g. 'best miniseries to binge in a weekend'), with_status='Ended' to exclude shows still airing, certification='TV-Y7' + certification_country='US' for 'shows appropriate for a young kid'. Resolve ids with get_tv_genres, search_companies, search_keywords, search_watch_providers.

get_watch_providersA

Find where a movie or TV show can be streamed, rented or bought in a given country (JustWatch data via TMDB). Returns provider names per access type for that country; if it has no data, returns available:false plus available_regions to retry with. Get the id from search_movies/search_tv.

get_videosA

List trailers, teasers and clips for a movie or TV show; YouTube entries include a watch URL. Get the id from search_movies/search_tv. Returns videos in the server's configured TMDB_LANGUAGE (default 'en-US') plus English, the title's original language (e.g. Spirited Away's Japanese trailer) and untagged ones; each entry's language (ISO-639-1) says which. No per-call language override.

find_by_imdb_idA

Resolve an IMDb id (e.g. 'tt0133093') to TMDB entities — returns matching movie, TV and person results. Use when you only have an IMDb id and need the TMDB id for the other tools. Only matches whole movies/shows/people: IMDb also assigns 'tt' ids to individual episodes (verified live, e.g. Breaking Bad's pilot 'tt0959621'), which this tool does not resolve — such an id comes back with every result list empty, indistinguishable from a genuinely unknown id.

get_tv_seasonA

Get one season of a TV show (by show id + season number): overview and the episode list with air dates, runtimes and TMDB vote averages (per-episode vote_average, TMDB's own 0-10 user score — not the IMDb/RT/Metacritic scores get_movie/get_tv return as ratings, which are whole-show only; this tool makes no OMDb call, and TMDB's season payload carries no per-episode IMDb ids either, so call get_tv_episode when you need one episode's imdb_id for get_ratings), capped at 50 episodes (episode_count reports the true total). Season 0 is usually specials, which can run to hundreds of bonus clips on a long-running show. Use get_tv with expand_episodes=true instead if you need every season's episodes in one call. Get the show id from search_tv.

get_tv_episodeA

Get one episode of a TV show by show id + season number + episode number: overview, air date, runtime, TMDB vote average (vote_average, TMDB's own 0-10 user score — not an IMDb/RT/Metacritic score; get_movie/get_tv's ratings are whole-show only and this tool makes no OMDb call), guest stars (up to 15) and director/writer. Also returns the episode's own imdb_id/imdb_url — pass that id to get_ratings for this one episode's IMDb rating, the only way to get a per-episode IMDb score here. Get the show id from search_tv.

get_ratingsA

Look up IMDb, Rotten Tomatoes and Metacritic ratings, an awards summary (major-award wins/nominations — Oscars, Emmys, Golden Globes, etc.; free text, not a structured count, for the whole film/show — or for one episode, given an episode's imdb_id — never one person), and OMDb's own age rating (rated), from OMDb by IMDb id (preferred, e.g. 'tt0133093') or by title (+ optional year/type). Prefer get_movie/get_tv when you have a TMDB id — they already include this. Requires OMDB_API_KEY. One of imdb_id or title is required; omitting both returns an error. A no-match lookup is not an error: it returns {found:false, reason}. A title lookup resolves to whichever single entry OMDb picks, reports no runner-up, and cannot be validated against anything — so it can silently return a different work of the same name. Verified live: title:'Halloween' with no year returns the 1978 original (tt0077651, IMDb 7.7, RT 97%), not the 2018 film titled exactly the same (tt1502407, IMDb 6.5, RT 79%). Always read back the returned imdb_id/title/year to confirm which work you actually got, and pass year (and type) whenever you know them. When you only have a title, prefer search_movies/search_tv → get_movie/get_tv instead: that path matches by imdb_id and additionally drops an OMDb hit whose release year is more than two years from TMDB's, which this tool's title path has no way to do.

Prompts

Interactive templates invoked by user choice

NameDescription
recommend_similarPlan a merged, ranked shortlist of movies/TV similar to a given title, using TMDB's similarity/recommendation data (with discover as fallback) rather than model memory. Use instead of calling get_similar/get_movie_recommendations yourself; call those directly only when you already have a TMDB id and just want its raw candidate list.
top_by_entityRank a person's or studio's best-regarded movies/TV, optionally within one genre — 'A24's top movies', 'Tarantino's best films', 'which of Joe Hisaishi's scores are for animated films'. Resolves the name to a TMDB id (search_people/search_companies), then ranks via discover_movies/discover_tv (a person's TV work goes through get_person_credits, since discover_tv can't filter by person). Use instead of doing that multi-step lookup yourself.

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.1/5.0

Scored across 33 tools

Disambiguation4/5

The set has several near-neighbour pairs — get_movie vs get_movies, get_tv vs get_tv_shows, search_movies/search_tv vs search_multi, get_movie_recommendations vs get_similar, and get_ratings vs the ratings embedded in get_movie/get_tv — but the descriptions explicitly state when to prefer each, so an agent can route correctly. A few boundaries (get_ratings vs search+get_movie) require careful reading and are the main residual confusion.

Naming Consistency4/5

Nearly everything follows verb_noun (get_movie, search_people, discover_tv, get_watch_providers), with a few deviations: get_similar/get_trending/get_videos/get_reviews omit the media noun, find_by_imdb_id uses a different verb, and the batch tools are inconsistently named (get_movies for movies but get_tv_shows for TV). Still highly readable and predictable overall.

Tool Count3/5

33 tools is heavy and well above the typical sweet spot, though TMDB is a genuinely broad domain (movies, TV, seasons, episodes, people, credits, discovery, providers, collections, reference data). Several could plausibly be collapsed — eight separate search_* resolvers and two genre-listing tools — so the surface feels somewhat sprawling rather than tightly scoped.

Completeness4/5

The read-only discovery surface is thorough: search, full and compact detail, season/episode drill-down, credits, recommendations, reviews, collections, watch providers, videos, trending, theatrical releases, rich discover filters, and id resolvers for genres/keywords/companies/providers. Gaps are minor for the stated purpose — no account-level tools (watchlists, user ratings), no image galleries, and no external-id resolution beyond IMDb.

Maintenance

ActivityMaintained
ResponsivenessNo issues