Skip to main content
Glama
Grinv

MAL MCP Server

Get anime recommendations

get_anime_recommendations
Read-only

Retrieve top 25 community-voted anime recommendations similar to a given MyAnimeList ID, ordered by votes.

Instructions

Get community recommendations for anime similar to the given mal_id, ordered by votes and capped at the top 25 (no pagination). Get the mal_id from search_anime. Use get_top_anime instead for a global popularity/score ranking not tied to one title, or get_recent_anime_recommendations for a site-wide feed of recommendation pairs not tied to this title either. sfw/sfw_strict filter NSFW entries out of the recommendation list itself. If Tenrai is unavailable and MAL_CLIENT_ID is set, transparently retries via the official API's own recommendations field (same output shape, but ordering/counts may differ slightly from Tenrai's, and sfw/sfw_strict are ignored entirely).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesMyAnimeList numeric ID.
sfwNoIf 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.
sfw_strictNoIf 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.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
recommendationsYes
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint and openWorldHint. The description adds that fallback to official API may occur with different ordering/counts and that sfw/sfw_strict are ignored in fallback. This provides behavioral nuance beyond annotations without contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with no redundant sentences. It is structured logically: core purpose, usage guidance, parameter details, fallback behavior. Each sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (multiple data sources, fallback, filtering), the description fully covers what the tool does, when to use alternatives, parameter details, and fallback idiosyncrasies. Output schema exists, so return values are already documented.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions, so baseline is 3. The description adds value by clarifying usage (e.g., mal_id from search_anime) and explaining sfw/sfw_strict details (excludes R+ and Ecchi) and fallback behavior (ignored). This exceeds schema explanations.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns community recommendations similar to a given mal_id, ordered by votes, capped at top 25 with no pagination. It distinguishes itself from siblings like get_top_anime and get_recent_anime_recommendations, providing a specific verb, resource, and constraints.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells when to use alternatives: 'Use get_top_anime instead for a global popularity/score ranking not tied to one title, or get_recent_anime_recommendations for a site-wide feed...' and advises to get the mal_id from search_anime, covering prerequisites and exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

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/Grinv/mal-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server