The Movie Database (TMDB)
Integrates with The Movie Database (TMDB) API, allowing AI assistants to search for movies, retrieve details, and generate related content.
TMDB MCP Server
This project implements a Model Context Protocol (MCP) server that integrates with The Movie Database (TMDB) API. It enables AI assistants like Claude to interact with movie data, providing capabilities for searching, retrieving details, and generating content related to movies.
Features
Resources
-
Static Resources:
tmdb://info- Information about TMDB APItmdb://trending- Currently trending movies
-
Resource Templates:
tmdb://movie/{id}- Detailed information about a specific movie
Prompts
- Movie Review: Generate a customized movie review with specified style and rating
- Movie Recommendation: Get personalized movie recommendations based on genres and mood
Tools
- Search Movies: Find movies by title or keywords
- Get Trending Movies: Retrieve trending movies for day or week
- Get Similar Movies: Find movies similar to a specified movie
Setup Instructions
Prerequisites
- Node.js (v16 or later)
- npm or yarn
- TMDB API key
Installation
-
Clone this repository
git clone https://github.com/your-username/tmdb-mcp.git cd tmdb-mcp -
Install dependencies
npm install -
Configure your TMDB API key
- Create a
.envfile in the project root (alternative: editsrc/config.tsdirectly) - Add your TMDB API key:
TMDB_API_KEY=your_api_key_here
- Create a
-
Build the project
npm run build -
Start the server
npm start
Setup for Claude Desktop
- Open Claude Desktop
- Go to Settings > Developer tab
- Click "Edit Config" to open the configuration file
- Add the following to your configuration:
{
"mcpServers": {
"tmdb-mcp": {
"command": "node",
"args": ["/absolute/path/to/your/tmdb-mcp/build/index.js"]
}
}
}
- Restart Claude Desktop
Usage Examples
Using Static Resources
- "What is TMDB?"
- "Show me currently trending movies"
Using Resource Templates
- "Get details about movie with ID 550" (Fight Club)
- "Tell me about the movie with ID 155" (The Dark Knight)
Using Prompts
- "Write a detailed review for Inception with a rating of 9/10"
- "Recommend sci-fi movies for a thoughtful mood"
Using Tools
- "Search for movies about space exploration"
- "What are the trending movies today?"
- "Find movies similar to The Matrix"
Development
Project Structure
tmdb-mcp/
├── src/
│ ├── index.ts # Main server file
│ ├── config.ts # Configuration and API keys
│ ├── handlers.ts # Request handlers
│ ├── resources.ts # Static resources
│ ├── resource-templates.ts # Dynamic resource templates
│ ├── prompts.ts # Prompt definitions
│ ├── tools.ts # Tool implementations
│ └── tmdb-api.ts # TMDB API wrapper
├── package.json
├── tsconfig.json
└── README.md
Testing
Use the MCP Inspector to test your server during development:
npx @modelcontextprotocol/inspector node build/index.js
License
MIT
Acknowledgements
Related Servers
Ferryhopper MCP Server
The Ferryhopper MCP Server exposes ferry routes, schedules and booking redirects so an AI assistant can discover connections across Europe and the Mediterranean and send users to Ferryhopper to complete bookings.
MCP Naver News
Search for news articles using the Naver News API. Requires Naver News API credentials.
arXiv Search
A server for searching academic papers and preprints on arXiv.org.
DuckDuckGo Search
Perform web searches using the DuckDuckGo API, with features for fetching and parsing content.
Geocoding
Provides geocoding services by integrating with the Nominatim API.
YouTube Music MCP
Search and play tracks on YouTube Music via AI assistants.
Cezzis Cocktails
Search for cocktail recipes using the cezzis.com API.
GPT Researcher
Conducts autonomous, in-depth research by exploring and validating multiple sources to provide relevant and up-to-date information.
Perplexity
Web search using the Perplexity API with automatic model selection based on query intent.
Perigon MCP Server
Official MCP server for the Perigon API, providing access to real-time news and media data.