Skip to content

Releases: cyanheads/anime-mcp-server

v0.1.7: AniList result contracts

Choose a tag to compare

@cyanheads cyanheads released this 31 Aug 03:01
v0.1.7
ee7a5da

AniList result contracts

  • Normalize full AniList descriptions and retain bounded text rendering (#7).
  • Make fallback search results, character appearances, schedules, and missing-source errors actionable (#8, #9, #10, #11, #12, #13).

CHANGELOG v0.1.7

v0.1.6: Recovery and pagination guidance

Choose a tag to compare

@cyanheads cyanheads released this 30 Aug 21:53
v0.1.6
2184d92

Recovery and pagination guidance

  • Declared tool errors now return actionable recovery hints on both MCP error surfaces (#14)
  • Capped character and recommendation pages now include the next request to make (#15)
  • Stateless sessions are the active sample default (#17)
  • deps: @biomejs/biome ^2.5.9 → ^2.5.11; @types/node ^26.2.0 → ^26.4.0

CHANGELOG v0.1.6

v0.1.5: character-name lookups and conditional truncation

Choose a tag to compare

@cyanheads cyanheads released this 21 Aug 17:08
v0.1.5
59baba4

character-name lookups and conditional truncation

  • anime_find_characters name and voice-actor lookups return results again — required truncation enrichment was written only in media-ID mode, so those calls failed output validation
  • anime_find_characters and anime_get_recommendations disclose truncation only when the source reports a further page

CHANGELOG v0.1.5

v0.1.4: mcp-ts-core ^0.12.3 adoption with pagination disclosures

Choose a tag to compare

@cyanheads cyanheads released this 21 Aug 16:09
v0.1.4
513c81d

mcp-ts-core ^0.12.3 adoption with pagination disclosures

  • Protocol revision 2026-07-28 served alongside the 2025 era on MCP SDK v2; tool inputs strict (unknown argument keys rejected by name); advertised outputSchema declares the error envelope — this server's tool contracts unchanged
  • totalCount enrichment on search, rankings, schedule (season), studio, and relations; truncated/shown/cap disclosure on find_characters (by_media) and recommendations
  • anime_get_schedule text headers render mode:; find_characters throws missing_identifier when voice_actor_name is absent
  • Community-health files added (CONTRIBUTING, CODE_OF_CONDUCT, SECURITY, FUNDING); Docker production stage drops optional peers and adds a HEALTHCHECK; tsconfig split typechecks tests/; bunfig supply-chain guard
  • deps: @cyanheads/mcp-ts-core ^0.10.6 → ^0.12.3, TypeScript ^6.0.3 → ^7.0.2, Bun pins 1.3.11 → 1.4.0

73 tests pass; devcheck clean.

CHANGELOG v0.1.4

v0.1.3: mcp-ts-core ^0.10.6 adoption

Choose a tag to compare

@cyanheads cyanheads released this 12 Jun 03:29
v0.1.3
53ad895

mcp-ts-core ^0.10.6 adoption

Framework upgrade with server-identity adoption, packaging-tooling sync, and an error-code alignment.

Dependency bumps:

  • @cyanheads/mcp-ts-core ^0.9.21 → ^0.10.6
  • @types/node ^25.9.2 → ^25.9.3

Added:

  • scripts/clean-mcpb.ts post-pack bundle cleaner, wired into the bundle script
  • lint:packaging post-bundle content and createApp() identity checks
  • coerce-boolean-env-flag antipattern rule in devcheck

Changed:

  • createApp() sets explicit name/title = anime-mcp-server
  • anime_get_studio, anime_find_characters, anime_get_schedule errors recoded InvalidParams → ValidationError
  • .mcpbignore dev-dir patterns re-anchored to root

73 tests pass; bun run devcheck clean.

v0.1.2: DX fixes: empty-result notices, description leaks removed, studio error contract

Choose a tag to compare

@cyanheads cyanheads released this 07 Jun 06:23
v0.1.2
2b96b45

DX fixes: empty-result notices, description leaks removed, studio error contract

Patch targeting tool definition language and observability gaps found in field-test.

Fixed:

  • anime_search_media, anime_get_rankings, anime_get_schedule — empty-result paths now populate structuredContent.notice with applied filters and recovery suggestion (#1, #4)
  • anime_get_recommendations — removed audience-leaking phrase from liked_aspects description (#2)
  • anime_get_media — scores output description rewritten to describe the data rather than coach the consumer (#3)
  • anime_get_studio — missing_identifier added to errors contract; ctx.fail now populates data.reason on the missing-name-or-id path (#5)

Dependency bumps:

  • @types/node ^25.9.1 → ^25.9.2

73 tests pass; bun run devcheck clean.

v0.1.1: Initial public release — 8 tools + 1 resource over AniList, Jikan, and Kitsu

Choose a tag to compare

@cyanheads cyanheads released this 05 Jun 11:58
v0.1.1
02662a9

Initial public release — 8 tools + 1 resource over AniList, Jikan, and Kitsu

Keyless MCP server for anime/manga discovery and metadata. Covers search, full detail with dual scoring (AniList + MAL), franchise watch order, airing schedule, characters and staff, recommendations, rankings, and studio filmography.

Added:

  • anime_search_media, anime_get_media, anime_get_relations, anime_get_schedule, anime_find_characters, anime_get_recommendations, anime_get_rankings, anime_get_studio — 8-tool surface
  • anime://media/{id} resource — full JSON media record by AniList ID
  • Three-source service layer: AniList GraphQL (primary), Jikan REST (MAL scores, recs), Kitsu JSON:API (streaming links)

Security:

  • Free-text and search inputs bounded (max 50–500 chars) across 6 tools
  • sort array capped at 5 items x max(50) each — blocks unbounded GraphQL variable injection
  • Kitsu ID numeric guard — rejects path-traversal via malformed API response
  • Number.isNaN for AniList ID validation in resource handler

73 tests pass; bun run devcheck clean.