anki-mcp-addon

anki-mcp-addon

Enables to interact with your Anki collection through natural language, allowing you to study, edit, and analyze flashcards without external dependencies.

Category
Visit Server

README

anki-mcp-addon

Talk to your Anki collection. Point Claude (or any MCP client) at your flashcards and study, edit, and analyze your deck in plain conversation. No AnkiConnect, no Node.js, no external dependencies. It's a small Python add-on that runs an MCP server inside Anki itself.

License: MIT Python 3.9+ Zero dependencies

Why

Anki is powerful but manual: browsing, tagging, and reviewing all happen through the desktop UI. This add-on turns your collection into something an LLM can actually work with, so you can ask for things instead of clicking through them:

  • "Quiz me on today's due cards, one at a time."
  • "Turn these notes into 15 flashcards and put them in my Spanish deck."
  • "How's my retention been this month? Which decks am I falling behind on?"
  • "Find every card tagged hard, move them into a Review deck."
  • "I got that one wrong, mark it Again."

Everything runs locally. Your collection never leaves your machine except through whatever MCP client you're already using.

Prerequisites

  • Anki 23.10 or later (Python 3.9+ bundled)
  • An MCP-compatible client (Claude Code, Claude Desktop, Cursor, Zed, etc.)

Installation

Via AnkiWeb (recommended)

  1. Anki → Tools → Add-ons → Get Add-ons
  2. Paste this code: 593632040
  3. Restart Anki

Add-on page on AnkiWeb

Manual (for development or the latest unreleased code)

  1. Find your Anki add-ons directory: Anki → Tools → Add-ons → View Files (opens %APPDATA%\Anki2\addons21\ on Windows)
  2. Copy (or symlink) this repo's root folder (the one containing __init__.py and manifest.json) into that add-ons directory
  3. Restart Anki

Either way, the MCP server starts automatically when you open a profile. It listens on http://127.0.0.1:8766.

Optional: change port

Tools → Add-ons → anki-mcp → Config opens a settings dialog. Change the port and click "Save and restart"; no need to restart Anki.

Client setup

Claude Code

claude mcp add anki --transport sse http://127.0.0.1:8766/sse

Restart Claude Code. Anki must be open whenever you use it.

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "anki": {
      "url": "http://127.0.0.1:8766/sse"
    }
  }
}

Other MCP-compatible clients

Use SSE transport URL: http://127.0.0.1:8766/sse

Refer to each client's MCP documentation for where to configure SSE servers.

Available tools

Notes

Tool Description
create_notes Create Basic or Cloze notes. Supports batch.
search_notes Search with Anki browser syntax. Returns up to limit notes (default 50).
update_note Edit note fields in place by note ID. Preserves scheduling data.
add_tags / remove_tags Tag notes by ID. Supports :: hierarchy.
delete_notes Delete notes by ID (also deletes associated cards).
move_notes Move notes to another deck.

Decks

Tool Description
create_deck Create deck or subdeck (Parent::Child::Grandchild).
list_decks List all decks with due/new/learn counts.
delete_decks Delete decks by name.

Study

Tool Description
get_due_cards Get cards due for review (default limit 20, max 100).
submit_answer Record answer for a card: 1=Again, 2=Hard, 3=Good, 4=Easy.
reschedule_cards Postpone cards by N days.
suspend_cards Suspend or unsuspend cards.
forget_cards Reset cards to new state. Preserves note content and tags.

Insights & sync

Tool Description
get_insights Retention stats, overdue count, mature/young cards for a deck or all decks.
sync Trigger AnkiWeb sync.

Development

pip install pytest
pytest

Tests run without Anki. The aqt and anki modules are mocked via tests/conftest.py.

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured