anime-mcp-server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@anime-mcp-serversearch for anime Attack on Titan"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Tools
Eight tools covering anime and manga discovery, detail, and navigation:
Tool | Description |
| Search anime or manga by title, genre, tag, season, year, format, or status. Returns ranked results with IDs, titles, scores, format, and episode/chapter counts. AniList primary; Jikan fallback on empty results. |
| Full detail for one anime or manga by AniList ID — synopsis, format, episode/chapter count, status, season, studios, source material, genres and tags (spoiler-flagged), AniList and MAL scores side by side, streaming links, cover/banner, and direct relations. |
| Franchise untangler. Walks the related-works graph from a media ID beyond one hop — sequels, prequels, side stories, movies, OVAs, source and adaptation — and returns them in suggested watch/read order. |
| Airing schedule for a season or upcoming episode window. Season mode lists all anime airing in a given season/year. Upcoming mode returns the next episode for each airing title within a date window, with UTC timestamp and countdown. |
| Characters and voice actors for a title, or look up a character/VA by name. Returns characters with role (main/supporting/background), voice actors by language, and cross-links to other media. |
| Recommendations for a title, merged from AniList and Jikan (MAL), with scores and vote counts. Optionally accepts what the user liked about the source title to contextualize picks. |
| Top, trending, or seasonal rankings. Filterable by genre, tag, and format. Top returns all-time by score; trending returns current week; seasonal returns the current or specified season sorted by popularity. |
| A studio's full filmography by name or AniList studio ID — all titles the studio produced, sortable by year or score, with format, status, and episode count. |
anime_search_media
Search for anime or manga across multiple dimensions.
Free-text title search with AniList primary; falls back to Jikan when AniList returns empty
Filter by genre, tag, season, year, format (
TV,MOVIE,OVA,MANGA,NOVEL, etc.), and status (RELEASING,FINISHED, etc.)Adult content gated behind explicit
include_adult: true(default off)Pagination via
pageandper_page
anime_get_media
Full detail for a single anime or manga — the flagship tool for a title's complete profile.
AniList full-detail query supplemented in parallel by Jikan (MAL score) and Kitsu (streaming links with sub/dub language flags)
AniList and MAL scores surfaced side by side — never blended
Spoiler-safe by default: tags carry a
spoilerflag; relation descriptions omitted unlessreveal_spoilers: trueAll timestamps UTC; season labels included to avoid boundary ambiguity
anime_get_relations
Build the watch/read order for an entire franchise.
Multi-hop BFS over AniList's relation graph, up to
max_depthhops (default 2, max 4)Relation types: SOURCE, PREQUEL, SEQUEL, SIDE_STORY, SPIN_OFF, ADAPTATION, OVA, SPECIAL, MOVIE
Topological sort: SOURCE → PREQUEL → main story chain → SEQUEL → SIDE_STORY → SPIN_OFF → supplementary entries
Each entry includes
seasonYearand episode/chapter count for context
anime_find_characters
Bidirectional character and voice actor lookup.
By media ID: characters for a title with voice actors by language
By character name: find the character and all media they appear in
By voice actor name: find the VA and all roles across media
Language filter via AniList
StaffLanguageenum (JAPANESE, ENGLISH, KOREAN, etc.)
Related MCP server: Bangumi TV MCP Service
Resources and prompts
Type | Name | Description |
Resource |
| Full media record for an anime or manga by AniList ID — same data as |
All resource data is also reachable via tools. Use anime_search_media to discover AniList IDs before fetching the resource URI.
Features
Built on @cyanheads/mcp-ts-core:
Declarative tool and resource definitions — single file per primitive, framework handles registration and validation
Unified error handling — handlers throw, framework catches, classifies, and formats
Pluggable auth:
none,jwt,oauthSwappable storage backends:
in-memory,filesystem,Supabase,Cloudflare KV/R2/D1Structured logging with optional OpenTelemetry tracing
STDIO and Streamable HTTP transports
Anime/manga-specific:
Three-source architecture: AniList GraphQL (primary), Jikan v4 REST (MAL scores + recommendations), Kitsu JSON:API (streaming links with sub/dub language detail)
ID reconciliation via AniList's
idMalbridge — no cross-source ID guessingFranchise relation graph traversal with topological watch-order sort
Rate-limit-aware service layer: AniList 30 req/30s with automatic backoff; Jikan 350ms floor between calls
Keyless by design — all three sources are public and require no API credentials
Local-only by design: free APIs are tightly rate-limited per IP; hosting would pool users onto one IP and risk throttling or bans. Each local user brings their own IP and modest usage.
Agent-friendly output:
Dual scores surfaced separately — AniList
meanScore(0–100) and MALscore(0–10) with population size (scored_by) so agents can reason about weight; never blended into a compositeSpoiler safety by default — AniList tags carry
isGeneralSpoiler; relation descriptions omitted unless opted inSupplement provenance — each response indicates which sources contributed (AniList, Jikan, Kitsu) and which failed gracefully, so agents know what data is present
UTC timestamps throughout; season labels echoed (
WINTER 2024) to avoid the winter/spring/summer/fall boundary footgun
Getting started
No API keys required — all three upstream sources (AniList, Jikan, Kitsu) are keyless public APIs.
Add the following to your MCP client configuration file:
{
"mcpServers": {
"anime-mcp-server": {
"type": "stdio",
"command": "bunx",
"args": ["@cyanheads/anime-mcp-server@latest"],
"env": {
"MCP_TRANSPORT_TYPE": "stdio",
"MCP_LOG_LEVEL": "info"
}
}
}
}Or with npx (no Bun required):
{
"mcpServers": {
"anime-mcp-server": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@cyanheads/anime-mcp-server@latest"],
"env": {
"MCP_TRANSPORT_TYPE": "stdio",
"MCP_LOG_LEVEL": "info"
}
}
}
}Or with Docker:
{
"mcpServers": {
"anime-mcp-server": {
"type": "stdio",
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "MCP_TRANSPORT_TYPE=stdio",
"ghcr.io/cyanheads/anime-mcp-server:latest"
]
}
}
}For Streamable HTTP, set the transport and start the server:
MCP_TRANSPORT_TYPE=http MCP_HTTP_PORT=3010 bun run start:http
# Server listens at http://localhost:3010/mcpPrerequisites
Bun v1.3.0 or higher (or Node.js v24+). No API keys needed.
Installation
Clone the repository:
git clone https://github.com/cyanheads/anime-mcp-server.gitNavigate into the directory:
cd anime-mcp-serverInstall dependencies:
bun installConfigure environment (optional):
cp .env.example .env
# edit .env if you want to change transport or log levelConfiguration
No server-specific env vars are required. All framework variables are optional with sensible defaults.
Variable | Description | Default |
| Transport: |
|
| Port for HTTP server. |
|
| Hostname for HTTP server. |
|
| Endpoint path for the MCP server. |
|
| Auth mode: |
|
| Log level (RFC 5424): |
|
| Enable OpenTelemetry instrumentation. |
|
See .env.example for the full list of optional overrides.
Running the server
Local development
Build and run:
# One-time build bun run rebuild # Run the built server bun run start:stdio # or bun run start:httpRun checks and tests:
bun run devcheck # Lint, format, typecheck, security bun run test # Vitest test suite bun run lint:mcp # Validate MCP definitions against spec
Docker
docker build -t anime-mcp-server .
docker run --rm -p 3010:3010 anime-mcp-serverThe Dockerfile defaults to HTTP transport, stateless session mode, and logs to /var/log/anime-mcp-server. OpenTelemetry peer dependencies are installed by default — build with --build-arg OTEL_ENABLED=false to omit them.
Project structure
Directory | Purpose |
|
|
| Tool definitions ( |
| Resource definitions ( |
| AniList GraphQL client — primary source for all queries. |
| Jikan v4 REST client — MAL scores and recommendations. |
| Kitsu JSON:API client — streaming links with sub/dub language detail. |
| Unit and integration tests mirroring |
| Per-version changelog files ( |
Development guide
See CLAUDE.md/AGENTS.md for development guidelines and architectural rules. The short version:
Handlers throw, framework catches — no
try/catchin tool logicUse
ctx.logfor request-scoped logging,ctx.statefor tenant-scoped storageRegister new tools and resources via the barrels in
src/mcp-server/*/definitions/index.tsWrap external API calls: validate raw → normalize to domain type → return output schema; never fabricate missing fields
AniList is primary — supplement failures (Jikan, Kitsu) degrade gracefully via
Promise.allSettled
Contributing
Issues and pull requests are welcome. Run checks and tests before submitting:
bun run devcheck
bun run testLicense
Apache-2.0 — see LICENSE for details.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceAniList MCP server for accessing AniList API dataLast updated448579MIT
- FlicenseAqualityCmaintenanceProvides MCP access to the BangumiTV API, allowing users to retrieve and interact with anime, manga, music, and game information through natural language queries.Last updated1722
- Alicense-qualityFmaintenanceAn MCP server that enables users to search Bilibili videos, access trending rankings, and retrieve detailed information about videos, content creators, and anime schedules. It allows AI applications to interact directly with Bilibili content via simple API interfaces.Last updated60179MIT
- Alicense-qualityDmaintenanceA Model Context Protocol server that provides access to MyAnimeList's API for anime and manga data. It enables users to search, view rankings, manage their personal lists, and get recommendations through Claude and other MCP clients.Last updated494MIT
Related MCP Connectors
MCP server for AI dialogue using various LLM models via AceDataCloud
An MCP server that integrates with Discord to provide AI-powered features.
MCP server for NanoBanana AI image generation and editing
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/cyanheads/anime-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server