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.
- anki://search/deckcurrent
- Returns all cards from current deck
- Equivalent of
deck:current
in Anki
- anki://search/isdue
- Returns cards in review and learning waiting to be studied
- Equivalent of
is:due
in Anki
- anki://search/isnew
- Returns all unseen cards
- Equivalent of
is:new
in Anki
-
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 cards from new
- Inputs:
num
(number): Number of cards
Install dependencies:
npm install
Build the server:
npm run build
For development with auto-rebuild:
npm run watch
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"
}
}
}
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
npm run inspector
The Inspector will provide a URL to access debugging tools in your browser.