Search anime
search_animeSearch MyAnimeList anime by keyword with filters like type, genre, rating, and status. Returns summaries with IDs and pagination info.
Instructions
Search MyAnimeList anime by keyword; returns compact summaries (with the mal_id that other anime tools require) plus pagination info. If Tenrai is unavailable and MAL_CLIENT_ID is set, transparently retries via the official API, which ignores every filter except q/sfw/limit/page (type/status/genres/genres_exclude/rating/score/min_score/max_score/letter/producers/start_date/end_date/unapproved/order_by/sort are silently dropped), always returns empty themes/demographics/broadcast (no official-API equivalent for any of these), enforces an explicit sfw: true client-side (a filtered page can come back shorter than limit), and — for a query with no real title match — comes back with a page of unrelated anime instead of an empty result (a quirk of the official search endpoint itself, not a mal-mcp bug; don't treat a nonsense-query result as a real match during a fallback).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query, e.g. an anime title. | |
| sfw | No | If true, exclude adult/explicit-rated entries (R+ Mild Nudity and up). Defaults to false (no filtering). Note: this alone still allows mainstream, safely-rated shows tagged with the Ecchi genre (fanservice) through — use `sfw_strict` to also exclude those. | |
| page | No | 1-based page number for pagination (1-1000). | |
| sort | No | Sort direction. | |
| type | No | Restrict to one or more media types. | |
| limit | No | Max results per page (1-50). | |
| score | No | Restrict to entries with exactly this average score (rarely useful — prefer min_score/max_score for a range). | |
| genres | No | Comma-separated MAL genre IDs to include (max 25), e.g. '1,4'. Look up IDs with get_anime_genres. | |
| letter | No | Restrict results to entries whose title starts with this single letter. | |
| rating | No | Restrict to one or more specific content ratings. More granular than `sfw`/`sfw_strict` — use this to target a precise rating band instead of a blanket adult-content cutoff. | |
| status | No | Filter by airing status. | |
| end_date | No | Only include entries whose end date is on or before this date (YYYY-MM-DD). | |
| order_by | No | Field to order by. | |
| max_score | No | Maximum average MAL score (inclusive), 1-10. | |
| min_score | No | Minimum average MAL score (inclusive), 0-10. | |
| producers | No | Comma-separated MAL producer/studio IDs to restrict to (max 25). Look up IDs with get_producers. | |
| sfw_strict | No | If true, exclude adult/explicit-rated entries AND anything tagged with the Ecchi genre, even otherwise-mainstream/safely-rated shows. Stricter than `sfw` alone. Defaults to false. | |
| start_date | No | Only include entries whose start date is on or after this date (YYYY-MM-DD). | |
| unapproved | No | If true, also include entries not yet approved by MAL's moderators (excluded by default). Defaults to false. | |
| genres_exclude | No | Comma-separated MAL genre IDs to exclude (max 25), e.g. '1,4'. Look up IDs with get_anime_genres. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| page | Yes | ||
| results | Yes |