get_tmdb_details
Fetch detailed metadata for movies, TV shows, or people using TMDB IDs to support content analysis and information retrieval.
Instructions
Fetches detailed information for a movie, TV show, or person by type and ID. Input: type (required: movie|tv|person), id (required TMDB ID), language (optional ISO 639-1), append (optional comma-separated fields like credits,images). Output: JSON with full item details. Purpose: Obtain in-depth metadata for targeted content analysis by AI agents.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| append | No | Comma-separated append_to_response (e.g., credits,images) | |
| id | Yes | TMDB ID | |
| language | No | ISO 639-1 code (e.g., en-US) | |
| type | Yes | The TMDB media type |
Implementation Reference
- mcp-tmdb-server.js:281-284 (handler)The core handler function that implements the tool logic: fetches TMDB details for specified type and ID using tmdbFetch, supports optional language and append_to_response, formats response as MCP content.handler: async ({type, id, language, append}) => { const data = await tmdbFetch(`/${type}/${id}`, {language, append_to_response: append}); return {content: [{type: "text", text: JSON.stringify(data)}]}; },
- mcp-tmdb-server.js:270-280 (schema)JSON Schema for tool input validation, defining required 'type' (movie/tv/person) and 'id', optional 'language' and 'append'.inputSchema: { type: "object", properties: { type: {type: "string", enum: ["movie", "tv", "person"], description: "The TMDB media type"}, id: {type: "number", description: "TMDB ID"}, language: {type: "string", description: "ISO 639-1 code (e.g., en-US)"}, append: {type: "string", description: "Comma-separated append_to_response (e.g., credits,images)"}, }, required: ["type", "id"], additionalProperties: false, },
- mcp-tmdb-server.js:267-285 (registration)The tool definition object registered in the 'tools' array, which is used by MCP server handlers for list_tools and call_tool requests.{ name: "get_tmdb_details", description: "Fetches detailed information for a movie, TV show, or person by type and ID. Input: type (required: movie|tv|person), id (required TMDB ID), language (optional ISO 639-1), append (optional comma-separated fields like credits,images). Output: JSON with full item details. Purpose: Obtain in-depth metadata for targeted content analysis by AI agents.", inputSchema: { type: "object", properties: { type: {type: "string", enum: ["movie", "tv", "person"], description: "The TMDB media type"}, id: {type: "number", description: "TMDB ID"}, language: {type: "string", description: "ISO 639-1 code (e.g., en-US)"}, append: {type: "string", description: "Comma-separated append_to_response (e.g., credits,images)"}, }, required: ["type", "id"], additionalProperties: false, }, handler: async ({type, id, language, append}) => { const data = await tmdbFetch(`/${type}/${id}`, {language, append_to_response: append}); return {content: [{type: "text", text: JSON.stringify(data)}]}; }, },