{"id":26570780,"url":"https://github.com/yuna0x0/anilist-mcp","last_synced_at":"2025-10-09T04:33:18.967Z","repository":{"id":283539628,"uuid":"952023806","full_name":"yuna0x0/anilist-mcp","owner":"yuna0x0","description":"AniList MCP server for accessing anime and manga data","archived":false,"fork":false,"pushed_at":"2025-09-29T12:44:09.000Z","size":410,"stargazers_count":56,"open_issues_count":1,"forks_count":8,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-06T23:39:57.290Z","etag":null,"topics":["ai","anilist","anime","api","llm","manga","mcp","model-context-protocol"],"latest_commit_sha":null,"homepage":"https://github.com/yuna0x0/anilist-mcp","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/yuna0x0.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-03-20T16:00:06.000Z","updated_at":"2025-10-06T05:25:12.000Z","dependencies_parsed_at":"2025-03-20T20:08:45.782Z","dependency_job_id":"680e41d6-3c87-42b9-81be-5f8b624c21b5","html_url":"https://github.com/yuna0x0/anilist-mcp","commit_stats":null,"previous_names":["yuna0x0/anilist-mcp"],"tags_count":26,"template":false,"template_full_name":null,"purl":"pkg:github/yuna0x0/anilist-mcp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yuna0x0%2Fanilist-mcp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yuna0x0%2Fanilist-mcp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yuna0x0%2Fanilist-mcp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yuna0x0%2Fanilist-mcp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yuna0x0","download_url":"https://codeload.github.com/yuna0x0/anilist-mcp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yuna0x0%2Fanilist-mcp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279000703,"owners_count":26082921,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-09T02:00:07.460Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","anilist","anime","api","llm","manga","mcp","model-context-protocol"],"created_at":"2025-03-22T22:19:14.061Z","updated_at":"2025-10-09T04:33:18.962Z","avatar_url":"https://github.com/yuna0x0.png","language":"TypeScript","funding_links":[],"categories":["Search \u0026 Extraction","Data Access \u0026 Integration MCP Servers","🤖 AI/ML","MCP 服务器精选列表","Art \u0026 Culture","Legend","サーバー実装","Search \u0026 Data Extraction","Community Servers","MCP Servers","Content Creation","Table of Contents","カテゴリ","MCP Servers \u0026 Protocol","Uncategorized","🎨 Art \u0026 Culture (26 servers)","Server Implementations"],"sub_categories":["Data APIs","🏛️ 艺术与文化","🎨 \u003ca name=\"art-and-culture\"\u003e\u003c/a\u003eArt \u0026 Culture","🎨 \u003ca name=\"art-and-culture\"\u003e\u003c/a\u003e芸術と文化","How to Submit","🎨 Art \u0026 Culture","Other Tools and Integrations","📝 \u003ca name=\"content--media\"\u003e\u003c/a\u003eコンテンツ・メディア","Uncategorized"],"readme":"# AniList MCP Server\n\nA 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.\n\n## Features\n\n- Search for anime, manga, characters, staff, and studios\n- Get detailed information about specific anime, manga, characters, and staff members\n- Access user profiles and lists\n- Support for advanced filtering options\n- Retrieve genres and media tags\n- **Dual transport support**: Both HTTP and STDIO transports\n- **Cloud deployment ready**: Support Smithery and other platforms\n\n## Requirements\n\n- Node.js 18+\n\n## Local Installation (STDIO Transport)\n\n1. Add this server to your `mcp.json` / `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"anilist\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"anilist-mcp\"],\n      \"env\": {\n        \"ANILIST_TOKEN\": \"your_api_token\"\n      }\n    }\n  }\n}\n```\n\nYou may remove the `env` object entirely, if you are not planning to use the AniList Token for operations that require login.\n\n2. Restart your MCP client (e.g., Claude Desktop)\n3. Use the tools to interact with AniList\n\n## Server Deployment (HTTP Transport)\n\n### Self-Hosting\nFollow the [Local Development](#local-development) instructions to set up the project locally, then run:\n```bash\npnpm run start:http\n```\nThis will start the server on port 8081 by default. You can change the port by setting the `PORT` environment variable.\n\n### Cloud Deployment\n\nYou can deploy this MCP server to any cloud platform that supports Node.js server applications.\n\nYou can also deploy via MCP platforms like [Smithery](https://smithery.ai/server/@yuna0x0/anilist-mcp).\n\n## Configuration\n### Environment Variables (STDIO Transport and HTTP Transport server where host provides the config)\n\nWhen using the STDIO transport or hosting the HTTP transport server, you can pass configuration via environment variables:\n- `ANILIST_TOKEN`: (Optional) AniList API Token (Only needed for operations that require login)\n\n\u003e [!CAUTION]\n\u003e 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.\n\n### HTTP Headers (HTTP Transport where user provides the config)\n\nWhen using the HTTP transport, user can pass configuration via HTTP headers:\n- `Anilist-Token`: (Optional) AniList API Token (Only needed for operations that require login)\n\nIf the user provides the token in the header, while the server also has `ANILIST_TOKEN` set, the header value will take precedence.\n\n### Get an AniList API Token (Optional)\n\nTo get an API token, follow these steps:\n\n1. Go to [AniList settings](https://anilist.co/settings/developer).\n2. Click on \"Create New Client\".\n3. Use this URL as your client's \"Redirect URL\":\n```\nhttps://anilist.co/api/v2/oauth/pin\n```\n\n4. Click \"Save\"\n5. Then go to https://anilist.co/api/v2/oauth/authorize?client_id={clientID}\u0026response_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.\n6. Copy the generated token and use it in your `.env` file or environment variables.\n\n## Available Tools\n\n### Misc Tools\n- **get_genres**: Get all available genres on AniList\n- **get_media_tags**: Get all available media tags on AniList\n- **get_site_statistics**: Get AniList site statistics over the last seven days\n- **get_studio**: Get information about a studio by its AniList ID or name\n- **favourite_studio**: [Requires Login] Favourite or unfavourite a studio by its ID\n\n### Activity Tools\n- **delete_activity**: [Requires Login] Delete the current authorized user's activity post\n- **get_activity**: Get a specific AniList activity by its ID\n- **get_user_activity**: Fetch activities from a user\n- **post_message_activity**: [Requires Login] Post a new message activity or update an existing one\n- **post_text_activity**: [Requires Login] Post a new text activity or update an existing one\n\n### List Tools\n- **get_user_anime_list**: Get a user's anime list\n- **get_user_manga_list**: Get a user's manga list\n- **add_list_entry**: [Requires Login] Add an entry to the authorized user's list\n- **remove_list_entry**: [Requires Login] Remove an entry from the authorized user's list\n- **update_list_entry**: [Requires Login] Update an entry on the authorized user's list\n\n### Media Tools\n- **get_anime**: Get detailed information about an anime by its AniList ID\n- **get_manga**: Get detailed information about a manga by its AniList ID\n- **favourite_anime**: [Requires Login] Favourite or unfavourite an anime by its ID\n- **favourite_manga**: [Requires Login] Favourite or unfavourite a manga by its ID\n\n### People Tools\n- **get_character**: Get information about a character by their AniList ID\n- **get_staff**: Get information about staff member by their AniList ID\n- **favourite_character**: [Requires Login] Favourite or unfavourite a character by its ID\n- **favourite_staff**: [Requires Login] Favourite or unfavourite a staff member by their ID\n- **get_todays_birthday_characters**: Get all characters whose birthday is today\n- **get_todays_birthday_staff**: Get all staff members whose birthday is today\n\n### Recommendation Tools\n- **get_recommendation**: Get an AniList recommendation by its ID\n- **get_recommendations_for_media**: Get AniList recommendations for a specific media\n\n### Search Tools\n- **search_activity**: Search for activities on AniList\n- **search_anime**: Search for anime with query term and filters\n- **search_manga**: Search for manga with query term and filters\n- **search_character**: Search for characters based on a query term\n- **search_staff**: Search for staff members based on a query term\n- **search_studio**: Search for studios based on a query term\n- **search_user**: Search for users on AniList\n\n### Thread Tools\n- **get_thread**: Get a specific thread by its AniList ID\n- **get_thread_comments**: Get comments for a specific thread\n- **delete_thread**: [Requires Login] Delete a thread by its ID\n\n### User Tools\n- **get_user_profile**: Get a user's AniList profile\n- **get_user_stats**: Get a user's AniList statistics\n- **get_full_user_info**: Get a user's complete profile and stats information\n- **get_user_recent_activity**: Get recent activity from a user\n- **get_authorized_user**: [Requires Login] Get profile information of the currently authorized user\n- **follow_user**: [Requires Login] Follow or unfollow a user by their ID\n- **update_user**: [Requires Login] Update user settings\n\n## Example Usage\n\n### Basic Anime Search\n\n```\nCan you search for anime similar to \"Bocchi the Rock!\"?\n```\n\n### Get Character Info\n\n```\nCan you tell me about the character Hitori Gotou? Use the AniList tools to find information.\n```\n\n### Compare Studio Works\n\n```\nWhat anime has Studio Ghibli produced? Can you list their most popular works?\n```\n\n## Local Development\n\nThis project uses [pnpm](https://pnpm.io) as its package manager.\n\nClone the repository and install dependencies:\n\n```bash\ngit clone https://github.com/yuna0x0/anilist-mcp.git\ncd anilist-mcp\npnpm install\n```\n\n### Configuration (Optional)\n\n1. Create a `.env` file by copying the example:\n```bash\ncp env.example .env\n```\n\n2. Edit the `.env` file and add your AniList API token:\n```\nANILIST_TOKEN=your_api_token\n```\n\n## Debugging with MCP Inspector\n\nYou can use the MCP Inspector to test and debug the AniList MCP server:\n\n```bash\nnpx @modelcontextprotocol/inspector -e ANILIST_TOKEN=your_api_token npx anilist-mcp\n\n# Use this instead when Local Development\npnpm run inspector\n```\n\nThen open your browser to the provided URL (usually http://localhost:6274) to access the MCP Inspector interface. From there, you can:\n\n1. Connect to your running AniList MCP server\n2. Browse available tools\n3. Run tools with custom parameters\n4. View the responses\n\nThis is particularly useful for testing your setup before connecting it to MCP clients like Claude Desktop.\n\n## Docker\n\nPull from GitHub Container Registry:\n```bash\ndocker pull ghcr.io/yuna0x0/anilist-mcp\n```\n\nDocker build (Local Development):\n```bash\ndocker build -t ghcr.io/yuna0x0/anilist-mcp .\n```\n\nDocker multi-platform build (Local Development):\n```bash\ndocker buildx build --platform linux/amd64,linux/arm64 -t ghcr.io/yuna0x0/anilist-mcp .\n```\n\n## MCP Bundles (MCPB)\n\nTo create an MCP Bundle for this server, run:\n```bash\npnpm run pack:mcpb\n```\n\n## Security Notice\n\nThis 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.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyuna0x0%2Fanilist-mcp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyuna0x0%2Fanilist-mcp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyuna0x0%2Fanilist-mcp/lists"}