wizzy-mcp-tmdb

wizzy-mcp-tmdb

A MCP server for The Movie Database API that enables AI assistants to search and retrieve movie, TV show, and person information.

Category
访问服务器

README

wizzy-mcp-tmdb

Build Status

Coverage

Project Overview and Purpose

The wizzy-mcp-tmdb project is an MCP (Model Context Protocol) server implemented in JavaScript that provides tools to search and retrieve information from The Movie Database (TMDB). It allows AI clients to access movie, TV show, and person data through a standardized protocol.

Key Features

  • Search Movies: Perform multi-search across movies, TV shows, and people using the search_tmdb tool.
  • Get Details: Fetch detailed information for specific items using the get_tmdb_details tool.
  • Trending Content: Retrieve trending content across all media types with the trending_all tool.

Installation

Prerequisites

  • Node.js version 18 or higher (required for global fetch support)
  • A TMDB API key (Bearer token) from your admin, used with the TNL TMDB proxy (production-api.tnl.one)

Setup

  1. Clone the repository and navigate to the project directory.

  2. Install dependencies:

    npm install
    
  3. Set up your TMDB API key as an environment variable:

    • On Windows PowerShell:

      $env:TMDB_AUTH_TOKEN="YOUR_TNL_PROXY_BEARER_TOKEN"
      
    • On macOS/Linux:

      export TMDB_AUTH_TOKEN="YOUR_TNL_PROXY_BEARER_TOKEN"
      

Usage

Starting the MCP Server

To start the server:

npm start

The server communicates over stdio and should be configured in your MCP-compatible client (e.g., IDE or chat client) with the command node mcp-tmdb-server.js and the TMDB_AUTH_TOKEN environment variable.

MCP Integration Examples

Here are code snippets showing how to integrate with the MCP tools:

Search for Movies

// Example MCP tool call for searching
{
  "method": "tools/call",
  "params": {
    "name": "search_tmdb",
    "arguments": {
      "query": "dune",
      "page": 1,
      "language": "en-US",
      "include_adult": false
    }
  }
}

Get Movie Details

// Example MCP tool call for getting details
{
  "method": "tools/call",
  "params": {
    "name": "get_tmdb_details",
    "arguments": {
      "type": "movie",
      "id": 438631,
      "append": "credits,images"
    }
  }
}

Get Trending Content

// Example MCP tool call for trending content
{
  "method": "tools/call",
  "params": {
    "name": "trending_all",
    "arguments": {
      "time_window": "day",
      "page": 1,
      "language": "en-US"
    }
  }
}

MCP Client Integration

Per integrare questo MCP server nel tuo client MCP (come un IDE o un client di chat compatibile), segui questi passi:

  1. Installa il pacchetto npm se necessario:

    npm install -g wizzy-mcp-tmdb
    
  2. Crea o aggiorna il file mcp.json nel tuo client MCP con la seguente configurazione:

    {
      "mcpServers": {
        "tmdb": {
          "command": "npx",
          "args": ["wizzy-mcp-tmdb"],
          "env": {
            "TMDB_AUTH_TOKEN": "YOUR_TNL_PROXY_BEARER_TOKEN"
          },
          "alwaysAllow": [
            "get_watch_providers",
            "discover_tv",
            "discover_by_provider"
          ]
        }
      }
    }
    

    Nota: Il TMDB_AUTH_TOKEN può essere impostato a un valore casuale per ora, poiché le chiamate API TMDB sono gratuite e non richiedono autenticazione obbligatoria.

Testing Strategy

The project uses Jest for comprehensive testing, including:

  • Unit Tests: Validate individual handler functions, input validation, and response formatting (see tests/unit/handlers.test.js).
  • Integration Tests: Test API interactions with mocked responses, error handling, and network failures (see tests/integration/api.test.js).
  • Protocol Tests: Ensure MCP protocol compliance, including tool listing and calling (see tests/protocol/mcp.test.js).

Run the test suite with:

npm test

For watch mode:

npm run test:watch

Project Structure

wizzy-mcp-tmdb/
├── mcp-tmdb-server.js          # Main MCP server implementation
├── package.json                # Project configuration and dependencies
├── MCP_GUIDE.md                # Detailed MCP integration guide
├── babel.config.cjs            # Babel configuration for Jest
├── tests/
│   ├── unit/
│   │   └── handlers.test.js    # Unit tests for handlers
│   ├── integration/
│   │   └── api.test.js         # Integration tests for API calls
│   └── protocol/
│       └── mcp.test.js         # MCP protocol compliance tests
└── tests/fixtures/             # Mock data for tests
    ├── movieDetails.json
    ├── searchMultiResponse.json
    └── trendingAllResponse.json

Contributing

We welcome contributions! Please follow these guidelines:

  1. Fork the repository.
  2. Create a feature branch.
  3. Make your changes and add tests.
  4. Ensure all tests pass.
  5. Submit a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Acknowledgments

  • Thanks to The Movie Database (TMDB) for providing the API.
  • Built using the Model Context Protocol SDK.

Contact

For questions or support, please open an issue on GitHub.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选