Flashcards

Spaced repetition systems, esp Anki

2012-01-02 — 2026-04-27

Wherein personal notes on spaced repetition tools are presented, Anki is treated as the central application, and its connection to AI assistants via MCP servers is among the topics covered.

faster pussycat
language
learning
mind

Here are some practical notes for my personal use.

1 Theory

Figure 1

More on the theory and background has been written by others. See an example of integrating flashcards into an intensive learning system for theorems and mathematics here.

For a virtuosic example of integrating flashcards into a self-learning project, see Isaak’s 12 Months of Mandarin and Methods of Mandarin.

For an easy guide to using flashcards sustainably, see An Opinionated Guide to Using Anki Correctly.

To do: add the theory of anchors, phonetic encodings and optimal scheduling for spaced repetition…

2 Scheduling algorithms

FSRS seems promising. See open-spaced-repetition/fsrs4anki: A modern Anki custom scheduling based on Free Spaced Repetition Scheduler algorithm. Note the heartwarming origin story:

Hi, I’m Jarrett Ye, the creator of FSRS. FSRS is a highly efficient spaced repetition algorithm used by many people worldwide, saving considerable time. It applies cognitive science and educational technology to help students learn more effectively.

However, most Chinese high school students are still forced to study “611” — from 6 AM to 11 PM, six days a week. Tragically, many students have committed suicide or developed serious mental health issues.

The 611Study. ICU project aims to stop this abusive study model and protect students’ lives and health.

As a former Chinese student, I experienced overtime study and sleep deprivation during high school. Anki saved my life. I want to use this algorithm to save more lives, but most Chinese high schools still prevent students from using it.

I hope this project can raise awareness and help more students.

Wow! This author deserves our citations (Su et al. 2023; Ye, Su, and Cao 2022).

I believe this is now Anki-native according to fsrs4anki/docs/tutorial.md.

3 Minimal pair tests for learning language sounds

See How to Teach Old Ears New Tricks:

With a handful of recordings […] (freely accessible through Web sites such as Rhinospike and Forvo) and with testing software such as Anki, you can build powerful ear-training tools for yourself. These are tools that, after just a few hours of use, will make foreign words easier to hear and easier to remember, and they may give you the edge you need to finally learn the languages you’ve always wanted to learn.

Fascinatingly,

Some of the best data on this phenomenon come from studies of Japanese adults learning to hear the difference between r and l. Why the Japanese? For one, because the r-versus-l problem is notorious; Japanese speakers tend to do little better than chance when attempting to tell their rocks from their locks. Second, they know they have this difficulty, and many will happily volunteer to come into a research laboratory— whereas English speakers do not care much about learning the difference between Hindi’s four nearly identical-sounding d’s.

More on Minimal Pair Tests here.

4 Anki

My workhorse tool. A powerful, albeit geeky, option. See the Anki website. Anki is open-source and has a large community of users and developers. It’s very flexible and a little bit ugly.

4.1 AnkiConnect

AnkiConnect

… enables external applications […] to communicate with Anki over a simple HTTP API. Its capabilities include executing queries against the user’s card deck, automatically creating new cards, and more.

Makes it very simple for us to write our own scripts.

4.2 MCP servers

Exposes Anki’s internals to a favourite LLM through the Model Context Protocol. Everyone uses AnkiConnect for this, in the following configuration: Anki ← AnkiConnect ← MCP server ← assistant, i.e. each option in this category is, mechanically, a thin wrapper over AnkiConnect, distinguished mostly by packaging and target audience.

Three flavours seem to dominate at time of writing:

  • Anki MCP Server (with hosted docs at ankimcp.ai). Packaged as a one-click .mcpb bundle for Claude Desktop, exposing both stdio and HTTP transports. The HTTP transport plus a self-run ngrok tunnel is how the docs suggest connecting Claude.ai and ChatGPT, since those can’t reach localhost on their own (although why not run Claude Desktop if you can run Anki Desktop?) The packaging is designed around one-click install rather than hand-edited config files; ankimcp.ai hosts only documentation, the server itself runs locally.

  • jasperket/clanki. A small, tightly-scoped, open-source MCP server, stdio-only. The README enumerates which AnkiConnect calls it exposes — create/update notes including clozes, tag management, deck listings, card info. Run from a git clone; no installer.

  • AnkiConnect-based skills for Claude Code, e.g. Anki Flashcard Manager and AnkiConnect Integration. These target the agentic-coding-in-an-IDE workflow. The use case is “generate cards from these docs and this code”, not “let me chat with my collection”.

There is also a separate Anki add-on at ankimcp.com1 that runs MCP from inside Anki rather than as an external server, installable through AnkiWeb. I haven’t tried it.

Every option in this category requires Anki to be running locally, and several of the wrappers are read-only or partial — see the AnkiWeb forum thread on official MCP for ongoing discussion.

A separate question, mentioned also in those forum threads: card generation is not necessarily something we want to make easy. Cards might in fact benefit from the friction of having been written deliberately, and a tool willing to generate a hundred mediocre cards from a PDF is not obviously what we want. MCP servers don’t solve this — they make it easier to do the wrong thing as well as the right thing — though they do at least put cards in a conversational interface where we can read each one before it lands in the deck, which beats fully-automated bulk generation.

4.3 AI Card generation

Useful infrastructure that makes it easy to programmatically edit our flashcards without building a whole new plugin.

5 Mnemosyne

The Mnemosyne Project

Mnemosyne aims to be a user-friendly flash card program, with a clean, deceptively simple interface that does not require you to wrap your head around complicated concepts before you can start using it. At the same time, under the hood it is very powerful, and its architecture allows infinite extensibility and customisibility through plugins and a scripting API, for the benefit of power users.

Source code here. Mnemosyne also looks good but I have never used it, preferring the Anki community and iOS support. Mnemosyne is desktop-and-Android only.

These days it resembles Anki closely.

6 Rember

Rember — Create amazing flashcards with AI

Rember is a simple yet powerful spaced repetition system designed to help you remember more.

Manually creating flashcards is tedious and time-consuming. Rember uses AI to create cards automatically from your content. Easily tweak them in our editor to make them just right.

USD8/month. At time of writing it does not support importing cards from other systems, and I have a years-long investment in my Anki cards, so this is a non-starter.

7 References

Allen, Mahler, and Estes. 1969. Effects of Recall Tests on Long-Term Retention of Paired Associates.” Journal of Verbal Learning and Verbal Behavior.
Attygalle, Kljun, Quigley, et al. 2025. Text-to-Image Generation for Vocabulary Learning Using the Keyword Method.” In Proceedings of the 30th International Conference on Intelligent User Interfaces. IUI ’25.
Cepeda, Coburn, Rohrer, et al. 2009. Optimizing Distributed Practice: Theoretical Analysis and Practical Implications.” Experimental Psychology.
Karpicke. 2017. Retrieval-Based Learning: A Decade of Progress.” In Learning and Memory: A Comprehensive Reference.
Karpicke, and Roediger. 2007. Expanding Retrieval Practice Promotes Short-Term Retention, but Equally Spaced Retrieval Enhances Long-Term Retention. Journal of Experimental Psychology: Learning, Memory, and Cognition.
———. 2008. The Critical Importance of Retrieval for Learning.” Science.
Roediger, and Karpicke. 2006. Test-Enhanced Learning: Taking Memory Tests Improves Long-Term Retention.” Psychological Science.
Su, Ye, Nie, et al. 2023. Optimizing Spaced Repetition Schedule by Capturing the Dynamics of Memory.” IEEE Transactions on Knowledge and Data Engineering.
Ye, Su, and Cao. 2022. A Stochastic Shortest Path Algorithm for Optimizing Spaced Repetition Scheduling.” In Proceedings of the 28th ACM SIGKDD Conference on Knowledge Discovery and Data Mining. KDD ’22.

Footnotes

  1. Note the .com rather than .ai — they are different projects.↩︎