anki-mcp-server
by: scorzeth
An MCP server for Anki
📌Overview
Purpose: To facilitate connection and interaction between a locally running Anki desktop app and a server for card review and creation.
Overview: The Anki MCP Server is an implementation that leverages the Anki desktop application along with the Anki-Connect add-on, enabling users to manage card reviews and creation through a server-based interface.
Key Features:
-
Card Search Resources: Provides multiple search endpoints including those for current deck cards, due cards, and unseen cards using URLs tailored to the Anki query syntax.
-
Card Management Tools: Offers functions for updating card statuses (like marking cards as answered), adding new cards to the default deck, and retrieving a specified number of due or new cards for review.
Anki MCP Server
An MCP server implementation that connects to a locally running Anki, providing card review and creation.
This server is designed to work with the Anki desktop app and the Anki-Connect add-on. Make sure you have the add-on installed before using.
Resources
-
anki://search/deckcurrent
Returns all cards from current deck (Equivalent ofdeck:current
in Anki) -
anki://search/isdue
Returns cards in review and learning waiting to be studied (Equivalent ofis:due
in Anki) -
anki://search/isnew
Returns all unseen cards (Equivalent ofis:new
in Anki)
Tools
-
update_cards
Marks cards with given card IDs as answered and gives them an ease score between 1 (Again) and 4 (Easy)
Inputs:answers
(array): Array of objects withcardId
(number) andease
(number) fields
-
add_card
Creates a new card in the Default Anki deck
Inputs:front
(string): Front of cardback
(string): Back of card
-
get_due_cards
Returns n number of cards currently due for review
Inputs:num
(number): Number of cards
-
get_new_cards
Returns n number of new cards
Inputs:num
(number): Number of cards
Development
Install dependencies:
npm install
Build the server:
npm run build
For development with auto-rebuild:
npm run watch
Configuration
To use with Claude Desktop, add the server config:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"anki-mcp-server": {
"command": "/path/to/anki-mcp-server/build/index.js"
}
}
}
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. Using the MCP Inspector package script is recommended:
npm run inspector
The Inspector provides a URL to access debugging tools in your browser.