animeport
Provides tools for querying AniList's public GraphQL API about anime, manga, characters, and staff. Enables searching anime/manga by title, genre, or season year; fetching detailed media, character, staff, and studio information; discovering characters and staff with birthdays today; retrieving user profiles, statistics, anime/manga lists, and media recommendations.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
animeport
animeport answers questions about anime and manga using AniList: what a series is about and how it scored, who made it, which characters and staff share a birthday today, what a given user is watching or reading, and what fans of one title tend to recommend next. Every answer comes from AniList's public GraphQL API.
This package is a clean-room rebuild, and a labelled core subset: it covers 20 of the 42 tools documented for the original AniList MCP server. The omitted tools are listed under "Scope" below.
How it talks to the service
Each tool sends exactly one GraphQL query by POST to the AniList API
and returns the response's data payload:
# 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"The token is genuinely optional. With no token set, requests go out
keyless, which AniList accepts for these read tools — nothing fails
just because ANILIST_TOKEN is missing. When AniList answers with a
GraphQL errors array, the call fails with the first error's
message; an upstream HTTP error is reported with its status and a
body excerpt.
Field-selection note: the original project's README documents the tools and their purposes, not the GraphQL field selections. The queries here are fresh, sensible reconstructions chosen for each tool's stated purpose, not copies of the original's queries.
Related MCP server: MyAnimeList MCP Server
Install
npx @reneturcios/animeport search_anime '{"search":"Frieren"}'Or run the container image:
docker run -i ghcr.io/cloudcorprecords/animeportThe container defaults to the MCP server. Pass CLI arguments to use it as a CLI instead.
CLI
The CLI mirrors the tools: one subcommand per tool, taking its arguments as a single JSON object.
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 --versionExit codes: 0 on success, 1 on an API or validation error (the
error names the problem), 2 for usage errors.
MCP server
One bin serves both faces. The mcp subcommand starts a stdio MCP
server:
npx -y @reneturcios/animeport mcpMCP client configuration:
{
"mcpServers": {
"animeport": {
"command": "npx",
"args": ["-y", "@reneturcios/animeport", "mcp"],
"env": { "ANILIST_TOKEN": "your token (optional)" }
}
}
}Tools
Tool | Input | What it does |
| — | Get the list of available genres on AniList. |
| — | Get the list of available media tags on AniList. |
|
| Get details of a studio by AniList ID or name. |
|
| Search for anime by title, genre, or season year. |
|
| Search for manga by title, genre, or season year. |
|
| Search for characters by name. |
|
| Search for staff by name. |
|
| Search for studios by name. |
|
| Search for AniList users by username. |
|
| Get detailed information about an anime by AniList ID. |
|
| Get detailed information about a manga by AniList ID. |
|
| Get detailed information about a character by AniList ID. |
|
| Get detailed information about a staff member by AniList ID. |
| — | Get characters whose birthday is today. |
| — | Get staff members whose birthday is today. |
|
| Get a user's anime list, optionally filtered by status. |
|
| Get a user's manga list, optionally filtered by status. |
|
| Get a user's AniList profile. |
|
| Get a user's activity statistics. |
|
| Get recommendations for a media entry by its AniList ID. |
Scope
Omitted from this core subset: 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, and update_user. The omitted set is deliberately the
login, write, favourite, and thread surface; animeport is read-only
by design. The catalogue data itself is AniList's; this package
reproduces the tool surface and the request/response handling, not
AniList's database.
Development
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 tsxLicense
MIT — see LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
AniList MCP — wraps AniList GraphQL API (free, no auth)
Access and interact with anime and manga data seamlessly. Retrieve detailed information about your…
Jikan MCP — wraps the Jikan v4 API (anime/manga data, free, no auth)
Search MCP servers, MCP clients and AI agents, and retrieve listing details. Free, read-only access.
Related MCP Servers
- AlicenseBqualityBmaintenanceAniList MCP server for accessing AniList API data44177 npm92MIT
- AlicenseBqualityDmaintenanceMCP Server for interacting with the MyAnimeList API, allowing LLM clients to access and interact with anime, manga and more.154MIT
- AlicenseAqualityAmaintenanceMCP server for MyAnimeList that enables searching anime/manga, getting details, rankings, seasons, characters, reviews, and user profiles without authentication, and managing personal anime/manga lists with authentication (token required).254180 npm3MIT
- AlicenseNot gradedqualityBmaintenanceEnables querying AniList's anime and manga database via GraphQL API with no authentication required.263 npmMIT