Verifiable collection with optional AI · 2026

Pokédex Manager

Pokédex Manager explores PokéAPI, keeps a collection isolated per account, and identifies cards from a photo with human confirmation before anything is saved. The assistant gets its context through a read-only MCP session, so it cites collection data instead of inferring it. Kimi is optional: without an AI provider the catalog, collection, statistics, and a bounded local assistant remain.

RoleProduct design, architecture, and implementation

Published home page of Pokédex Manager, where the product explains its MCP-connected assistant.

Context and evolution

The system behind the screens.

An assistant talking about a collection can make up whatever it fails to find. Pokédex Manager settles that before the conversation: the model does not query the database, it runs schemed tools through a read-only MCP session, and the answer cites which ones ran.

The internal assistant and external MCP clients cross the same boundary: a read-only product port, in memory for one and over Streamable HTTP with an explicit bearer and subject for the other. There is no parallel route around per-account isolation, and no MCP operation writes business data.

The rest of the product does not depend on Kimi being available. Without an AI provider the catalog, collection, statistics, and a local assistant crossing that same boundary remain; a 24-hour MongoDB cache keeps the last known PokéAPI entry, and the container verifies its indexes before starting instead of running against an ambiguous database.

Decisions and outcomes

  • A purpose-built MCP server with six read-only tools; the assistant and external clients enter through the same boundary.
  • Recognition checks the model’s proposal against PokéAPI and adds nothing without confirmation.
  • Without an AI provider the application keeps the catalog, collection, statistics, and local assistant.

System map

Open every application.

These are not labels: every module retains its own route and technical context.

  1. 01

    Catalog

    PokéAPI with filters, global sorting, and a cache that survives an origin outage.

    View module
  2. 02

    Collection

    One collection per account, isolated in the query and in the index.

    View module
  3. 03

    MCP server

    Six read-only tools and a single context boundary.

    View module
  4. 04

    Assistant

    Kimi when it is enabled; a deterministic router when it is not.

    View module
  5. 05

    Card recognition

    The model proposes, PokéAPI resolves, the person confirms.

    View module
  6. 06

    Operations

    Compose to bring it up and a quality chain that does not skip persistence.

    View module