mcpField
A
animeport

animeport

本地服务
github.com/CloudCorpRecords游戏娱乐01 周前更新

关于 animeport

animeport 是面向 AniList 的只读 MCP 服务和命令行工具,可查询动画、漫画、人物及用户列表。它通过 AniList 公共 GraphQL API 提供核心数据子集。

主要功能

  1. 01搜索动画、漫画、角色、职员、工作室和用户
  2. 02获取作品、角色、职员和工作室详情
  3. 03查看用户资料、统计信息和列表
  4. 04查询今日生日的角色与职员
  5. 05获取媒体条目的推荐

适用场景

  1. 01按标题、类型或季度年份查找动画
  2. 02按姓名查询角色或职员
  3. 03查看 AniList 用户的列表和资料
  4. 04发现某部作品的推荐作品

MCP 相关

通过 stdio 将 AniList 只读操作作为 MCP 工具提供。每个工具都会向 AniList 公共 API 发送 GraphQL 查询。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cloudcorprecords-animeport": {
"command": "npx",
"args": [
"-y",
"@reneturcios/animeport"
]
}
}
}
启动命令npx -y @reneturcios/animeport

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@reneturcios/animeport0.1.0
ocighcr.io/cloudcorprecords/animeport:0.1.0

工具

20

收录的工具列表 · 更新于 1 周前

此工具无需参数。

详细介绍

animeport

animeport 使用 AniList 回答有关动漫和漫画的问题:作品讲述了什么、评分如何、由谁创作、今天有哪些角色和工作人员过生日、指定用户正在观看或阅读什么,以及某部作品的粉丝通常会推荐接下来看什么。所有回答均来自 AniList 的公开 GraphQL API。

此软件包是一次从头独立重建,并且是一个标注范围的核心子集:涵盖 AniList MCP 服务原始文档中 42 个工具里的 20 个。未涵盖的工具列于下方的“范围”部分。

与服务的通信方式

每个工具都会通过 POST 向 AniList API 发送且仅发送一个 GraphQL 查询,并返回响应中的 data 负载:

# Optional: raises rate limits / unlocks authenticated reads on AniList.
export ANILIST_TOKEN="your token"
# Optional override (default: https://graphql.anilist.co)
export ANILIST_API_URL="https://graphql.anilist.co"

令牌确实是可选的。未设置令牌时,请求会以无密钥方式发送,而 AniList 允许这些只读工具这样使用——仅仅因为缺少 ANILIST_TOKEN,请求不会失败。当 AniList 返回 GraphQL errors 数组时,调用会失败并显示首个错误的消息;上游 HTTP 错误则会显示其状态码和响应正文摘录。

**字段选择说明:**原项目的 README 介绍了这些工具及其用途,但没有记录 GraphQL 字段选择。这里的查询是针对每个工具所述用途重新设计的合理方案,并非复制原项目的查询。

安装

npx @reneturcios/animeport search_anime '{"search":"Frieren"}'

或者运行容器镜像:

docker run -i ghcr.io/cloudcorprecords/animeport

容器默认启动 MCP 服务。传入 CLI 参数即可将其用作 CLI。

CLI

CLI 与这些工具相对应:每个工具都有一个子命令,并将参数作为单个 JSON 对象传入。

animeport get_genres '{}'
animeport search_anime '{"search":"Frieren","perPage":5}'
animeport get_anime '{"id":154587}'
animeport get_todays_birthday_characters '{}'
animeport get_user_anime_list '{"username":"someone","status":"CURRENT"}'
animeport get_recommendations_for_media '{"mediaId":154587}'
animeport --version

退出代码:成功时为 0;API 或验证错误时为 1(错误会指出问题);用法错误时为 2。

MCP 服务

一个二进制文件即可提供这两种用法。mcp 子命令会启动 stdio MCP 服务:

npx -y @reneturcios/animeport mcp

MCP 客户端配置:

{
  "mcpServers": {
    "animeport": {
      "command": "npx",
      "args": ["-y", "@reneturcios/animeport", "mcp"],
      "env": { "ANILIST_TOKEN": "your token (optional)" }
    }
  }
}
工具
工具输入功能
get_genres—获取 AniList 上可用的类型列表。
get_media_tags—获取 AniList 上可用的媒体标签列表。
get_studioid 和/或 name(至少填写一项,并在本地验证)根据 AniList ID 或名称获取工作室详情。
search_animesearch、page、perPage、genre、seasonYear(均为可选)按标题、类型或季度年份搜索动漫。
search_mangasearch、page、perPage、genre、seasonYear(均为可选)按标题、类型或季度年份搜索漫画。
search_charactersearch(必填)、page、perPage按名称搜索角色。
search_staffsearch(必填)、page、perPage按名称搜索工作人员。
search_studiosearch(必填)、page、perPage按名称搜索工作室。
search_usersearch(必填)、page、perPage按用户名搜索 AniList 用户。
get_animeid(必填)根据 AniList ID 获取动漫的详细信息。
get_mangaid(必填)根据 AniList ID 获取漫画的详细信息。
get_characterid(必填)根据 AniList ID 获取角色的详细信息。
get_staffid(必填)根据 AniList ID 获取工作人员的详细信息。
get_todays_birthday_characters—获取今天过生日的角色。
get_todays_birthday_staff—获取今天过生日的工作人员。
get_user_anime_listusername(必填)、status获取用户的动漫列表,可按状态筛选。
get_user_manga_listusername(必填)、status获取用户的漫画列表,可按状态筛选。
get_user_profileusername(必填)获取用户的 AniList 个人资料。
get_user_statsusername(必填)获取用户的活动统计数据。
get_recommendations_for_mediamediaId(必填)、page、perPage根据 AniList ID 获取媒体条目的推荐内容。

范围

以下内容未包含在此核心子集中:get_site_statistics、get_activity、 get_user_activity、post_message_activity、post_text_activity、 delete_activity、add_list_entry、remove_list_entry、 update_list_entry、favourite_anime、favourite_manga、 favourite_character、favourite_staff、favourite_studio、 get_recommendation、get_thread、get_thread_comments、 delete_thread、get_full_user_info、get_authorized_user、 follow_user 和 update_user。省略的部分特意涵盖登录、写入、收藏和讨论串功能;animeport 按设计仅提供只读功能。目录数据本身属于 AniList;此软件包复现的是工具接口以及请求/响应处理,而不是 AniList 的数据库。

开发

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, fake fetch only, no network
npm run dev     # run the CLI from source via tsx

许可证

MIT — 参见 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。