anki-mcp
Un servidor de Protocolo de Contexto de Modelo (MCP) para interactuar con las tarjetas de memoria de Anki mediante el complemento AnkiConnect. Este servidor expone las acciones de AnkiConnect como herramientas MCP, organizadas en servicios lógicos.
Prerrequisitos
- Aplicación de escritorio Anki
- Complemento AnkiConnect instalado y configurado en Anki
- Python 3.8+
uv
(para ejecutar e instalar dependencias, opcional pero recomendado)
Instalación
Uso
Para ejecutar el servidor MCP:
El servidor se iniciará y escuchará las solicitudes MCP, generalmente interactuando con AnkiConnect en http://127.0.0.1:8765
.
Inspeccionando el servidor
Puede utilizar el Inspector MCP para ver las herramientas disponibles:
Configuración para clientes MCP
Si lo integra con un cliente MCP (como un framework de asistente de IA), deberá configurarlo para que encuentre este servidor. A continuación, se muestra un fragmento de configuración de ejemplo:
Herramientas MCP disponibles
Este servidor MCP proporciona acceso a la funcionalidad de Anki mediante herramientas agrupadas por servicios. Los nombres de las herramientas corresponden directamente a las acciones de AnkiConnect.
Servicio de cubierta ( deck.*
)
deck.deckNamesAndIds
: obtiene la lista completa de nombres de mazos y sus respectivos ID.deck.getDeckConfig
: obtiene el objeto del grupo de configuración para un nombre de deck determinado.deck.deckNames
: obtiene la lista completa de nombres de mazos para el usuario actual.deck.createDeck
: crea un nuevo deck vacío.deck.deleteDecks
: elimina los decks especificados.deck.changeDeck
: Mueve cartas a un mazo diferente.deck.saveDeckConfig
: guarda un grupo de configuración de cubierta.
Nota de servicio ( note.*
)
note.findNotes
: Devuelve los ID de notas para una consulta de búsqueda de Anki determinada.note.notesInfo
: Devuelve información para los ID de notas especificados.note.getNoteTags
: obtiene las etiquetas para una ID de nota específica.note.addNote
: Crea una nueva nota.note.updateNoteFields
: modifica los campos de una nota existente.note.deleteNotes
: elimina notas especificadas.note.addNotes
: crea múltiples notas.note.addTags
: agrega etiquetas a notas específicas.note.removeTags
: elimina las etiquetas de las notas especificadas.note.updateNote
: Modifica los campos y/o etiquetas de una nota existente.
Servicio de tarjeta ( card.*
)
card.findCards
: Devuelve los ID de tarjetas para una consulta de búsqueda de Anki determinada.card.cardsInfo
: Devuelve información para los ID de tarjetas especificados.card.cardsToNotes
: Devuelve los ID de notas para los ID de tarjetas determinados.card.areSuspended
: verifica si las tarjetas especificadas están suspendidas.card.cardsModTime
: Devuelve la hora de modificación para las ID de tarjetas especificadas.card.suspended
: verifica si una sola tarjeta está suspendida.card.suspend
: suspende las tarjetas especificadas.card.unsuspend
: anula la suspensión de tarjetas específicas.card.setSpecificValueOfCard
: establece valores específicos de una sola tarjeta (úselo con precaución).
Servicio de modelos ( model.*
) (Tipos de notas)
model.modelNamesAndIds
: obtiene la lista completa de nombres de modelos (tipo de nota) y sus ID.model.findModelsByName
: Obtiene las definiciones de modelos para los nombres de modelos proporcionados.model.modelFieldNames
: obtiene los nombres de campo para un nombre de modelo determinado.model.modelTemplates
: obtiene el contenido de la plantilla para cada tarjeta de un modelo especificado.model.modelStyling
: obtiene el estilo CSS para un nombre de modelo determinado.model.createModel
: Crea un nuevo modelo (tipo nota).model.updateModelTemplates
: modifica las plantillas de un modelo existente.model.updateModelStyling
: modifica el estilo CSS de un modelo existente.model.modelFieldAdd
: agrega un nuevo campo a un modelo existente.model.modelFieldRemove
: elimina un campo de un modelo existente.
Servicio de medios ( media.*
)
media.retrieveMediaFile
: recupera el contenido codificado en base64 de un archivo multimedia.media.getMediaFilesNames
: obtiene los nombres de los archivos multimedia que coinciden con un patrón global.media.storeMediaFile
: almacena un archivo multimedia (desde base64, ruta o URL).media.deleteMediaFile
: elimina un archivo multimedia especificado.
Desarrollo
Para prepararse para el desarrollo:
Ejecución de pruebas
Hacer
- [ ] Terminar de agregar todas las herramientas de AnkiConnect
You must be authenticated.
local-only server
The server can only run on the client's local machine because it depends on local resources.
Tools
Un servidor de protocolo de contexto de modelo que permite la interacción con tarjetas de memoria de Anki a través de AnkiConnect, proporcionando herramientas organizadas para administrar mazos, notas, tarjetas, modelos y archivos multimedia.
- Prerrequisitos
- Instalación
- Uso
- Configuración para clientes MCP
- Herramientas MCP disponibles
- Desarrollo
- Hacer
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityA server implementation that connects to a locally running Anki, enabling card review and creation through the Model Context Protocol.Last updated -440JavaScriptMIT License
- AsecurityFlicenseAqualityA Model Context Protocol server that enables LLMs to interact with Anki flashcard software through AnkiConnect, allowing for creation and management of flashcards, decks, and note types.Last updated -1020630TypeScript
Rember MCPofficial
-securityAlicense-qualityA Model Context Protocol server that allows Claude to create flashcards for Rember, helping users study and remember information through spaced repetition reviews.Last updated -8816TypeScriptMIT License- -securityAlicense-qualityA Model Context Protocol server that allows LLMs to interact with Anki flashcard software, enabling functions like creating decks, adding notes, searching cards, and managing flashcard content through natural language.Last updated -2061JavaScriptMIT License