Anki Model Context Protocol (MCP) Server
Anki Model Context Protocol (MCP) Server
Un servidor Model Context Protocol (MCP) de alto rendimiento que permite a los asistentes de IA (Claude Desktop, Claude Code, Antigravity, Codex, Cursor, etc.) gestionar directamente las tarjetas, mazos, tipos de nota, etiquetas, medios y búsquedas de Anki.
⚡ Arquitectura universal de E/S basada en archivos
Las tarjetas modernas (especialmente con marcado HTML, bloques de código con resaltado de sintaxis y fórmulas matemáticas LaTeX) son cargas de gran tamaño. Transmitirlas a través de los parámetros JSON-RPC de las herramientas o devolver el contenido completo de la tarjeta directamente al modelo provoca agotamiento de tokens, salidas truncadas y saturación de la ventana de contexto.
Este servidor implementa Entrada y Salida Universal basada en archivos (File-Based I/O):
Wcero exceso de tokens en banda: Las mutaciones, consultas, búsquedas e introspecciones de esquema de tarjetas aceptan rutas de archivos JSON de entrada y escriben toda la salida estructurada en el disco.
Respuestas de telemetría compactas: Cada llamada a una herramienta devuelve resúmenes de metadatos acotados ($< 150$ tokens) con el estado, los IDs, los recuentos afectados y la ruta resuelta del
output_file.Ingesta atómica por lotes: Se pueden escribir cientos de tarjetas en una única carga útil JSON e ingerirlas en una transacción SQLite atómica en milisegundos.
Almacenamiento temporal multiplataforma: Las salidas se colocan por defecto en el directorio temporal del sistema operativo (
%TEMP%\anki_mcpen Windows,/tmp/anki_mcpen Linux/macOS) y se pueden anular medianteANKI_MCP_OUTPUT_DIR.
Related MCP server: Anki MCP Server
Características
⚡ Puente directo rápido: Interactúa directamente con la base de datos de la colección de Anki (
collection.anki2) mediante el motor oficialankide Python, con cero sobrecarga HTTP.🔒 Ciclo de vida de conexión no bloqueante: Utiliza una gestión de contexto de apertura/cierre por solicitud (~2.7ms), por lo que los bloqueos de la base de datos se liberan inmediatamente y Anki Desktop no queda bloqueado.
🪟 Multiplataforma: Soporte nativo para Windows, macOS y Linux, con detección automática de la colección en las ubicaciones estándar del sistema.
🗂️ Mazos jerárquicos: Soporte completo para la creación de mazos anidados (p. ej.,
Computer Science::Algorithms::Trees).📝 Formatos de tarjeta enriquecidos: Admite tarjetas estándar/básicas, texto con huecos (Cloze) (
{{c1::...}}), campos personalizados y fórmulas matemáticas LaTeX ($...$y$$...$$).🔍 Motor de consultas: Soporte completo para la sintaxis de búsqueda de Anki (
deck:Languages tag:grammar,is:due,added:7,"Recursion").🏷️ Gestión de etiquetas: Etiquetado jerárquico y alta/eliminación masiva de etiquetas.
📦 Creación por lotes: Adición de tarjetas por lotes de alto rendimiento en operaciones atómicas mediante cargas útiles JSON.
💾 Exportación de mazos: Empaquetado nativo a
.apkg,.colpkgy.json.💡 Prompts y recursos de MCP: Recursos integrados (
anki://decks,anki://stats) y un prompt estructurado de generación de tarjetas (flashcard_generator).
Instalación y configuración
Este proyecto usa uv para la gestión rápida y reproducible de entornos de Python.
Clonar e instalar
git clone https://github.com/debnath-d/anki-mcp-server.git
cd anki-mcp-server
uv syncEjecutar el servidor
uv run anki-mcp-serverConfiguraciones de los clientes
1. Claude Desktop
Añade el servidor a tu archivo de configuración de Claude Desktop:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
Configuración en Windows
{
"mcpServers": {
"anki": {
"command": "uv",
"args": [
"--directory",
"C:\\path\\to\\anki-mcp-server",
"run",
"anki-mcp-server"
]
}
}
}Configuración en macOS / Linux
{
"mcpServers": {
"anki": {
"command": "uv",
"args": [
"--directory",
"/path/to/anki-mcp-server",
"run",
"anki-mcp-server"
]
}
}
}2. Google Antigravity
Añade a tu configuración de MCP de Antigravity (~/.gemini/config/mcp_config.json):
{
"mcpServers": {
"anki": {
"command": "uv",
"args": [
"--directory",
"/path/to/anki-mcp-server",
"run",
"anki-mcp-server"
]
}
}
}3. Claude Code / Codex / clientes CLI
Inicia Claude Code con el servidor MCP:
claude --mcp-server "uv --directory '/path/to/anki-mcp-server' run anki-mcp-server"Herramientas MCP disponibles
1. Gestión de mazos
Herramienta | Parámetros | Descripción |
|
| Lista todos los mazos con nombres, IDs y recuentos de tarjetas. Escribe la jerarquía en el disco y devuelve un resumen. |
|
| Crea un mazo o submazo nuevo (p. ej., |
|
| Cambia el nombre de un mazo existente y actualiza todos los cadena de los submazos anidados. |
|
| Elimina un mazo y sus tarjetas. |
|
| Mueve tarjetas entre mazos por IDs, consulta o archivo de entrada. |
2. Tipos de nota (modelos)
Herramienta | Parámetros | Descripción |
|
| Lista todos los tipos de nota disponibles (p. ej., |
|
| Devuelve el esquema detallado, los campos y las plantillas de un tipo de nota a disco. |
3. Gestión de tarjetas y notas (basada en archivos)
Herramienta | Parâmetres | Descripción |
|
| Crea una nota estándar a partireda una carga útil JSON de archivo ( |
|
| Crea una tarjeta de texto con huecos (Cloze) a partir de una carga útil JSON de archivo ( |
|
| Añade varias tarjetas en un único lote atómico desde un archivo JSON de array. |
|
| Obtiene una nota por su ID (con campos, etiquetas, tipo de nota y tarjetas) y la escriba en el disco. |
|
| Actualiza los campos o las etiquetas de una nota existente a partir de una carga JSON. |
|
| Elimina notas y sus tarjetas mediante una lista de IDs o un archivo JSON. |
4. Medios, control de estado y exportación
Herramienta | Parâmetros | Descripción |
|
| Copia una imagen o diagrama directamente desde el disco al almacenamiento de medios de Anki y devuelve las etiquetas de emededicación. |
|
| Suspende tarjetas de las colas de repaso activas por IDs, consulta o archivo. |
|
| Resto de las colas de repaso activas tarjetas suspendidas por IDs, consulta o archivo. |
|
| Exporta un mazo a who |
5. Búsqueda y descubrimiento
Herramienta | Parámetros | Descripción |
|
| Busca notas con la sintaxis de búsqueda de Anki ( |
|
| Busca tarjetas y devuelve la cola de repaso, los intervalos y las fechas de vencimiento en el disco. |
6. Gestión de etiquetas y estadísticas
Herramienta | Parâmetros | Descripción |
|
| Lista todas las etiquetas únicas de la colección en el disco. |
|
| Añade etiquetas en bloque a varias notas. |
|
| Elimina etiquetas en bloque de varias notas. |
|
| Devuelve estadísticas resumidas (total de notas, tarjetas, tarjetas nuevas/vencidas, distribución por mazos). |
Pruebas
Ejecuta la suite de pruebas automatizada y el linter:
ruff check .
uv run python -m unittest discover -s testsNotas importantes y solución de problemas
Bloqueo de la base de datos SQLite: Anki utiliza bloqueos exclusivos de archivos. La aplicación de escritorio de Anki con interfaz gráfica de usuario debe estar cerrada mientras el servidor MCP ejecuta operaciones de escritura para evitar bloqueos de
anki.errors.DBError.Detección automática de la ruta de la colección:
Windows: Se detecta automáticamente en
%APPDATA%\Anki2\<Profile>\collection.anki2o%LOCALAPPDATA%\Anki2\<Profile>\collection.anki2.macOS: Se detecta automáticamente en
~/Library/Application Support/Anki2/<Profile>/collection.anki2.Linux: Se detecta automáticamente en
~/.local/share/Anki2/<Profile>/collection.anki2.Para utilizar una ubicación personalizada, configura la variable de entorno
ANKI_COLLECTION_PATH.
Caché de salida: Las salidas de las herramientas se almacenan en el directorio temporal de tu sistema operativo (
%TEMP%\anki_mcpo/tmp/anki_mcp) por defecto. ConfiguraANKI_MCP_OUTPUT_DIRpara usar un directorio personalizado.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityCmaintenanceEnables AI assistants to manage Anki flashcard decks and cards through natural language, supporting deck creation, card additions (basic and cloze types), and review queue management.682MIT
- AlicenseNot gradedqualityCmaintenanceEnables interaction with the Anki desktop flashcard application through the Anki-Connect plugin. Supports managing decks, cards, notes, and models, allowing AI assistants to create and query flashcards through natural language.101ISC
- AlicenseAqualityDmaintenanceEnables AI assistants to manage Anki flashcard collections by creating, searching, and updating cards through a standardized interface. It supports media handling, batch operations, and review scheduling via the AnkiConnect add-on.62MIT
- AlicenseAqualityDmaintenanceEnables AI tools to manage Anki flashcards, including deck management, card search, creation, editing, deletion, and statistics.10353Apache 2.0
Related MCP Connectors
AI access to your aNotepad online notes: read, search, write, and organize via 22 tools.
Free: turn your AI chats into spaced-repetition vocabulary. 13 tools, reads and writes.
AI-powered YouTube to flashcards with spaced repetition and Anki export
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/debnath-d/anki-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server