A side-by-side look at the Anki and Vocabit MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Anki for education work as a local process; choose Vocabit for education as a local process. You can also run both side by side in one mcpServers block.
get_study_overview, get_due_cards, answer_cards.VOCABIT_BASE_URL, VOCABIT_AGENT_KEY, VOCABIT_USER_ID, VOCABIT_TERM_LANGUAGE, VOCABIT_DEFINITION_LANGUAGE, VOCABIT_TELEGRAM_ID, VOCABIT_TIMEOUT_MS, VOCABIT_DEMO.vocabit_health, create_study_set, list_study_sets.Rows where the two servers differ are marked.
| Spec | A Anki | |
|---|---|---|
| Category | Education | Education |
| Quality signal | 56/100 · Good | 53/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | Not declared |
| Pricing | Not declared | Not declared |
| Required env vars | None listed | VOCABIT_BASE_URLVOCABIT_AGENT_KEYVOCABIT_USER_IDVOCABIT_TERM_LANGUAGEVOCABIT_DEFINITION_LANGUAGEVOCABIT_TELEGRAM_IDVOCABIT_TIMEOUT_MSVOCABIT_DEMO |
| Verified owner | Community listing | Community listing |
| GitHub stars | 42 | 0 |
| Directory activity | 0 views 0 installs 0 upvotes | 0 views 0 installs 0 upvotes |
| Tools | 29 | 8 |
| Full listing | View Anki | View Vocabit |
get_study_overviewToday's new/learning/review counts per deck, cards reviewed today, streak, 7/30-day totals.get_due_cardsnum` cards to study (optionally from one `deckName`), with the interval each button would give.answer_cardsRecord answers (`cardId`, `ease` 1-4) and get each card's new interval. *(Previously `update_cards`.)*find_leechesWeakest cards (leech tag / many lapses), ranked by lapses and ease.get_card_historyFull review log of up to 20 cards.get_retention_statsTrue retention (young/mature), reviews per day and time spent for a deck over N days.undoUndo the last action in Anki.find_cardsPaginated search (`query`, `limit`, `offset`); pick the sections to return with `include`: `question`, `answer`, `fields`, `stats`.suspend_cardsDeactivate/reactivate cards, e.g. all cards with tag X in deck Y. Scheduling is preserved. Pass a `label` when suspending (notes get the tag `paused::<label>`) and `unsuspend_cards { label }` later resumes exactly that group, leaving cards suspended for other reasons alone.move_cardsMove cards to `targetDeck` (created if missing).reschedule_cardsset_due_date` (`days`: `0`, `1!`, `3-7`), `forget` (reset to new) or `relearn`.add_cardCreate one note.vocabit_healthCheck the connection and which mode the server is in.create_study_setPublish a set to the learner's app. Returns a deep link that opens it on the device.list_study_setsRecent sets, newest first, each with a progress summary.get_study_setFull contents of one set, plus the topic and notes the assistant attached.get_set_resultsThe feedback half.** Per-card status, `weakCards`, `untouchedCards`, due cards.update_study_setRetitle, retag, or append cards — typically the follow-up after reading results.notify_learnerTelegram ping that a set is waiting.delete_study_setRemove a set from the app. Study history is kept.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"anki": {
"command": "npx",
"args": [
"-y",
"github:nietus/anki-mcp"
]
}
}
}
{
"mcpServers": {
"vocabit": {
"command": "npx",
"args": [
"-y",
"vocabit-mcp"
],
"env": {
"VOCABIT_BASE_URL": "YOUR_VOCABIT_BASE_URL_HERE",
"VOCABIT_AGENT_KEY": "YOUR_VOCABIT_AGENT_KEY_HERE",
"VOCABIT_USER_ID": "YOUR_VOCABIT_USER_ID_HERE",
"VOCABIT_TERM_LANGUAGE": "YOUR_VOCABIT_TERM_LANGUAGE_HERE",
"VOCABIT_DEFINITION_LANGUAGE": "YOUR_VOCABIT_DEFINITION_LANGUAGE_HERE",
"VOCABIT_TELEGRAM_ID": "YOUR_VOCABIT_TELEGRAM_ID_HERE",
"VOCABIT_TIMEOUT_MS": "YOUR_VOCABIT_TIMEOUT_MS_HERE",
"VOCABIT_DEMO": "YOUR_VOCABIT_DEMO_HERE"
}
}
}
}