{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"awesome-anilist","slug":"anilist","name":"AniList","type":"mcp","url":"https://github.com/yuna0x0/anilist-mcp","page_url":"https://unfragile.ai/anilist","categories":["mcp-servers"],"tags":[],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"awesome-anilist__cap_0","uri":"capability://tool.use.integration.mcp.based.anilist.api.bridging.with.tool.registration","name":"mcp-based anilist api bridging with tool registration","description":"Implements the Model Context Protocol (MCP) as a middleware layer between client applications (like Claude Desktop) and the AniList GraphQL API. The server uses a tool registration framework that organizes 40+ tools into nine categories (Search, Media, User, People, Lists, Activity, Thread, Recommendation, Misc), with each tool mapping to specific AniList API endpoints. Client requests flow through StdioServerTransport for message handling, then dispatch to appropriate tool handlers that construct and execute GraphQL queries against AniList's backend.","intents":["Enable AI assistants to query anime/manga data without direct API knowledge","Provide structured, categorized access to AniList functionality through a standardized protocol","Allow LLM-based applications to integrate real-time anime/manga information into workflows"],"best_for":["AI assistant developers building anime/manga-aware chatbots","Teams integrating AniList data into Claude Desktop or other MCP-compatible clients","Developers building automation workflows that need anime/manga metadata"],"limitations":["Requires MCP-compatible client application; cannot be used as standalone REST API","Tool execution latency depends on AniList API response times (typically 200-500ms per query)","No built-in caching layer — repeated queries hit AniList API directly each time","Limited to AniList's public GraphQL schema; cannot extend with custom queries without modifying server code"],"requires":["Node.js runtime (Bun or Node.js 18+)","MCP-compatible client (Claude Desktop, or custom MCP client implementation)","Network access to AniList API (api.anilist.co)","Optional: ANILIST_TOKEN environment variable for authenticated operations"],"input_types":["Tool invocation parameters (strings, numbers, booleans)","GraphQL query variables (structured JSON)"],"output_types":["Structured JSON responses from AniList API","Tool execution results with anime/manga metadata"],"categories":["tool-use-integration","mcp-server"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-anilist__cap_1","uri":"capability://search.retrieval.anime.and.manga.search.with.multi.field.filtering","name":"anime and manga search with multi-field filtering","description":"Exposes search_anime and search_manga tools that query AniList's GraphQL API with support for filtering by title, genre, status, season, year, and other metadata fields. The tools accept search parameters and return paginated results with media details (title, description, ratings, genres, studios). Implements pagination through offset/limit parameters to handle large result sets efficiently.","intents":["Find anime or manga by title, genre, or release year","Discover media matching specific criteria (e.g., 'completed anime from 2023')","Retrieve paginated search results for recommendation or list-building workflows"],"best_for":["Chatbot developers building anime recommendation features","Users querying AniList through AI assistants for discovery","Automation workflows that need to find media matching specific criteria"],"limitations":["Search results are limited to AniList's indexing; obscure or very recent titles may not appear","Pagination requires manual offset management; no cursor-based pagination support","Filter combinations are limited to AniList's supported query parameters; complex boolean logic not available","Response time varies with result set size (large searches may take 500ms+)"],"requires":["Network access to AniList API","Valid search parameters (at least one filter field)","MCP client capable of invoking tools"],"input_types":["search (string): title or keyword","genre (string): comma-separated genre names","status (string): FINISHED, RELEASING, NOT_YET_RELEASED, CANCELLED","season (string): WINTER, SPRING, SUMMER, FALL","year (integer): release year","sort (string): POPULARITY_DESC, SCORE_DESC, TRENDING_DESC","page (integer): pagination offset","perPage (integer): results per page"],"output_types":["JSON array of media objects with: id, title, description, genres, studios, averageScore, popularity, status, season, year, coverImage"],"categories":["search-retrieval","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-anilist__cap_2","uri":"capability://search.retrieval.detailed.media.information.retrieval.with.related.content","name":"detailed media information retrieval with related content","description":"Implements get_anime and get_manga tools that fetch comprehensive media details from AniList by ID or title, returning structured data including synopsis, genres, studios, staff, characters, relations (sequels/prequels), recommendations, and user statistics. Uses AniList's GraphQL API to construct queries that retrieve nested relationship data in a single request, avoiding N+1 query problems.","intents":["Retrieve full details about a specific anime or manga for display or analysis","Access related content (sequels, prequels, recommendations) for recommendation workflows","Get staff and character information associated with a media title"],"best_for":["Chatbot developers building detailed media info cards or summaries","Recommendation engines that need to traverse media relationships","Users querying specific anime/manga details through AI assistants"],"limitations":["Requires media ID or exact title match; fuzzy matching not supported","Related content (characters, staff, recommendations) may be incomplete for lesser-known titles","Response payload can be large (50KB+) for popular media with extensive cast/crew data","No built-in filtering of related content; returns all available relationships"],"requires":["Network access to AniList API","Valid media ID (integer) or exact title match (string)","MCP client capable of invoking tools"],"input_types":["id (integer): AniList media ID","title (string): exact or partial media title"],"output_types":["JSON object with: id, title, description, genres, studios, status, season, year, episodes/chapters, averageScore, popularity, characters (array), staff (array), relations (array), recommendations (array), coverImage, bannerImage"],"categories":["search-retrieval","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-anilist__cap_3","uri":"capability://tool.use.integration.user.profile.and.list.management.with.authentication","name":"user profile and list management with authentication","description":"Provides get_user_profile, get_user_anime_list, get_user_manga_list, and update_list_entry tools that interact with user-specific AniList data. Authentication is handled via optional ANILIST_TOKEN environment variable; authenticated operations allow users to view private lists and update their own entries (scores, status, progress). Unauthenticated requests return public profile data only. List queries support filtering by status (CURRENT, COMPLETED, PAUSED, DROPPED, PLANNING) and sorting.","intents":["Retrieve a user's public anime/manga lists for analysis or display","Update user list entries (scores, watch status, progress) on behalf of authenticated users","Access user profile information (username, avatar, statistics) for personalization"],"best_for":["Developers building personalized anime tracking assistants","Users managing their AniList lists through AI assistants","Analytics workflows analyzing user watch/read patterns"],"limitations":["Requires ANILIST_TOKEN for write operations (updating lists); public read access works without auth","Token must be stored as environment variable; no in-app token management UI","List updates are rate-limited by AniList API (typically 60 requests/minute)","Cannot bulk-update multiple list entries in a single request; requires sequential tool invocations","Private lists only visible to authenticated user; no cross-user list sharing"],"requires":["Network access to AniList API","Valid AniList username (string) for read operations","ANILIST_TOKEN environment variable for write operations (update_list_entry)","MCP client capable of invoking tools"],"input_types":["username (string): AniList username","status (string): CURRENT, COMPLETED, PAUSED, DROPPED, PLANNING","sort (string): UPDATED_TIME_DESC, SCORE_DESC, PROGRESS_DESC","mediaId (integer): AniList media ID for list updates","score (integer): 0-100 rating","progress (integer): episodes/chapters watched/read","status (string): CURRENT, COMPLETED, PAUSED, DROPPED, PLANNING"],"output_types":["User profile: JSON object with username, avatar, statistics (anime/manga counts, scores)","List entries: JSON array with mediaId, title, status, score, progress, updatedAt"],"categories":["tool-use-integration","memory-knowledge"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-anilist__cap_4","uri":"capability://search.retrieval.character.and.staff.information.retrieval","name":"character and staff information retrieval","description":"Exposes get_character and get_staff tools that fetch detailed information about anime/manga characters and production staff from AniList. Returns structured data including character descriptions, voice actors, media appearances, and staff roles (director, composer, writer, etc.). Queries use AniList's GraphQL API to retrieve nested relationships (e.g., voice actors for a character, works by a staff member) in a single request.","intents":["Look up character details and voice actor information","Find staff members by role (director, composer, writer) and their works","Retrieve character appearances across multiple media titles"],"best_for":["Chatbot developers building character/voice actor lookup features","Fans querying character details through AI assistants","Content creators researching staff and production credits"],"limitations":["Requires character/staff ID; no fuzzy name matching","Voice actor information may be incomplete for lesser-known characters or non-Japanese productions","Staff roles are limited to AniList's predefined role taxonomy (director, composer, writer, etc.)","Character appearance data only includes media where character is explicitly credited"],"requires":["Network access to AniList API","Valid character or staff ID (integer)","MCP client capable of invoking tools"],"input_types":["id (integer): AniList character or staff ID"],"output_types":["Character: JSON object with name, description, image, voiceActors (array), media (array of appearances)","Staff: JSON object with name, description, image, roles (array), works (array of media)"],"categories":["search-retrieval","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-anilist__cap_5","uri":"capability://search.retrieval.media.recommendations.with.personalization.context","name":"media recommendations with personalization context","description":"Implements get_recommendation and get_recommendations_for_media tools that retrieve AniList's recommendation engine results. The tools query recommendations based on media ID or user preferences, returning ranked suggestions with reasoning (e.g., 'similar genres', 'same studio'). Uses AniList's GraphQL API to fetch recommendation metadata including recommendation count and user ratings of recommendations.","intents":["Get AI-powered anime/manga recommendations based on a specific title","Retrieve personalized recommendations for a user based on their watch history","Discover media with similar themes, genres, or production teams"],"best_for":["Chatbot developers building recommendation features","Users discovering new anime/manga through AI assistants","Content discovery workflows that need ranked suggestions"],"limitations":["Recommendations are based on AniList's algorithm; cannot customize recommendation logic","Recommendation quality depends on media popularity and user rating volume","No filtering by recommendation type (e.g., 'same studio' vs. 'similar genre')","Recommendations for niche or very recent titles may be sparse or absent"],"requires":["Network access to AniList API","Valid media ID (integer) for media-based recommendations","MCP client capable of invoking tools"],"input_types":["mediaId (integer): AniList media ID for which to get recommendations","page (integer): pagination offset","perPage (integer): results per page"],"output_types":["JSON array of recommendation objects with: mediaId, title, reason, recommendationCount, rating"],"categories":["search-retrieval","planning-reasoning"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-anilist__cap_6","uri":"capability://tool.use.integration.user.activity.tracking.and.posting","name":"user activity tracking and posting","description":"Exposes get_activity and post_text_activity tools that retrieve user activities (watch/read updates, list changes) and allow authenticated users to post text-based activities. Activities are fetched from AniList's activity feed, showing what users have recently watched, rated, or commented on. Posting requires ANILIST_TOKEN authentication and creates new activity entries visible to the user's followers.","intents":["Retrieve recent user activities (watch updates, ratings) for social features","Post activity updates on behalf of authenticated users","Build activity feeds showing user engagement with media"],"best_for":["Developers building social anime tracking features","Users sharing watch updates through AI assistants","Activity feed aggregation for community engagement"],"limitations":["Requires ANILIST_TOKEN for posting activities; read access may be public or private depending on user settings","Activity posts are limited to text; no media attachments or rich formatting","Activity feed is paginated; no real-time streaming or WebSocket support","Cannot delete or edit posted activities through MCP tools"],"requires":["Network access to AniList API","ANILIST_TOKEN environment variable for post_text_activity","MCP client capable of invoking tools"],"input_types":["userId (integer): AniList user ID for retrieving activities","text (string): activity text to post (max length varies)","page (integer): pagination offset for activity feed","perPage (integer): results per page"],"output_types":["Activity: JSON object with id, text, user, createdAt, likes, replies","Post result: JSON object with success status and created activity ID"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-anilist__cap_7","uri":"capability://search.retrieval.forum.thread.and.comment.retrieval","name":"forum thread and comment retrieval","description":"Exposes get_thread and get_thread_comments tools that fetch AniList forum threads and their associated comments. Threads are retrieved by ID and return metadata (title, body, author, creation date, reply count). Comments are paginated and include user information, timestamps, and nested reply structure. Uses AniList's GraphQL API to fetch thread data with optional comment pagination.","intents":["Retrieve forum discussions about specific anime or manga","Access community comments and user opinions on media","Build discussion feeds or thread summaries for AI assistants"],"best_for":["Chatbot developers building community discussion features","Users exploring forum discussions through AI assistants","Content aggregation workflows that need community context"],"limitations":["Requires thread ID; no full-text search across threads","Comments are paginated; retrieving all comments for popular threads requires multiple requests","Cannot post new threads or comments through MCP tools (read-only)","Thread content may include spoilers; no spoiler filtering available"],"requires":["Network access to AniList API","Valid thread ID (integer)","MCP client capable of invoking tools"],"input_types":["threadId (integer): AniList forum thread ID","page (integer): pagination offset for comments","perPage (integer): comments per page"],"output_types":["Thread: JSON object with id, title, body, author, createdAt, replyCount","Comments: JSON array with id, body, author, createdAt, likes"],"categories":["search-retrieval","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-anilist__cap_8","uri":"capability://tool.use.integration.user.list.management.with.status.and.sorting","name":"user list management with status and sorting","description":"Implements update_list_entry tool that modifies user anime/manga list entries with support for updating score, progress (episodes/chapters watched), and status (CURRENT, COMPLETED, PAUSED, DROPPED, PLANNING). Requires ANILIST_TOKEN authentication. The tool constructs GraphQL mutations to update individual list entries, with validation of input parameters before submission to AniList API.","intents":["Update watch/read progress for anime or manga in a user's list","Change media status (mark as completed, paused, dropped, etc.)","Update ratings and scores for watched/read media"],"best_for":["Users managing their watch lists through AI assistants","Automation workflows that track viewing progress","Personalized tracking assistants that update lists on behalf of users"],"limitations":["Requires ANILIST_TOKEN; no guest or unauthenticated updates","Can only update one list entry per tool invocation; bulk updates require sequential calls","Rate-limited by AniList API (typically 60 requests/minute)","Cannot create new list entries; media must already be on user's list","No transaction support; partial failures may leave list in inconsistent state"],"requires":["Network access to AniList API","ANILIST_TOKEN environment variable","Valid media ID (integer) already on user's list","MCP client capable of invoking tools"],"input_types":["mediaId (integer): AniList media ID","score (integer): 0-100 rating (optional)","progress (integer): episodes/chapters watched/read (optional)","status (string): CURRENT, COMPLETED, PAUSED, DROPPED, PLANNING (optional)"],"output_types":["JSON object with success status, updated entry data (mediaId, title, score, progress, status, updatedAt)"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-anilist__cap_9","uri":"capability://data.processing.analysis.genre.and.studio.metadata.retrieval","name":"genre and studio metadata retrieval","description":"Exposes get_genres and get_studio tools that retrieve metadata about anime/manga genres and production studios. get_genres returns a list of all available genres on AniList with optional filtering. get_studio fetches detailed studio information including their produced media, founding year, and country. Uses AniList's GraphQL API to query static metadata and studio-specific media catalogs.","intents":["Retrieve available genre options for filtering and categorization","Look up studio information and their production history","Build genre-based recommendation or filtering workflows"],"best_for":["Developers building genre-based filtering interfaces","Content discovery workflows that need genre metadata","Studio research and production history tracking"],"limitations":["Genre list is static and may not reflect real-time AniList updates","Studio information is limited to what AniList has indexed; smaller studios may be missing","No genre hierarchy or parent-child relationships exposed","Studio media list is paginated; retrieving all works requires multiple requests"],"requires":["Network access to AniList API","Valid studio ID (integer) for studio lookup","MCP client capable of invoking tools"],"input_types":["studioId (integer): AniList studio ID","page (integer): pagination offset for studio media","perPage (integer): results per page"],"output_types":["Genres: JSON array of strings (e.g., ['Action', 'Adventure', 'Comedy', ...])","Studio: JSON object with id, name, country, isAnimationStudio, media (array)"],"categories":["data-processing-analysis","search-retrieval"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":27,"verified":false,"data_access_risk":"high","permissions":["Node.js runtime (Bun or Node.js 18+)","MCP-compatible client (Claude Desktop, or custom MCP client implementation)","Network access to AniList API (api.anilist.co)","Optional: ANILIST_TOKEN environment variable for authenticated operations","Network access to AniList API","Valid search parameters (at least one filter field)","MCP client capable of invoking tools","Valid media ID (integer) or exact title match (string)","Valid AniList username (string) for read operations","ANILIST_TOKEN environment variable for write operations (update_list_entry)"],"failure_modes":["Requires MCP-compatible client application; cannot be used as standalone REST API","Tool execution latency depends on AniList API response times (typically 200-500ms per query)","No built-in caching layer — repeated queries hit AniList API directly each time","Limited to AniList's public GraphQL schema; cannot extend with custom queries without modifying server code","Search results are limited to AniList's indexing; obscure or very recent titles may not appear","Pagination requires manual offset management; no cursor-based pagination support","Filter combinations are limited to AniList's supported query parameters; complex boolean logic not available","Response time varies with result set size (large searches may take 500ms+)","Requires media ID or exact title match; fuzzy matching not supported","Related content (characters, staff, recommendations) may be incomplete for lesser-known titles","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.05,"quality":0.3,"ecosystem":0.39999999999999997,"match_graph":0.25,"freshness":0.52,"weights":{"adoption":0.25,"quality":0.25,"ecosystem":0.15,"match_graph":0.23,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-06-17T09:51:02.370Z","last_scraped_at":"2026-05-03T14:00:15.503Z","last_commit":null},"community":{"stars":null,"forks":null,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=anilist","compare_url":"https://unfragile.ai/compare?artifact=anilist"}},"signature":"UPgnjWH72J8NAVuSUw9PMRknC4iwZD539QLjj6SZZIgy5hYxoPxx4AA7JqG57CiIPK78fgwYal0hrwEa+SOYCw==","signedAt":"2026-06-21T14:35:36.208Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/anilist","artifact":"https://unfragile.ai/anilist","verify":"https://unfragile.ai/api/v1/verify?slug=anilist","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}