About Flash
Flash is a self-hosted spaced-repetition server that lets AI clients create cards, quiz users, and schedule reviews with FSRS. It is for learners who want to study through an MCP client and manage their decks on their own server.
Key features
- 01Create cards through AI clients
- 02Quiz users on their decks
- 03Schedule reviews with FSRS
- 04Import and export Anki .apkg decks
- 05Run as one Rust binary with one data folder
Use cases
- 01Turn AI-generated study material into deck cards
- 02Ask an AI client to quiz a deck
- 03Review cards according to an FSRS schedule
- 04Move existing Anki decks into or out of Flash
MCP support
Flash provides an MCP endpoint for ChatGPT, Claude, and other MCP clients to create cards and quiz users. The self-hosted server connects through its `/mcp` URL.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://flashmemorize.com/mcpclaude mcp add --transport http com-flashmemorize-flash https://flashmemorize.com/mcp{"mcpServers":{"com-flashmemorize-flash":{"type":"http","url":"https://flashmemorize.com/mcp"}}}Open in Cursor{"servers":{"com-flashmemorize-flash":{"type":"http","url":"https://flashmemorize.com/mcp"}}}Open in VS Code{"mcpServers":{"com-flashmemorize-flash":{"type":"http","url":"https://flashmemorize.com/mcp"}}}{"mcpServers":{"com-flashmemorize-flash":{"serverUrl":"https://flashmemorize.com/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
Details
From the project READMEYour AI makes the flashcards, Flash makes sure you remember them.
Hosted version · Every setting · MCP tools · Changelog · Contributing

A self-hosted spaced-repetition server. Connect ChatGPT, Claude or any MCP
client: it writes cards into your decks and quizzes you, and Flash schedules
every review with FSRS.
One Rust binary, one data folder. Imports and exports Anki .apkg decks.
Run it
docker run -d --name flash -p 127.0.0.1:8437:8437 -v flash-data:/data ghcr.io/flash-cards/flash
docker logs flash | grep enroll
Open the enroll link at http://localhost:8437 and you are the admin; invite
everyone else from Settings. To serve it beyond your machine, put a TLS
reverse proxy in front and set FLASH_BASE_URL to its address
(docker-compose.yml is the hardened setup). Your data
is the flash-data volume: back it up, and upgrade by pulling a newer image
and recreating the container. Locked out?
docker exec flash flash-server reset-link [email protected] prints a link to
choose a new password (with compose: docker compose exec flash ...).
Installed with docker compose (as up to 0.3.0)? Your data is in that
folder's volume (docker volume ls, e.g. flash_flash-data), not in
flash-data. Upgrade from the same folder, backing up first, since
upgrades only go forward:
docker compose stop flash
docker run --rm -v flash_flash-data:/data -v "$PWD":/backup debian:bookworm-slim \
tar czf /backup/flash-data.tgz -C /data .
docker compose pull && docker compose up -d
Connect your AI
Add https://<your host>/mcp as a custom connector in ChatGPT, Claude, Grok,
Le Chat or Gemini (OAuth, no keys to copy). In a terminal:
claude mcp add --transport http flash https://<your host>/mcp. Then say
"quiz me on my deck".
The hosted version adds card generation from your files and grading of spoken answers.
License
AGPL-3.0-only, with embedded assets in THIRD_PARTY.md. Contributions are accepted under the CLA.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.