Skip to main content
Glama

πŸƒ Flashcard MCP

Give any AI assistant a memory that actually lasts.

A lightweight MCP server that adds spaced-repetition flashcards (the classic SM-2 algorithm behind SuperMemo and Anki) to Claude, Cursor, VS Code, and every other MCP-compatible assistant.

Stop re-teaching your AI the same thing every session. Your assistant now learns vocabulary, concepts, and facts once β€” then reviews them at the optimal moment so they stick forever.


Why?

Every AI session starts from zero. You ask your assistant to help you learn English words, it makes a nice list β€” and by tomorrow both of you have forgotten everything.

Flashcard MCP fixes this: it stores flashcards locally and schedules reviews using the SM-2 algorithm, the scientifically-backed method that powers SuperMemo and Anki. The AI creates the cards, you review them, and the server decides exactly when to bring each card back so it moves from short-term to long-term memory.

  • πŸ”’ 100% local β€” your data lives in a single SQLite file. No cloud, no accounts, no tracking.

  • 🧠 Real spaced repetition β€” the SM-2 algorithm, not a random "quiz".

  • ⚑ Zero config β€” install, add two lines to your MCP config, done.

  • 🐍 Pure Python, zero heavy dependencies β€” one tiny package, nothing else.

Related MCP server: Anki MCP Server

Installation

pip install flashcard-mcp

Configuration

Add the server to your MCP client. Examples for the most common setups:

Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "flashcards": {
      "command": "flashcard-mcp",
      "args": []
    }
  }
}

VS Code / Cursor (.mcp.json):

{
  "servers": {
    "flashcards": {
      "type": "stdio",
      "command": "flashcard-mcp"
    }
  }
}

Data location: the database is created at ./data/flashcards.db next to the package. Override it with the FLASHCARD_DB environment variable.

How it works

  1. You ask your AI to build a deck β€” e.g. "Create a deck 'English' and add cards for these phrasal verbs: look up, break down, give up."

  2. The AI calls the tools β€” the server creates the deck and cards in SQLite.

  3. When you want to review β€” ask "Let's review my due cards." The server returns exactly the cards that are due today, per the SM-2 schedule.

  4. You grade each card (0–5), the algorithm updates the easiness factor and picks the next review date. Perfect recalls β†’ longer intervals. Misses β†’ the card comes back tomorrow.

  5. Repeat β€” over time each card is reviewed at expanding intervals and permanently lands in your long-term memory.

Tools

Tool

Description

create_deck

Create a study deck

list_decks

List all decks with card counts

delete_deck

Delete a deck and its cards

add_card

Add a flashcard (front / back)

list_cards

List flashcards, filtered by deck

delete_card

Delete a flashcard

get_due_cards

Get cards due for review today

review_card

Grade a card (quality 0–5) and reschedule it

get_stats

Total cards, due today, per-deck breakdown

export_cards

Export everything as JSON

The SM-2 algorithm

When you grade a card, the server updates two numbers:

  • Easiness factor (EF) β€” how easy this card is for you. Starts at 2.5, never drops below 1.3.

  • Interval (days) β€” the gap until the next review. 1 β†’ 6 β†’ 6Γ—EF β†’ 6Γ—EFΒ² β†’ …

A grade below 3 resets the card to a 1-day interval. This is exactly the schedule that makes spaced repetition effective β€” it targets reviews right before you'd forget.

Development

pip install -e ".[dev]"
pytest

Project structure

flashcard_mcp/
β”œβ”€β”€ src/flashcard_mcp/
β”‚   β”œβ”€β”€ srs.py      # SM-2 scheduling algorithm
β”‚   β”œβ”€β”€ db.py       # SQLite storage layer
β”‚   └── server.py   # MCP server + tool definitions
└── tests/          # unit + end-to-end stdio tests

Roadmap

  • Anki .apkg import/export

  • HTML dashboard with retention graphs

  • Prompt templates for vocabulary / exam / language learning

  • Prebuilt study decks

License

MIT

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

–Maintainers
–Response time
–Release cycle
–Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    D
    maintenance
    An MCP server that enables AI assistants like Claude to interact with Anki flashcard decks, allowing users to create, manage, and update flashcards through natural language conversations.
    40
    MIT
  • A
    license
    -
    quality
    A
    maintenance
    An MCP server that enables AI assistants to interact with the Anki flashcard application for studying, deck management, and note creation. It supports natural language interaction for reviewing cards, searching content, and managing media files across local and remote environments.
    606
    417
    MIT
  • A
    license
    -
    quality
    D
    maintenance
    An MCP server that enables AI assistants to seamlessly manage Anki flashcards, decks, and templates through the AnkiConnect API. It supports intelligent querying, batch note creation, and detailed study progress analysis using natural language.
    4
    MIT
  • F
    license
    -
    quality
    C
    maintenance
    Local Leitner flashcard MCP server enabling AI clients to create decks, manage cards, study with spaced repetition, and track progress.

View all related MCP servers

Related MCP Connectors

  • Cloud-hosted MCP server for durable AI memory

  • Person-owned, portable AI memory as a remote MCP server, readable and writable by any MCP client.

  • User-owned memory for AI agents, Copilot, Claude, IDEs, CLIs, and chat apps over remote MCP.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cokovali10-sketch/flashcard-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server