Yanki MCP Server ( Yet Another Anki MCP Server )
About
An MCP server implementation that connects to a locally running Anki, providing card review and creation. This is a fork of [scorzeth/anki-mcp-server](
Details
- Author
- htlin222
- Downloads
- 250
- Categories
- Other
Jump to
- Connects to a locally running Anki via Anki-Connect
- Provides resources for searching current deck, due cards, and new cards
- Tools to add cards with date‑structured deck names (DECK::YYYY::MM::DD)
- Tools to update cards with ease scores (1 = Again, 4 = Easy)
- Tools to retrieve due or new cards by count
- Zero configuration when using default deck; fully customizable via DECK env var
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Yanki MCP Server ( Yet Another Anki MCP Server )Command (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Run without installation via npx yanki-mcp-server or install globally with npm install -g yanki-mcp-server and run yanki-server. To use with Claude Desktop, add a configuration entry pointing to the server and optionally set the DECK environment variable to change the base deck name (default: "00_Inbox"). All communication happens over MCP stdio.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"yanki mcp server ( yet another anki mcp server )": {
"yanki-mcp-server": {
"command": "npx",
"args": [
"yanki-mcp-server"
]
}
}
}
}
McpServers
{
"yanki-mcp-server": {
"command": "npx",
"args": [
"yanki-mcp-server"
]
}
}
Yanki MCP Server ( Yet Another Anki MCP Server )
A Model Context Protocol server implementation that connects to a locally running Anki, providing card review and creation. This is a fork of scorzeth/anki-mcp-server with date-based organization features.
Available as an npm package: yanki-mcp-server
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 of is:due in Anki
- anki://search/isnew
- Returns all unseen cards
- Equivalent of is: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 with cardId (number) and ease (number) fields
- add_card
- Creates a new card in a date-structured deck (format: DECK::YYYY::MM::DD)
- Inputs:
- front (string): Front of card
- back (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
Installation & Usage
You can use this package without installation via npx:
npx yanki-mcp-server
Or install it globally:
npm install -g yanki-mcp-server
yanki-server
Development
Clone the repository and install dependencies:
git clone https://github.com/htlin222/yanki-mcp-server.git
cd yanki-mcp-server
npm install
Build the server:
npm run build
For development with auto-rebuild:
npm run watch
Run the server directly during development:
npm run dev
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": {
"yanki-mcp-server": {
"command": "npx",
"args": ["yanki-mcp-server"],
"env": {
"DECK": "Default"
}
}
}
}
Debugging
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.
Date-Based Card Organization
This server automatically organizes new cards using a date-based structure instead of traditional topic-based organization. When you create a new card, it's added to a deck with the following format:
DECK::YYYY::MM::DD
Where:
- DECK is the base deck name (default: "00_Inbox" or configured via environment variable)
- YYYY is the 4-digit year
- MM is the 2-digit month
- DD is the 2-digit day
Benefits of Date-Based Organization
1. Effortless Organization: Cards are automatically organized by creation date without manual categorization
2. Temporal Context: Review cards created during specific time periods (e.g., during a course or project)
3. Natural Spaced Repetition: Cards naturally group by when you learned concepts
4. Time-Efficient: No need to spend time deciding which category each card belongs to
5. Historical Record: See your learning journey over time
Configuration
You can customize the base deck name by setting the DECK environment variable in your MCP server configuration:
"env": {
"DECK": "YourCustomDeckName"
}
If not specified, it defaults to "00_Inbox".
Changelog
1.0.5 (2025-05-31)
- Completely removed all console output and logging functionality - Simplified codebase by eliminating all non-essential output - Ensured 100% clean MCP protocol communication with no extraneous output - Removed all filesystem operations related to logging1.0.4 (2025-05-31)
- Fixed critical issue with logs directory path being created at filesystem root - Improved logging system with robust error handling and fallback mechanisms - Ensured logs are always created relative to the current working directory - Added silent failure for logging to prevent breaking MCP protocol if logging fails1.0.3 (2025-05-31)
- Fixed MCP communication protocol issue by redirecting all console output to log files - Added file-based logging system that preserves all debug and status information - Logs are stored in thelogs directory with date-based filenames
- Ensured clean stdout communication for proper MCP JSON-RPC protocol complianceSign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



