The AniList MCP Server allows you to interact with the AniList API to access and manage anime, manga, and user data. With this server, you can:
Search and retrieve information about anime, manga, characters, staff, studios, and users
Manage user profiles including accessing lists, statistics, and following/unfollowing users
Perform media operations such as adding, updating, or removing entries from anime/manga lists and favoriting content
Handle activities and threads by creating, updating, or deleting user activities and retrieving thread information
Get recommendations for specific media and access site-wide statistics
Use advanced filtering to refine search results
Retrieve lists of genres and media tags
Access birthday information for characters or staff members
Provides tools for accessing and interacting with anime, manga, character, staff, and user data from AniList, including search capabilities, detailed information retrieval, user profiles and lists, filtering options, and genre/media tag data.
AniList MCP Server
A Model Context Protocol (MCP) server that interfaces with the AniList API, allowing LLM clients to access and interact with anime, manga, character, staff, and user data from AniList.
Features
Search for anime, manga, characters, staff, and studios
Get detailed information about specific anime, manga, characters, and staff members
Access user profiles and lists
Support for advanced filtering options
Retrieve genres and media tags
Dual transport support: Both HTTP and STDIO transports
Cloud deployment ready: Support Smithery and other platforms
Related MCP server: mcp-server-aistor
Requirements
Node.js 18+
Local Installation (STDIO Transport)
Add this server to your
mcp.json/claude_desktop_config.json:
You may remove the env object entirely, if you are not planning to use the AniList Token for operations that require login.
Restart your MCP client (e.g., Claude Desktop)
Use the tools to interact with AniList
Server Deployment (HTTP Transport)
Self-Hosting
Follow the Local Development instructions to set up the project locally, then run:
This will start the server on port 8081 by default. You can change the port by setting the PORT environment variable.
Cloud Deployment
You can deploy this MCP server to any cloud platform that supports Node.js server applications.
You can also deploy via MCP platforms like Smithery.
Configuration
Environment Variables (STDIO Transport and HTTP Transport server where host provides the config)
When using the STDIO transport or hosting the HTTP transport server, you can pass configuration via environment variables:
ANILIST_TOKEN: (Optional) AniList API Token (Only needed for operations that require login)
If you are hosting the HTTP transport server with token pre-configured, you should protect your endpoint and implement authentication before allowing users to access it. Otherwise, anyone can access your MCP server while using your AniList token.
HTTP Headers (HTTP Transport where user provides the config)
When using the HTTP transport, user can pass configuration via HTTP headers:
Anilist-Token: (Optional) AniList API Token (Only needed for operations that require login)
If the user provides the token in the header, while the server also has ANILIST_TOKEN set, the header value will take precedence.
Get an AniList API Token (Optional)
To get an API token, follow these steps:
Go to AniList settings.
Click on "Create New Client".
Use this URL as your client's "Redirect URL":
Click "Save"
Then go to https://anilist.co/api/v2/oauth/authorize?client_id={clientID}&response_type=token, replace the
{clientID}with the client ID you get. It will ask you to log in and then provide you with the token to use.Copy the generated token and use it in your
.envfile or environment variables.
Available Tools
Misc Tools
get_genres: Get all available genres on AniList
get_media_tags: Get all available media tags on AniList
get_site_statistics: Get AniList site statistics over the last seven days
get_studio: Get information about a studio by its AniList ID or name
favourite_studio: [Requires Login] Favourite or unfavourite a studio by its ID
Activity Tools
delete_activity: [Requires Login] Delete the current authorized user's activity post
get_activity: Get a specific AniList activity by its ID
get_user_activity: Fetch activities from a user
post_message_activity: [Requires Login] Post a new message activity or update an existing one
post_text_activity: [Requires Login] Post a new text activity or update an existing one
List Tools
get_user_anime_list: Get a user's anime list
get_user_manga_list: Get a user's manga list
add_list_entry: [Requires Login] Add an entry to the authorized user's list
remove_list_entry: [Requires Login] Remove an entry from the authorized user's list
update_list_entry: [Requires Login] Update an entry on the authorized user's list
Media Tools
get_anime: Get detailed information about an anime by its AniList ID
get_manga: Get detailed information about a manga by its AniList ID
favourite_anime: [Requires Login] Favourite or unfavourite an anime by its ID
favourite_manga: [Requires Login] Favourite or unfavourite a manga by its ID
People Tools
get_character: Get information about a character by their AniList ID
get_staff: Get information about staff member by their AniList ID
favourite_character: [Requires Login] Favourite or unfavourite a character by its ID
favourite_staff: [Requires Login] Favourite or unfavourite a staff member by their ID
get_todays_birthday_characters: Get all characters whose birthday is today
get_todays_birthday_staff: Get all staff members whose birthday is today
Recommendation Tools
get_recommendation: Get an AniList recommendation by its ID
get_recommendations_for_media: Get AniList recommendations for a specific media
Search Tools
search_activity: Search for activities on AniList
search_anime: Search for anime with query term and filters
search_manga: Search for manga with query term and filters
search_character: Search for characters based on a query term
search_staff: Search for staff members based on a query term
search_studio: Search for studios based on a query term
search_user: Search for users on AniList
Thread Tools
get_thread: Get a specific thread by its AniList ID
get_thread_comments: Get comments for a specific thread
delete_thread: [Requires Login] Delete a thread by its ID
User Tools
get_user_profile: Get a user's AniList profile
get_user_stats: Get a user's AniList statistics
get_full_user_info: Get a user's complete profile and stats information
get_user_recent_activity: Get recent activity from a user
get_authorized_user: [Requires Login] Get profile information of the currently authorized user
follow_user: [Requires Login] Follow or unfollow a user by their ID
update_user: [Requires Login] Update user settings
Example Usage
Basic Anime Search
Get Character Info
Compare Studio Works
Local Development
This project uses pnpm as its package manager.
Clone the repository and install dependencies:
Configuration (Optional)
Create a
.envfile by copying the example:
Edit the
.envfile and add your AniList API token:
Debugging with MCP Inspector
You can use the MCP Inspector to test and debug the AniList MCP server:
Then open your browser to the provided URL (usually http://localhost:6274) to access the MCP Inspector interface. From there, you can:
Connect to your running AniList MCP server
Browse available tools
Run tools with custom parameters
View the responses
This is particularly useful for testing your setup before connecting it to MCP clients like Claude Desktop.
Docker
Pull from GitHub Container Registry:
Docker build (Local Development):
Docker multi-platform build (Local Development):
MCP Bundles (MCPB)
To create an MCP Bundle for this server, run:
Security Notice
This MCP server accepts your AniList API token in the .env file, environment variable or HTTP header. Keep this information secure and never commit it to version control.
License
This project is licensed under the MIT License - see the LICENSE file for details.