娱乐信息协议服务器

一个基于模型上下文协议(MCP)的服务器,使AI助手能够与娱乐API(如OMDB和TMDB)交互,获取电影、电视剧、演员等信息。

  • by Rohit-KK15
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Rohit-KK15/entertainment-mcp

使用说明

娱乐-MCP(注:MCP在此处可能代表某个特定概念或缩写,但根据上下文无法确定具体含义,因此直接保留原样)

一个模型上下文协议(MCP)服务器,使AI助手能够与娱乐应用程序编程接口(API)进行交互。

概述

娱乐-MCP提供以下功能:

  • 从OMDB获取电影、电视剧和剧集信息。
  • 从TMDB获取电影和电视节目的详细信息。
  • 从TMDB搜索并获取电影合集的详细信息。
  • 通过TMDB发现由该演员出演的电影和电视节目。
  • 从TMDB获取按类型划分的电影和电视节目。
  • 从TMDB(The Movie Database,电影数据库)获取热门电影和电视节目。
  • 通过TMDB按标题搜索电影和电视节目。
  • 从TMDB(The Movie Database,电影数据库)中搜索人员(演员)。
  • 从TMDB获取热门电影和电视节目。
  • 根据类型、上映年份和最低IMDb评分获取娱乐建议。

目录

先决条件

  • Node.js(v16.0.0 或更高版本)
  • npm(v7.0.0 或更高版本)
  • OMDB和TMDB的API密钥(可从它们各自的网站获取)
    • OMDB API密钥(OMDB_API_KEY)
    • TMDB API密钥(TMDB_API_KEY)

安装

手动安装

# Clone the repository
git clone <repository_url>
cd entertainment-mcp

# Install dependencies
npm install

# Compile TypeScript
npm run build

配置

所有配置均通过环境变量进行处理。以下选项可供选择:

选项 类型 默认值 描述
OMDB_API_KEY 字符串 — 必填。 OMDB API密钥。
TMDB_API_KEY 字符串 — 必填。 TMDB API密钥。

您可以通过环境变量来设置这些选项:

OMDB_API_KEY=your_omdb_api_key
TMDB_API_KEY=your_tmdb_api_key

工具文档

OMDB 工具

  • GET_OMDB_INFO从OMDB获取有关电影、电视剧或剧集的详细信息。
    • 参数:
      • query要搜索的电影、电视剧或剧集标题(字符串,必填)。
      • type指定要搜索的是电影、电视剧还是剧集(枚举值:“movie”(电影)、“series”(电视剧)、“episode”(剧集),可选)。

TMDB工具

  • GET_TMDB_SEARCH_COLLECTIONS按名称搜索电影合集。

    • 参数:
      • query要搜索的集合名称(字符串,必填)。
  • GET_TMDB_COLLECTION_DETAILS根据特定电影集的ID获取详细信息。

    • 参数:
      • collectionId要获取详细信息的集合的ID(数字,必填)。
  • GET_TMDB_INFO从TMDB获取电影或电视节目的详细信息。

    • 参数:
      • query要搜索的电影或电视节目的名称(字符串,必填)。
      • type指定是要搜索电影还是电视剧(枚举值:“movie”,“tv”,必填)。
  • GET_TMDB_DISCOVER_BY_ACTOR通过演员ID发现电影或电视节目。

    • 参数:
      • actorId用于查找娱乐内容的演员ID(数字,必填)。
      • mediaType要发现的媒体类型(枚举值:“movie”(电影),“tv”(电视),必填)。
      • releaseYear娱乐作品的发布年份(数字,可选)。
  • GET_TMDB_BY_GENRE从TMDB(The Movie Database,电影数据库)获取按类型分类的电影或电视节目列表。

    • 参数:
      • mediaType要搜索的媒体类型(枚举值:“电影”,“电视”,必填)。
      • genre要搜索的流派名称(字符串,必填)。
  • GET_TMDB_POPULAR从TMDB获取热门电影或电视节目列表。

    • 参数:
      • mediaType要搜索的媒体类型(枚举值:“movie”(电影)、“tv”(电视),必填)。
  • GET_TMDB_SEARCH_MOVIE_BY_TITLE使用TMDB服务按电影标题进行搜索。

    • 参数:
      • title要搜索的电影名称(字符串,必填)。
  • GET_TMDB_PERSON_SEARCH使用TMDB服务按姓名搜索人员(演员)。

    • 参数:
      • query要搜索的人员(演员)姓名(字符串,必填)。
  • GET_TMDB_SEARCH_TV_BY_TITLE使用TMDB服务按剧名搜索电视节目。

    • 参数:
      • title要搜索的电视剧名称(字符串,必填)。
  • GET_ENTERTAINMENT_SUGGESTIONS根据类型、上映年份和最低IMDb评分推荐娱乐内容。

    • 参数:
      • mediaType建议的媒体类型(枚举值:“电影”,“电视”,必填)。
      • genre建议的娱乐类型(字符串,必填)。
      • releaseYear娱乐作品的发行年份(数字,可选)。
      • minImdbRating最低IMDb评分(1-10)(数字,可选)。
  • GET_TMDB_TRENDING从TMDB获取热门电影或电视剧的列表。

    • 参数:
      • mediaType要搜索的媒体类型(枚举值:“all”(全部)、“movie”(电影)、“tv”(电视),必填)。
      • timeWindow搜索热门项目的时间窗口(枚举值:“day”(天),“week”(周),必填)。

发展

# Development mode
pnpm run dev