AnimeHunt anime & manga catalog
Free anime, manga & webtoon directory: search 57k titles, recommendations, airing, where to stream.
Should I use this
Quality & Safety
Findings (2)
- LOWin similar_titles
- LOWin list_genres
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"animehunt": {
"url": "https://animehunt.co/api/mcp"
}
}
}Remote endpoints
https://animehunt.co/api/mcpstreamable-httpWhat it can do
Tool inventory
Tools (15)
🟢search_titles(query, media_type, limit)
Find anime, manga or webtoons by title (any language, partial or misspelled is fine). Returns the best matches with year, format, score and the page URL.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Title to look for"
},
"media_type": {
"description": "Restrict to anime or manga",
"type": "string",
"enum": [
"anime",
"manga"
]
},
"limit": {
"default": 10,
"type": "integer",
"minimum": 1,
"maximum": 25
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_title(title, media_type)
Full details for one anime, manga or webtoon: synopsis, genres, themes, studios, status, score, where to watch or read (official streaming and reading links), and related entries. Accepts a slug (from search results) or a title.
Input Schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Slug such as \"cowboy-bebop\" or a title to look up"
},
"media_type": {
"type": "string",
"enum": [
"anime",
"manga"
]
}
},
"required": [
"title"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢similar_titles(title, media_type, limit)
Recommendations for one anime, manga or webtoon: "similar by themes" (shared genres and tags) and "people who liked it also liked" (community pairs). Accepts a slug or a title.
Input Schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"media_type": {
"type": "string",
"enum": [
"anime",
"manga"
]
},
"limit": {
"default": 8,
"type": "integer",
"minimum": 1,
"maximum": 12
}
},
"required": [
"title"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢recommend_from_liked(liked, media_type, exclude, limit)
Give 1-10 anime, manga or webtoons the person liked and get recommendations that fit the whole set, with the reason ("because you liked X"). Best tool for "I liked A and B, what should I watch next?".
Input Schema
{
"type": "object",
"properties": {
"liked": {
"minItems": 1,
"maxItems": 10,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"description": "Titles or slugs the person liked"
},
"media_type": {
"description": "Recommend anime or manga (defaults to the same type as the seeds)",
"type": "string",
"enum": [
"anime",
"manga"
]
},
"exclude": {
"description": "Titles or slugs to leave out (already seen)",
"maxItems": 50,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"limit": {
"default": 10,
"type": "integer",
"minimum": 1,
"maximum": 25
}
},
"required": [
"liked"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢discover_titles(media_type, genres, year, status, format, ...)
Browse the catalog by genre, year, status, format, service and sort order, including webtoons (Korean manhwa, Chinese manhua, WEBTOON and Tapas originals) with webtoon_only and reading platforms in platform. Use list_genres for the genre slugs. Good for "best romance anime", "new isekai manga from 2025", "highest rated movies", "what anime is on Netflix", "best action manhwa", "romance webtoons on WEBTOON".
Input Schema
{
"type": "object",
"properties": {
"media_type": {
"default": "anime",
"type": "string",
"enum": [
"anime",
"manga"
]
},
"genres": {
"description": "Genre slugs, e.g. [\"romance\", \"slice-of-life\"]",
"maxItems": 5,
"type": "array",
"items": {
"type": "string"
}
},
"year": {
"type": "integer",
"minimum": 1900,
"maximum": 2100
},
"status": {
"type": "string",
"enum": [
"releasing",
"finished",
"upcoming",
"cancelled",
"hiatus"
]
},
"format": {
"type": "string",
"enum": [
"tv",
"tv_short",
"movie",
"ova",
"ona",
"special",
"manga",
"novel",
"one_shot",
"webtoon",
"light_novel"
]
},
"sort": {
"default": "popular",
"type": "string",
"enum": [
"popular",
"score",
"newest"
]
},
"indie_only": {
"description": "Only independent/creator-listed titles",
"type": "boolean"
},
"webtoon_only": {
"description": "Only webtoons (vertical-scroll comics: Korean manhwa, Chinese manhua, WEBTOON and Tapas originals)",
"type": "boolean"
},
"platform": {
"description": "Only titles available on this service: streaming (\"netflix\", \"crunchyroll\", ...) or reading (\"webtoon\", \"tapas\", \"manga-plus\", ...)",
"type": "string",
"enum": [
"netflix",
"crunchyroll",
"hulu",
"prime-video",
"disney-plus",
"hidive",
"max",
"bilibili",
"youtube",
"tubi",
"webtoon",
"tapas",
"lezhin",
"tappytoon",
"manta",
"naver-webtoon",
"kakao-webtoon",
"kakaopage",
"comico",
"kuaikan-manhua",
"manga-plus",
"viz",
"shonen-jump-plus",
"piccoma",
"inkr",
"k-manga"
]
},
"limit": {
"default": 12,
"type": "integer",
"minimum": 1,
"maximum": 25
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢list_genres
The genre slugs accepted by discover_titles.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢airing_this_week(limit)
Anime episodes airing in the next 7 days, with episode number and air time (UTC).
Input Schema
{
"type": "object",
"properties": {
"limit": {
"default": 20,
"type": "integer",
"minimum": 1,
"maximum": 40
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢season_titles(year, season, limit)
All anime of one season (winter, spring, summer, fall) of a year, most popular first. Includes upcoming seasons.
Input Schema
{
"type": "object",
"properties": {
"year": {
"type": "integer",
"minimum": 1960,
"maximum": 2100
},
"season": {
"type": "string",
"enum": [
"winter",
"spring",
"summer",
"fall"
]
},
"limit": {
"default": 20,
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"required": [
"year",
"season"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢resolve_title(text, media_type, limit)
Given the title of a web page or a messy string (e.g. "Watch Frieren Episode 12 Online - SomeSite"), returns the catalog titles it most likely refers to, best first, with the detected episode or chapter number. Built for browser extensions and agents reading the current page.
Input Schema
{
"type": "object",
"properties": {
"text": {
"type": "string",
"minLength": 2,
"maxLength": 300,
"description": "Page title or any string naming the series"
},
"media_type": {
"type": "string",
"enum": [
"anime",
"manga"
]
},
"limit": {
"default": 5,
"type": "integer",
"minimum": 1,
"maximum": 10
}
},
"required": [
"text"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢creator_listing_guide(media_type)
For creators asking where to publish, post or promote their indie manga, webcomic, webtoon, light novel or anime (including after Tapas shut down, or when AniList and MyAnimeList refuse self-published, Western or AI-labelled work). Returns the requirements, steps and links to list or claim a series in the AnimeHunt anime & manga directory. Listing is free; the series stays hosted wherever it is published.
Input Schema
{
"type": "object",
"properties": {
"media_type": {
"description": "What they made, if known",
"type": "string",
"enum": [
"anime",
"manga"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}⚪suggest_feature(title, details, contact)
Sends a feature suggestion or piece of feedback to the AnimeHunt team on the person's behalf. Use when someone wishes the site did something it does not, or wants to report a problem. One sentence title plus optional details.
Input Schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"minLength": 5,
"maxLength": 120,
"description": "One-line summary of the wanted feature or the problem"
},
"details": {
"description": "What problem it solves, how it should work",
"type": "string",
"maxLength": 2000
},
"contact": {
"description": "Optional email or handle if the person wants a reply",
"type": "string",
"maxLength": 200
}
},
"required": [
"title"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢my_library(status, media_type, limit)
The signed-in person's AnimeHunt library: what they are watching or reading, plan to, finished, with scores and progress. Needs sign-in (see the error text when not signed in).
Input Schema
{
"type": "object",
"properties": {
"status": {
"description": "Only one shelf, e.g. \"current\" or \"planning\"",
"type": "string",
"enum": [
"current",
"planning",
"completed",
"dropped",
"paused",
"repeating"
]
},
"media_type": {
"type": "string",
"enum": [
"anime",
"manga"
]
},
"limit": {
"default": 25,
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡add_to_library(title, media_type, status, progress)
Add a title to the signed-in person's AnimeHunt library or move it between shelves (watching/reading = "current", "planning", "completed", "dropped", "paused", "repeating"); optional progress. Needs sign-in.
Input Schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Title as the person said it, or a slug from search results"
},
"media_type": {
"description": "Narrows the title lookup when the name is ambiguous",
"type": "string",
"enum": [
"anime",
"manga"
]
},
"status": {
"default": "planning",
"type": "string",
"enum": [
"current",
"planning",
"completed",
"dropped",
"paused",
"repeating"
]
},
"progress": {
"description": "Episodes watched or chapters read",
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"required": [
"title"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}⚪rate_title(title, media_type, score)
Give a title a score from 1 to 10 (decimals allowed) in the signed-in person's library; creates the entry as "completed" when it is not there yet. Needs sign-in.
Input Schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Title as the person said it, or a slug from search results"
},
"media_type": {
"description": "Narrows the title lookup when the name is ambiguous",
"type": "string",
"enum": [
"anime",
"manga"
]
},
"score": {
"type": "number",
"minimum": 1,
"maximum": 10,
"description": "1 to 10, e.g. 8.5"
}
},
"required": [
"title",
"score"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡write_review(title, media_type, review, contains_spoilers)
Post the signed-in person's review of a title under their name. The review text must be the person's own words (ask them for it; do not write it for them); it is shown with a "via an assistant" label. One review per title; posting again replaces it. Needs sign-in.
Input Schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Title as the person said it, or a slug from search results"
},
"media_type": {
"description": "Narrows the title lookup when the name is ambiguous",
"type": "string",
"enum": [
"anime",
"manga"
]
},
"review": {
"type": "string",
"minLength": 50,
"maxLength": 20000,
"description": "The person's own review text"
},
"contains_spoilers": {
"default": false,
"type": "boolean"
}
},
"required": [
"title",
"review"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Evidence