smeet666

mcp-animenewsnetwork

Community smeet666
Updated

MCP server for Anime News Network: search the anime and manga encyclopedia, read cast, staff and episodes, and follow the news wire. No API key.

mcp-animenewsnetwork

npmCIlicense

An MCP server forAnime News Network. Search the anime and mangaencyclopedia, read cast, staff and episode lists, and follow the news wire.No API key, no account, no configuration.

(Version française plus bas / French version below)

Quickstart

One-click install

Install in CursorInstall in VS Code

Claude Code

claude mcp add animenewsnetwork -- npx -y mcp-animenewsnetwork

Claude Desktop, Cursor, and any client using the standard config format

{
  "mcpServers": {
    "animenewsnetwork": {
      "command": "npx",
      "args": ["-y", "mcp-animenewsnetwork"]
    }
  }
}

Tools

Tool What it does Key parameters
search_titles Finds anime and manga by title. Compact rows only. query, kind, limit
get_title Reads one entry, section by section. id, kind, sections, max_chars, offset
list_recent Lists recent additions, or browses titles alphabetically. kind, starts_with, limit, offset
get_news Reads the news, reviews and combined feeds. feed, edition, category, limit

Search returns an encyclopedia id and a kind for every result; get_titletakes both. That is the intended chain: search, then read.

The server is read-only. It writes nothing back to Anime News Network.

Things worth knowing

Search results carry no records. A name search on the encyclopedia returnsthe complete record of every match. A search for "One Piece" is 1.4 MB of XML,roughly 360,000 tokens, because 47 full records are embedded in it. This serverreduces the same search to about 10 KB of rows. Read the entry you actuallywant with get_title.

One entry is still large, so sections are opt-in. A record for along-running series reaches 79 KB: Cowboy Bebop alone carries 101 cast credits,70 staff credits, 54 releases and 207 linked news items. get_title returnsbasic by default, and cast, staff, episodes, releases, related,news and reviews only when you ask.

Search matches titles, and nothing else. It cannot find a series from acharacter, a studio, a genre or a plot detail. There is no full-text searchendpoint on the encyclopedia, and the search parameter their reports acceptreturns nothing. Narrow the query rather than raising limit.

A failure is never an empty result. Anime News Network answers everyrequest with HTTP 200, including its failures, which it reports as a <warning>inside the body. An unknown id would otherwise read as "this series does notexist", so this server turns those warnings into errors with a code.

The news feed is the whole archive. There is no endpoint reaching furtherback than the feed window, so older coverage cannot be retrieved here.

Configuration

Every variable is optional. Set them in the env block of your MCP client config.

Variable Default Purpose
ANN_USER_AGENT mcp-animenewsnetwork v<version> (<repo>) User-Agent sent to Anime News Network.
ANN_MIN_INTERVAL_MS 1100 Minimum gap between requests. Values below 1000 ms are ignored.
ANN_TIMEOUT_MS 15000 Per-request timeout.
ANN_MAX_RETRIES 3 Retries on rate limiting and transient errors.
ANN_CACHE_TTL_MS 3600000 Encyclopedia cache lifetime (1 hour).
ANN_NEWS_CACHE_TTL_MS 300000 News cache lifetime (5 minutes).
ANN_CACHE_MAX_ENTRIES 200 In-memory cache size, shared shape across both caches.
ANN_LOG_LEVEL error silent, error, info or debug. Logs go to stderr.

The interval floor exists because Anime News Network documents a limit of onerequest per second per IP and delays anything above it rather than refusing,so pacing faster only queues requests on their side.

How it works

The encyclopedia is a real public XML API, so this server makes plain HTTP callsto https://cdn.animenewsnetwork.com/encyclopedia and maps the responses. Thenews comes from the RSS feeds on the main site. It sends one request at a time,paces itself, backs off when rate limited, and keeps two in-memory caches: anhour for the encyclopedia, which barely changes, and five minutes for the wire,which publishes several times an hour.

On robots.txt

animenewsnetwork.com/robots.txt disallows /encyclopedia/api.xml, under acomment reading "disallowed for search engines because redundant". This serveruses that endpoint anyway, and the reasoning is worth stating so you can judgeit yourself.

Anime News Network documents api.xml as a public API, publishes a rate limitfor it, asks callers to identify themselves and to attribute the data, andadvises caching responses for a week. Those are the instructions of a servicethat expects clients, not one asking to be left alone. robots.txt governscrawlers building an index; this server issues one request in response to onequestion from one person, holds the answer briefly, and indexes nothing.

The server honours all of it: one request per second, an identifyingUser-Agent, caching, and a source link on every result. If Anime News Networkwould rather it did not exist, opening an issue is enough.

Development

npm install
npm run build:fixtures   # regenerate the XML test fixtures
npm test                 # unit tests, no network
npm run typecheck
npm run build
ANN_LIVE=1 npm run test:live   # hits the real API, excluded from CI
npm run inspector        # explore the tools in the MCP Inspector

Fixtures are generated, not captured: they reproduce Anime News Network'selement names and attributes with placeholder titles, so the tests aredeterministic and no third-party content lives in this repository.

The API layer (src/ann) does not import the MCP SDK and is publishedseparately as mcp-animenewsnetwork/client, so it can be used as a plainlibrary.

Data and attribution

The encyclopedia and the news wire are the work of Anime News Network and itscontributors. This project claims no rights over them and ships none of theircontent.

Anime News Network asks that anything built on their data names them as thesource and links the entry it quotes. Every result this server returns carries asource_url or a link for that purpose. If you display or repeat what itreturns, keep that attribution and link back.

This is an unofficial project, with no affiliation to or endorsement by AnimeNews Network.

License

MIT. See LICENSE. The license covers this source code only, not thedata retrieved through it.

mcp-animenewsnetwork (français)

Un serveur MCP pourAnime News Network. Cherchez dansl'encyclopédie anime et manga, lisez les distributions, les équipes et leslistes d'épisodes, et suivez le fil d'actualité. Sans clé d'API, sans compte,sans configuration.

Démarrage rapide

Installation en un clic

Install in CursorInstall in VS Code

Claude Code

claude mcp add animenewsnetwork -- npx -y mcp-animenewsnetwork

Claude Desktop, Cursor, et tout client utilisant le format standard

{
  "mcpServers": {
    "animenewsnetwork": {
      "command": "npx",
      "args": ["-y", "mcp-animenewsnetwork"]
    }
  }
}

Outils

Outil Rôle Paramètres principaux
search_titles Trouve anime et manga par titre. Lignes compactes uniquement. query, kind, limit
get_title Lit une fiche, section par section. id, kind, sections, max_chars, offset
list_recent Liste les ajouts récents, ou parcourt les titres par ordre alphabétique. kind, starts_with, limit, offset
get_news Lit les flux actualités, critiques et combiné. feed, edition, category, limit

La recherche renvoie un id d'encyclopédie et un kind pour chaque résultat, etget_title prend les deux. C'est l'enchaînement prévu : chercher, puis lire.

Le serveur est en lecture seule. Il n'écrit rien vers Anime News Network.

Ce qu'il faut savoir

Les résultats de recherche ne contiennent aucune fiche. Une recherche par nomrenvoie la fiche complète de chaque correspondance. « One Piece » représente1,4 Mo de XML, environ 360 000 tokens, parce que 47 fiches entières y sontimbriquées. Ce serveur ramène la même recherche à environ 10 Ko de lignes. Lafiche voulue se lit ensuite avec get_title.

Une fiche reste volumineuse, d'où les sections à la demande. Une série aulong cours atteint 79 Ko : Cowboy Bebop porte à elle seule 101 rôles, 70 postesd'équipe, 54 éditions et 207 actualités liées. get_title renvoie basic pardéfaut, et cast, staff, episodes, releases, related, news etreviews seulement sur demande.

La recherche porte sur les titres, et rien d'autre. Elle ne sait pasretrouver une série depuis un personnage, un studio, un genre ou un élémentd'intrigue. L'encyclopédie n'expose aucune recherche plein texte, et leparamètre search que leurs rapports acceptent ne renvoie rien. Affinez larequête plutôt que d'augmenter limit.

Un échec n'est jamais un résultat vide. Anime News Network répond à toutesles requêtes en HTTP 200, y compris à ses échecs, signalés par un <warning>dans le corps. Un id inconnu se lirait sinon comme « cette série n'existe pas »,donc ce serveur transforme ces avertissements en erreurs avec un code.

Le fil d'actualité est toute l'archive disponible. Aucun endpoint ne remonteau-delà de la fenêtre du flux, les couvertures plus anciennes sont donc hors deportée ici.

Configuration

Toutes les variables sont optionnelles, à déclarer dans le bloc env de votre client.

Variable Défaut Rôle
ANN_USER_AGENT mcp-animenewsnetwork v<version> (<dépôt>) User-Agent envoyé à Anime News Network.
ANN_MIN_INTERVAL_MS 1100 Écart minimal entre requêtes. Sous 1000 ms, la valeur est ignorée.
ANN_TIMEOUT_MS 15000 Délai d'attente par requête.
ANN_MAX_RETRIES 3 Tentatives en cas de limitation ou d'erreur passagère.
ANN_CACHE_TTL_MS 3600000 Durée de vie du cache encyclopédie (1 heure).
ANN_NEWS_CACHE_TTL_MS 300000 Durée de vie du cache actualités (5 minutes).
ANN_CACHE_MAX_ENTRIES 200 Taille des caches mémoire.
ANN_LOG_LEVEL error silent, error, info ou debug. Logs sur stderr.

Le plancher sur l'intervalle existe parce qu'Anime News Network documente unelimite d'une requête par seconde par IP et retarde ce qui la dépasse au lieude refuser : aller plus vite ne fait que constituer une file d'attente chez eux.

Fonctionnement

L'encyclopédie est une véritable API XML publique. Ce serveur fait donc desimples appels HTTP vers https://cdn.animenewsnetwork.com/encyclopedia ettranspose les réponses. Les actualités viennent des flux RSS du site principal.Il envoie une requête à la fois, s'impose un rythme, ralentit en cas delimitation, et garde deux caches mémoire : une heure pour l'encyclopédie, quibouge à peine, et cinq minutes pour le fil, qui publie plusieurs fois par heure.

À propos du robots.txt

Le robots.txt d'animenewsnetwork.com interdit /encyclopedia/api.xml, sous uncommentaire indiquant « disallowed for search engines because redundant ». Ceserveur utilise malgré tout cet endpoint, et le raisonnement mérite d'êtreexposé pour que vous puissiez en juger.

Anime News Network documente api.xml comme une API publique, en publie lalimite de débit, demande aux clients de s'identifier et d'attribuer les données,et conseille de mettre les réponses en cache une semaine. Ce sont lesinstructions d'un service qui attend des clients, pas d'un service qui demandequ'on le laisse tranquille. Le robots.txt encadre les robots d'indexation ; ceserveur émet une requête en réponse à une question d'une personne, gardebrièvement la réponse, et n'indexe rien.

Le serveur respecte l'ensemble : une requête par seconde, un User-Agentidentifiant, la mise en cache, et un lien source sur chaque résultat. Si AnimeNews Network préfère qu'il n'existe pas, ouvrir une issue suffit.

Développement

npm install
npm run build:fixtures   # régénère les fixtures XML de test
npm test                 # tests unitaires, sans réseau
npm run typecheck
npm run build
ANN_LIVE=1 npm run test:live   # touche la vraie API, exclu de la CI
npm run inspector        # explorer les outils dans le MCP Inspector

Les fixtures sont générées, pas capturées : elles reproduisent les nomsd'éléments et d'attributs d'Anime News Network avec des titres de remplissage,ce qui rend les tests déterministes et évite de stocker du contenu tiers dans cedépôt.

La couche API (src/ann) n'importe pas le SDK MCP et est publiée séparémentsous mcp-animenewsnetwork/client, utilisable comme simple bibliothèque.

Données et attribution

L'encyclopédie et le fil d'actualité sont l'œuvre d'Anime News Network et de sescontributeurs. Ce projet ne revendique aucun droit dessus et n'embarque aucun deleurs contenus.

Anime News Network demande que tout ce qui s'appuie sur leurs données les citecomme source et renvoie vers la fiche concernée. Chaque résultat de ce serveurporte un source_url ou un link à cet effet. Si vous affichez ou reprenez cequ'il renvoie, conservez cette attribution et le lien.

Projet non officiel, sans affiliation à Anime News Network ni approbation de sa part.

Licence

MIT, voir LICENSE. La licence couvre uniquement le code source, pasles données récupérées par son intermédiaire.

MCP Server · Populars

MCP Server · New

    drakulavich

    Kesha Voice Kit

    Give your tools a voice — speech to text and back, 25 languages, up to ~19× faster than Whisper. On your machine.

    Community drakulavich
    lobu-ai

    Lobu — Open-source backend for AI teammates

    Open-source control plane and runtime for organisational agents: shared company context, isolated execution, approvals and MCP.

    Community lobu-ai
    minipuft

    Claude Prompts MCP Server

    Wolfflow: Model Context Protocol (MCP) server for reusable prompt templates, multi-step workflow chains, and quality gates. Compose agentic workflows with an operator syntax; export as native skills to Claude Code, Cursor, OpenCode, and Gemini CLI.

    Community minipuft
    docmancer

    Docmancer

    Find out what your coding agents already know. Docmancer indexes the memory, rules, and instructions Claude Code, Codex, Cursor, and Gemini wrote on your machine, then carries the durable parts to every agent. Local-first, MIT.

    Community docmancer
    lineai-intelligence

    codelogic-mcp-server

    An MCP Server to utilize Codelogic's rich software dependency data in your AI programming assistant.