AnkiConnect
Servidor MCP de AnkiConnect para interactuar con Anki a través de AnkiConnect.
Documentación
Servidor MCP de Anki Connect
Un servidor de Model Context Protocol (MCP) que proporciona una integración perfecta con Anki a través del complemento AnkiConnect. Este servidor permite a los asistentes de IA y otros clientes MCP interactuar con tu colección de tarjetas de memoria de Anki programáticamente.

¿Qué es Anki Connect?
AnkiConnect es un potente complemento de Anki que expone la funcionalidad de Anki a través de una API REST. Permite a aplicaciones externas:
- Crear, modificar y eliminar tarjetas de memoria
- Gestionar mazos y sus configuraciones
- Controlar la interfaz gráfica de Anki programáticamente
- Buscar y recuperar información de tarjetas
- Gestionar etiquetas y tipos de notas
- Realizar operaciones masivas en tarjetas y notas
¿Qué es MCP (Model Context Protocol)?
El Model Context Protocol es una forma estandarizada para que los asistentes de IA se conecten a fuentes de datos y herramientas externas. Este servidor MCP actúa como un puente entre clientes MCP (como Claude Desktop) y AnkiConnect, permitiendo que los asistentes de IA te ayuden a gestionar tus tarjetas de memoria de Anki de forma natural a través de la conversación.
Características
Este servidor MCP proporciona acceso completo a la funcionalidad de AnkiConnect a través de las siguientes herramientas:
Gestión de Tarjetas de Memoria
create_flashcard()- Crear nuevas tarjetas de memoria con contenido frontal y posterioradd_note()- Añadir notas con campos y etiquetas personalizadosadd_notes()- Añadir múltiples notas en loteupdate_note_fields()- Actualizar campos de notas existentesfind_notes()- Buscar notas usando la sintaxis de consulta de Anki
Gestión de Mazos
deck_names()- Obtener todos los nombres de mazosdeck_names_and_ids()- Obtener nombres de mazos con sus IDschange_deck()- Mover tarjetas entre mazosdelete_decks()- Eliminar mazos y opcionalmente sus tarjetasget_deck_config()- Recuperar ajustes de configuración de mazos
Operaciones con Tarjetas
find_cards()- Buscar tarjetascards_info()- Obtener información detallada de tarjetassuspend()/unsuspend()- Suspender/reanudar tarjetasare_suspended()/are_due()- Comprobar estado de tarjetas
Control de Interfaz Gráfica
gui_deck_browser()- Abrir el navegador de mazosgui_deck_review()- Iniciar revisión de mazosgui_browse()- Abrir el navegador de tarjetas con búsquedagui_add_cards()- Abrir el diálogo de añadir tarjetas
Herramientas de Utilidad
version()- Obtener la versión de AnkiConnectget_tags()- Recuperar todas las etiquetasmulti()- Ejecutar múltiples solicitudes de AnkiConnect en lote
Requisitos Previos
1. Instalar el Complemento AnkiConnect
- Abre Anki
- Ve a Herramientas → Complementos
- Haz clic en Obtener complementos...
- Introduce el código:
2055492159 - Haz clic en Aceptar y reinicia Anki
2. Configurar AnkiConnect (Opcional)
AnkiConnect funciona sin configuración adicional, pero puedes personalizar sus ajustes:
- Ve a Herramientas → Complementos
- Selecciona AnkiConnect y haz clic en Configurar
- Modifica los ajustes si es necesario (el puerto predeterminado es 8765)
- Reinicia Anki después de realizar cambios
Instalación
- Clona este repositorio:
git clone https://github.com/spacholski1225/anki-connect-mcp.git
cd anki-connect-mcp
- Instala las dependencias:
npm install
- Compila el proyecto:
npm run build
Configuración del Cliente MCP
Claude Desktop
Para usar este servidor MCP con Claude Desktop, añade la siguiente configuración a tu archivo de ajustes MCP:
Ubicación del archivo de configuración MCP:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Opciones de Configuración:
Opción 1: Usando Node.js (Instalación Local)
{
"mcpServers": {
"anki-connect-mcp": {
"command": "node",
"args": [
"dist/index.js"
],
"env": {},
"disabled": false,
"alwaysAllow": [
"deck_names",
"cards_info",
"deck_names_and_ids",
"gui_deck_browser"
]
}
}
}
Opción 2: Usando npx (Paquete NPM)
Luego configura tu cliente MCP:
{
"mcpServers": {
"anki-connect": {
"command": "npx",
"args": [
"@spacholski1225/anki-connect-mcp"
],
"env": {},
"disabled": false,
"alwaysAllow": [
"deck_names",
"cards_info",
"deck_names_and_ids",
"gui_deck_browser"
]
}
}
}
Opción 3: Usando Docker
{
"mcpServers": {
"anki-connect": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"--network=host",
"-e", "ANKI_CONNECT_URL=http://host.docker.internal:8765",
"spacholski/anki-connect-mcp:latest"
],
"env": {},
"disabled": false,
"alwaysAllow": [
"deck_names",
"cards_info",
"deck_names_and_ids",
"gui_deck_browser"
]
}
}
}
Configuración Específica de AnkiConnect para Docker:
Cuando uses la opción de Docker, debes configurar AnkiConnect con ajustes específicos para permitir el acceso desde el contenedor Docker:
- Ve a Herramientas → Complementos en Anki
- Selecciona AnkiConnect y haz clic en Configurar
- Actualiza la configuración con los siguientes ajustes:
{
"apiKey": null,
"apiLogPath": null,
"ignoreOriginList": [],
"webBindAddress": "0.0.0.0",
"webBindPort": 8765,
"webCorsOriginList": [
"http://localhost",
"http://host.docker.internal",
"http://host.docker.internal:3000"
]
}
Puntos Clave de Configuración para Docker:
webBindAddress: "0.0.0.0"- Permite que AnkiConnect acepte conexiones desde cualquier dirección IP (requerido para contenedores Docker)webCorsOriginList- Debe incluir"http://host.docker.internal"y orígenes relacionados para permitir solicitudes de origen cruzado desde contenedores Docker- Reinicia Anki después de realizar estos cambios de configuración
Notas Importantes:
- Para la opción Node.js: Reemplaza la ruta en
argscon la ruta real a tu archivoindex.jscompilado - Para la opción npx: Usa el paquete NPM publicado
@spacholski1225/anki-connect-mcp- no se requiere instalación local - Para la opción Docker: Usa la imagen Docker precompilada
spacholski/anki-connect-mcp:latest - El array
alwaysAllowcontiene herramientas que no requerirán confirmación cada vez - Asegúrate de que Anki esté ejecutándose con AnkiConnect habilitado antes de usar el servidor MCP
- Para la opción Docker, el indicador
--network=hostpermite que el contenedor acceda a AnkiConnect en la máquina anfitriona
Ejemplos de Uso
Una vez configurado con un cliente MCP como Claude Desktop, puedes interactuar con tu colección de Anki de forma natural:
- "Crea una tarjeta de memoria sobre la capital de Francia"
- "Muéstrame todos los nombres de mis mazos"
- "Encuentra todas las tarjetas etiquetadas con 'vocabulario'"
- "Suspende todas las tarjetas en el mazo 'Palabras Difíciles'"
- "Abre el navegador de mazos en Anki"
Solución de Problemas
Problemas Comunes
- Conexión rechazada: Asegúrate de que Anki esté ejecutándose y AnkiConnect esté instalado
- Conflictos de puerto: Comprueba si el puerto 8765 está disponible o configura AnkiConnect para usar un puerto diferente
- Errores de permisos: Asegúrate de que el servidor MCP tenga los permisos adecuados del sistema de archivos
- Herramienta no encontrada: Verifica la configuración del cliente MCP y reinicia el cliente
Contribuciones
¡Las contribuciones son bienvenidas! No dudes en enviar problemas, solicitudes de funciones o solicitudes de extracción.
Licencia
Licencia ISC