Provides tools for interacting with the Anki desktop application through Anki-Connect, enabling management of flashcards, decks, notes, models, statistics, and media files programmatically.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Anki MCP Servercreate a flashcard for the capital of France"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Anki MCP Server
Requirements
Node.js 18 or newer. Download Node.js
Anki desktop application. Download Anki
Anki-Connect plugin. Install Anki-Connect
You need to have Anki desktop application up and running to use Anki MCP server.
MCP Installation
Progress Log
Run with NPM
Run with Docker
Tools configuration
Add tests
Tools
card.answerCards
card.areDue
card.areSuspended
card.cardsInfo
card.cardsModTime
card.cardsToNotes
card.findCards
card.forgetCards
card.getEaseFactors
card.getIntervals
card.relearnCards
card.setDueDate
card.setEaseFactors
card.setSpecificValueOfCard
card.suspend
card.suspended
card.unsuspend
deck.changeDeck
deck.cloneDeckConfigId
deck.createDeck
deck.deckNames
deck.deckNamesAndIds
deck.deleteDecks
deck.getDeckConfig
deck.getDeckStats
deck.getDecks
deck.removeDeckConfigId
deck.saveDeckConfig
deck.setDeckConfigId
graphical.guiAddCards
graphical.guiAnswerCard
graphical.guiBrowse
graphical.guiCheckDatabase
graphical.guiCurrentCard
graphical.guiDeckBrowser
graphical.guiDeckOverview
graphical.guiDeckReview
graphical.guiEditNote
graphical.guiExitAnki
graphical.guiImportFile
graphical.guiSelectCard
graphical.guiSelectNote
graphical.guiSelectedNotes
graphical.guiShowAnswer
graphical.guiShowQuestion
graphical.guiStartCardTimer
graphical.guiUndo
media.deleteMediaFile
media.getMediaDirPath
media.getMediaFilesNames
media.retrieveMediaFile
media.storeMediaFile
miscellaneous.apiReflect
miscellaneous.exportPackage
miscellaneous.getActiveProfile
miscellaneous.getProfiles
miscellaneous.importPackage
miscellaneous.loadProfile
miscellaneous.multi
miscellaneous.reloadCollection
miscellaneous.requestPermission
miscellaneous.sync
miscellaneous.version
model.createModel
model.findAndReplaceInModels
model.findModelsById
model.findModelsByName
model.modelFieldAdd
model.modelFieldDescriptions
model.modelFieldFonts
model.modelFieldNames
model.modelFieldRemove
model.modelFieldRename
model.modelFieldReposition
model.modelFieldSetDescription
model.modelFieldSetFont
model.modelFieldSetFontSize
model.modelFieldsOnTemplates
model.modelNames
model.modelNamesAndIds
model.modelStyling
model.modelTemplateAdd
model.modelTemplateRemove
model.modelTemplateRename
model.modelTemplateReposition
model.modelTemplates
model.updateModelStyling
model.updateModelTemplates
note.addNote
note.addNotes
note.addTags
note.canAddNotes
note.canAddNotesWithErrorDetail
note.clearUnusedTags
note.deleteNotes
note.findNotes
note.getNoteTags
note.getTags
note.notesInfo
note.notesModTime
note.removeEmptyNotes
note.removeTags
note.replaceTags
note.replaceTagsInAllNotes
note.updateNote
note.updateNoteFields
note.updateNoteModel
note.updateNoteTags
statistic.cardReviews
statistic.getCollectionStatsHTML
statistic.getLatestReviewID
statistic.getNumCardsReviewedByDay
statistic.getNumCardsReviewedToday
statistic.getReviewsOfCards
statistic.insertReviews