mcpField
A
AniList MCP Server (Unofficial)

AniList MCP Server (Unofficial)

ローカル
github.com/Grinvゲーム・エンタメ11 週間前に更新

AniList MCP Server (Unofficial) について

AniListを検索したりアカウントを管理したりする、MCPクライアントやエージェント向けの非公式サーバーです。GraphQLによる公開データの閲覧に加え、ログイン後はリストやソーシャル機能も操作できます。

主な機能

  1. 01アニメ、マンガ、キャラクター、スタッフ、スタジオ、ユーザーの検索
  2. 02作品詳細、推薦、統計の取得
  3. 03公開プロフィール、リスト、アクティビティ、スレッドの閲覧
  4. 04ログイン後の個人リストとお気に入りの管理
  5. 05アクティビティやスレッドの投稿、フォローと通知の管理

活用シーン

  1. 01アニメを検索し、スコア、ジャンル、あらすじを確認
  2. 02作品に基づく推薦を調べる
  3. 03公開AniListプロフィールやリストを確認
  4. 04認証後に個人リストを更新、またはアクティビティを投稿

MCP 対応

AniListの検索、閲覧、アカウント管理ツールと再利用可能なプロンプトをMCPクライアントに提供します。標準MCP stdioプロトコルを使用し、個人操作にはAniListの認証が必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ
パッケージ
npmanilist-mcp-server0.11.0
mcpbanilist-mcp-server.mcpb0.11.0

ツール

50

掲載時のツール一覧 · 6 日前に更新

このツールにパラメーターはありません。

詳細

AniList MCP サーバー(非公式)

npm version CI license: MIT MCP Registry anilist-mcp-server MCP server

AniList 用の MCP サーバーです。 あらゆる MCP 対応クライアントやエージェント(Claude Desktop/Code、Cursor、 VS Code、Cline、Continue など)で動作します。標準の MCP stdio プロトコルを使用します。

できること

AniList の公開 GraphQL API(https://graphql.anilist.co)に直接アクセスします。

  • 読み取り(認証情報は不要です)。 アニメ/マンガ、 キャラクター、スタッフ、スタジオ、ジャンル/タグ、レコメンデーション、フォーラムのスレッド、 アクティビティフィード、公開/限定公開のユーザープロフィールとリストを検索・閲覧できます。
  • 自分の AniList アカウント(初回のみログインが必要です)。 自分の アニメ/マンガのリスト(エントリーの追加/更新/削除)、お気に入り、フォロー、通知を管理し、自分のアクティビティやスレッドを投稿/削除できます。

必要なもの(設定するとできること)

始めるのに必要なものはないため、すぐに インストールに進めます。以下はすべて任意です。

設定するもの...できること...
(なし)検索、詳細、ジャンル/タグ、レコメンデーション、スレッド、アクティビティ、公開プロフィール/リスト。すぐに利用できます。
AniList の Client ID + Client Secret(無料で2分 →)、および login_anilist の初回実行上記のすべてに加え、自分の AniList アカウントでリスト、お気に入り、フォロー、アクティビティ、スレッドを管理できます。

ログインしていない場合、個人用/変更用ツールはログイン方法を明示したメッセージを返します。 それ以外の機能は引き続きすべて利用できます。

クエリの例

接続したら、エージェントに自然な言葉で尋ねるだけです。

認証情報は不要です:

"Search for the anime Frieren and show its score, genres and synopsis."
"What recommendations does AniList have for fans of Steins;Gate?"
"Show me today's birthday characters."
"What genres and tags does AniList use for anime?"
"Show the public profile and stats for user <username>."
"What's in <username>'s AniList anime list marked as watching?"

AniList アカウントを使用する場合(初回の login_anilist の後。AniList アカウントを接続するを参照):

"Add Frieren to my AniList plan-to-watch list."
"Set Cowboy Bebop to completed on my AniList with a score of 9."
"Follow user <username> for me."
"Post a text update to my AniList activity feed."
"What are my unread AniList notifications?"

ツール

ツール認証
get_genres, get_media_tags, get_site_statistics, get_studioなし
get_media, get_media_statistics, get_media_characters, get_media_staffなし
get_media_reviews, get_media_relations, get_anime_scheduleなし
get_character, get_staff, get_todays_birthdaysなし
get_recommendation, get_recommendations_for_mediaなし
search_media, search_character, search_staff, search_studio, search_user, search_activityなし
search_thread, get_thread, get_thread_commentsなし
get_user_profile, get_user_stats, get_full_user_info, get_user_recent_activityなし
get_activity, get_user_activityなし
get_user_listなし
toggle_favouriteトークン
add_list_entry, update_list_entry, update_list_entries, remove_list_entryトークン
post_text_activity, post_message_activity, delete_activityトークン
post_thread, post_thread_comment, delete_thread, delete_thread_commentトークン
get_authorized_user, toggle_follow_user, update_userトークン
get_notificationsトークン
login_anilist, submit_anilist_redirectログイン

token は AniList へのログインが必要です(login_anilist を一度実行してください)。ログインしていないと、一部の none ツールでも次のフィルターを使うとエラーになります。search_media/get_character/get_staff/get_studio の onList、search_activity の isFollowing、get_recommendations_for_media の excludeInList です。

プロンプト

クライアントがワンクリックのフローとして提示できる、再利用可能な複数ステップのプランです。 recommend_similar、seasonal_overview、hidden_gems、catch_up_activity、 check_notifications。

インストール

npx とソースからのインストールは、独自の Node.js 上で実行されます。Node.js は ≥ 22.18 である必要があります。

.mcpb バンドルとして(ワンクリック、例:Claude Desktop)

anilist-mcp-server.mcpb(常に最新リリース)をダウンロードし、お使いの MCP クライアントで開きます。任意の AniList クライアント ID と クライアントシークレット の入力を求められます。これらを設定し、login_anilist ツールを実行すると、個人リスト/ソーシャルツールを有効にできます(AniList アカウントを接続するを参照)。空欄のままにすると、認証情報不要の読み取りツールのみを利用できます。

npx 経由(インストール不要)

npm では anilist-mcp-server として公開されています。クライアントの MCP 設定に追加してください(Claude Desktop/Code、Cursor、VS Code、Cline など)。

{
  "mcpServers": {
    "anilist": {
      "command": "npx",
      "args": ["-y", "anilist-mcp-server"],
      "env": {
        "ANILIST_CLIENT_ID": "...",
        "ANILIST_CLIENT_SECRET": "..."
      }
    }
  }
}

または、Claude Code CLI を使用します。

claude mcp add anilist -e ANILIST_CLIENT_ID=... -e ANILIST_CLIENT_SECRET=... -- npx -y anilist-mcp-server
ソースからビルドする
git clone https://github.com/Grinv/anilist-mcp-server
cd anilist-mcp-server
npm ci
npm run build

これにより、自己完結型の dist/index.js が生成されます。上記と同じ方法でクライアントを指定し、"command": "npx", "args": ["-y", "anilist-mcp-server"] を "command": "node", "args": ["/absolute/path/to/anilist-mcp-server/dist/index.js"] に置き換えます(CLI 形式では、npx -y anilist-mcp-server を node /absolute/path/to/anilist-mcp-server/dist/index.js に置き換えます)。

(上記の両方のインストール方法で示した)env ブロックは任意です。省略すると、認証情報が不要な読み取り専用ツールのみを使用できます。個人用/変更用ツールは、ログインするまで明確なエラーを返します。 これらのツールを有効にするには、ANILIST_CLIENT_ID と ANILIST_CLIENT_SECRET を設定し、login_anilist ツールを一度実行します(ブラウザーでの認証は一度だけ必要です。トークンはその後保存され、再利用されます)。サーバーは .env ファイルを読み込まないため、この env ブロック(またはシェル環境)で設定を渡してください。ログイン手順の詳細はdocs/auth.md、ほかのクライアントについてはdocs/clients.mdをご覧ください。

AniList アカウントを接続する

検索/閲覧ツールは設定なしで使用できます。個人用/変更用ツールを使うには、アカウントを一度認証してください。所要時間は約2分です。

ステップ 1:AniList アプリを登録する(1分)。

  1. https://anilist.co/settings/developer にアクセスし、Create New Client をクリックします。
  2. 名前: 任意の名前を入力します。
  3. リダイレクト URL: 次の値をそのまま入力します。
    http://localhost:8082/callback
    
    (お使いのマシンでポート 8082 がすでに使用されている場合は、別のポートを選び、ANILIST_OAUTH_PORT に同じ番号を設定してください。設定を参照してください。)
  4. 保存し、Client ID と Client Secret をコピーします。

ステップ 2:認証情報をサーバーに渡す。

"env": { "ANILIST_CLIENT_ID": "...", "ANILIST_CLIENT_SECRET": "..." }

値を読み込ませるため、サーバー/クライアントを再起動します。

ステップ 3:ログインする(ワンクリック)。

アシスタントで**login_anilist**ツールを実行します(または、単に 「AniList にログインして」 と伝えます)。リンクが返されるので、そのリンクを開いて AniList にサインインし、Approve をクリックします。

  • ローカルで実行している場合(Claude Desktop、または自分のマシン上の Claude Code): Approve をクリックすると、ログインが自動的に完了します。 「AniList のプロフィールを表示して」 と伝えて確認できます(get_authorized_user)。
  • リモート/SSH/ヘッドレスホストで実行している場合: Approve をクリックした後、ブラウザーに読み込めないページが表示されますが、これは正常です。ブラウザーのアドレスバーに表示されている完全なアドレスをコピーし(?code=… が含まれています)、submit_anilist_redirect ツールに渡して処理を完了します。

以上です。トークンはローカル(~/.config/anilist-mcp-server/tokens.json、0600)に保存されます。AniList のアクセストークンは約1年間有効で、更新機能はないため、期限が切れたら login_anilist を再度実行してください。

対話型の手順を避けたい場合は? 代わりに、単独の ANILIST_ACCESS_TOKEN をあらかじめ設定してください。docs/auth.mdをご覧ください。

設定

設定はすべて環境変数で行います。すべて任意で、認証情報がなくても読み取りツールは引き続き使用できます。

変数用途
ANILIST_CLIENT_IDAniList アプリのクライアント ID(AniList アカウントを接続するを参照)。
ANILIST_CLIENT_SECRETAniList アプリのクライアントシークレット。上記のクライアント ID と組み合わせて使用します。
ANILIST_ACCESS_TOKEN上級者向け、任意。 login_anilist を実行する代わりに、トークンを事前に指定します。docs/auth.mdを参照してください。
ANILIST_TOKEN_STOREログイントークンのディスク上の保存先を変更します(デフォルトは OS の設定フォルダー)。
ANILIST_OAUTH_PORTポート 8082 がすでに使用中の場合にのみ必要です(アカウント接続手順のステップ 1 を参照)。
LOG_LEVELサーバーのログ出力量:debug | info | warn | error | silent(デフォルトは info)。
チューニング(通常は不要)
変数用途
ANILIST_MIN_INTERVAL_MSAniList への呼び出し間隔の最小値です(デフォルトは 2100、つまり約 30 回/分です。AniList の API は現在、公式にドキュメント化された機能低下状態にあるためです。詳しくは docs/api-references.md を参照してください)。0 に設定すると、クライアント側のスロットリングを無効にします。
CACHE_TTL_MSメモリ内読み取りキャッシュの TTL です(デフォルトは 300000 = 5 分です)。
HTTP_TIMEOUT_MS, HTTP_RETRIESリクエストごとのタイムアウト(デフォルトは 15000)と、一時的な障害が発生した場合の再試行回数(デフォルトは 2)です。
ANILIST_GRAPHQL_URL, ANILIST_OAUTH_BASE_URL上流のベース URL を上書きします。

これらは MCP クライアント設定の env ブロックに指定してください(サーバーは .env ファイルを読み込みません)。認証情報の取得方法については docs/auth.md を、クライアント設定のスニペットについては docs/clients.md を参照してください。

NSFW コンテンツ

NSFW(成人向け)の結果はデフォルトではフィルタリングされません。サーバーは AniList が提供する内容をそのまま返します。search_media では省略可能な sfw パラメーターを受け付けます。成人向けエントリーを除外するには、sfw: true に設定してください。

開発

npm run build        # type-check + bundle to dist/
npm test             # node:test suite (mocked, offline)
npm run test:coverage
npm run lint
npm run format
npm run check:api    # live health-check of the AniList GraphQL endpoint
npm run inspector    # run under the MCP Inspector

実行には Node ≥ 22.18 が必要です。このサーバーが作られた理由や、開発のきっかけとなった上流のバグを回避する仕組みなど、コントリビューター/エージェント向けのガイダンスについては AGENTS.md を参照してください。

更新

新しいバージョンの通知を受け取るには、GitHub で Watch → Releases をクリックしてください。

  • .mcpb バンドル: リリースページから新しい anilist-mcp-server.mcpb をダウンロードし、クライアントに再インストールしてください(旧バージョンは置き換えられます)。
  • npx: バージョンを固定していない npx -y anilist-mcp-server は、次回の実行時に最新バージョンを取得します。
  • ソースから: git pull && npm ci && npm run build。

各リリースの変更内容については CHANGELOG を参照してください。

帰属表示と利用規約

これは非公式のプロジェクトであり、AniList とは提携しておらず、同社から承認も受けていません。すべてのデータは公開されている AniList GraphQL API から取得しています。個人アカウントに関する操作には、ご自身の AniList アカウントとトークンを使用します。本サービスの利用には AniList の利用規約が適用されます。

プライバシーポリシー

このサーバーはお使いのマシン上でローカルに実行され、独自のテレメトリーはありません。 個人情報を扱うツール/変更を行うツールは、指定されたトークンを使用して、実際の AniList アカウント(リスト、お気に入り、フォロー、投稿、アカウント設定)を操作します。データ収集、データの送信先、キャッシュ/トークンの保存と保持、お問い合わせ先の詳細については、PRIVACY.mdをご覧ください。

セキュリティ

このプロジェクトの関連サーバーの中で、書き込みやソーシャル機能を扱うツールの範囲が最も広く、実際の AniList アカウントでリストの変更、お気に入り、フォロー、アクティビティ、スレッド、コメントの投稿や削除を行います。変更を行うツールの全一覧、トークンの保存/取り扱い、認証情報の秘匿化、脆弱性の報告方法については、SECURITY.mdをご覧ください。

ライセンス

MIT © Grinv

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。