Skip to main content
Glama

🧠 Anki MCP

Paquete NPM yanki-connect Licencia: MIT

¡Transforma tu experiencia con las tarjetas de estudio de Anki con IA! Este servidor MCP (Protocolo de Contexto de Modelo) conecta tu colección de tarjetas de estudio de Anki con asistentes de IA como Claude, lo que permite conversaciones naturales sobre tus materiales de estudio.

¿Qué puedes hacer?

Imagina tener un tutor de IA que conoce toda tu colección de tarjetas didácticas y puede:

📚 Aprendizaje interactivo

  • "Pregúntame sobre el vocabulario japonés que no he visto en tres días"

  • "Ponme a prueba con cartas desafiantes de mi mazo médico"

  • "Muéstrame las cartas con las que he estado teniendo problemas últimamente"

✨ Creación de contenido inteligente

  • Crea tarjetas didácticas sobre la fotosíntesis con diagramas.

  • Convierte este capítulo PDF en tarjetas de repetición espaciada.

  • Generar tarjetas de eliminación de espacios vacíos a partir de mis apuntes de clase.

🔍 Análisis potente

  • "¿Con qué temas tengo más dificultades?"

  • "Muéstrame mis patrones de estudio del último mes"

  • "¿Cuál es mi tasa de retención para los diferentes tipos de tarjetas?"

🎯 Operaciones masivas

  • Etiqueta todas mis tarjetas de química con 'preparación para exámenes'.

  • Trasladar las cartas con baja retención a un mazo de revisión intensiva.

  • "Buscar y corregir cartas duplicadas en mis mazos"

Related MCP server: Anki MCP Server

🎯 Características

  • Integración completa con Anki : acceso completo a mazos, cartas, notas y estadísticas a través de los 115 métodos de API de AnkiConnect

  • Interfaz conversacional : comandos en lenguaje natural a través de su asistente de IA

  • Operaciones masivas : administre de manera eficiente miles de tarjetas a la vez

  • Estadísticas en tiempo real : obtenga información sobre su progreso de aprendizaje

  • Compatibilidad con medios : administre imágenes, audio y otros medios en sus tarjetas

  • Consulta avanzada : busque tarjetas utilizando criterios de búsqueda complejos

  • Seguridad de tipos : API totalmente tipificada con manejo integral de errores

🛠 Pila técnica

  • Node.js : entorno de ejecución (se requiere mayor de 18 años)

  • TypeScript : seguridad de tipos y experiencia del desarrollador

  • SDK de MCP : Implementación del protocolo de contexto de modelo

  • yanki-connect : 🙏 Cliente API AnkiConnect totalmente tipificado e isomórfico

  • tsup : Empaquetador rápido de TypeScript

  • PNPM : Gestor de paquetes eficiente

¡Un agradecimiento especial a la biblioteca yanki-connect por proporcionar la sólida interfaz AnkiConnect que impulsa esta integración!

📋 Requisitos previos

1. Instalar Anki

Descargue e instale Anki si aún no lo ha hecho.

2. Instalar el complemento AnkiConnect

  1. Abrir Anki

  2. Vaya a Herramientas → Complementos

  3. Haga clic en Obtener complementos...

  4. Introduzca el código: 2055492159

  5. Reiniciar Anki

Requisitos de la versión: Este servidor requiere la versión 25.2.25.0 o posterior de AnkiConnect (publicada el 25/02/2025) para una compatibilidad total. La mayoría de las funciones funcionan con versiones anteriores, pero recomendamos actualizar para disfrutar de la mejor experiencia.

3. Configurar AnkiConnect (opcional)

AnkiConnect funciona de inmediato, pero puedes personalizar la configuración:

  1. Vaya a Herramientas → Complementos

  2. Seleccione AnkiConnect y haga clic en Configurar

  3. La configuración predeterminada debería funcionar bien para la mayoría de los usuarios.

🚀 Inicio rápido

Opción 1: Usar con Claude Desktop (recomendado)

  1. Instalar el paquete

    npm install -g @arielbk/anki-mcp
  2. Configurar Claude Desktop

    Edite su archivo de configuración de Claude Desktop:

    macOS : ~/Library/Application Support/Claude/claude_desktop_config.jsonWindows : %APPDATA%\Claude\claude_desktop_config.json

    Añade esta configuración:

    {
      "mcpServers": {
        "anki": {
          "command": "anki-mcp",
          "args": []
        }
      }
    }
  3. Reiniciar Claude Desktop

  4. ¡Empieza a usarlo!

    • Asegúrese de que Anki se esté ejecutando con AnkiConnect habilitado

    • Pregúntale a Claude: "Muéstrame mis mazos de Anki" o "Ponme a prueba con 5 cartas".

💡 Consejo profesional: puedes probar tu configuración haciéndole a Claude preguntas simples como "¿Cuántos mazos de Anki tengo?" o "¿Qué hay en mi mazo más grande?"

Opción 2: Configuración del desarrollo

  1. Clonar el repositorio

    git clone https://github.com/arielbk/anki-mcp.git
    cd anki-mcp
  2. Instalar dependencias

    pnpm install
  3. Construir el proyecto

    pnpm build
  4. Probar el servidor

    # Use the MCP inspector to test functionality
    pnpm inspect

Opción 3: Uso con otros clientes MCP

Este servidor funciona con cualquier cliente compatible con MCP. También puede usarlo con:

  • MCP Inspector : herramienta de depuración interactiva

  • Cline : extensión de VS Code para codificación de IA

  • Clientes MCP personalizados : cree el suyo propio utilizando el SDK de MCP

Para el transporte stdio, ejecute:

node dist/index.js

Ejemplos de uso

Una vez configurado con Claude Desktop, podrás tener conversaciones naturales como:

📖 Sesiones de estudio

You: "I have a Japanese exam tomorrow. Can you quiz me on Hiragana cards I haven't reviewed in a week?"

Claude: I'll find your Hiragana cards that need review and start a quiz session...

📝 Creación de contenido

You: "Create flashcards for the major battles of World War II with dates and significance"

Claude: I'll create comprehensive flashcards covering the key WWII battles...

📊 Análisis del estudio

You: "How am I doing with my medical terminology deck? Show me my weak areas."

Claude: Let me analyze your performance on the medical terminology deck...

🏷️ Organización

You: "Tag all cards about cardiovascular system with 'cardiology' and move them to my MCAT prep deck"

Claude: I'll help you organize those cards...

🔧 Herramientas y recursos disponibles

Este servidor MCP proporciona acceso integral a su colección Anki a través de estas capacidades:

📚 Gestión de cubiertas

  • Listado de todos los mazos con estadísticas

  • Crear nuevos mazos

  • Cambiar el nombre y eliminar mazos

  • Obtener la configuración del deck

Operaciones con tarjeta

  • Buscar tarjetas por criterios de búsqueda

  • Tarjetas de respuestas (simulan revisiones)

  • Obtener información y estadísticas de la tarjeta

  • Suspender/reactivar tarjetas

  • Operaciones con tarjetas en masa

📝 Gestión de notas

  • Agregar nuevas notas con campos personalizados

  • Actualizar notas existentes

  • Eliminar notas

  • Buscar notas mediante consulta de búsqueda

  • Operaciones de notas masivas

📊 Estadísticas y análisis

  • Estadísticas de mazo y métricas de rendimiento

  • Datos de intervalo y facilidad de uso de la tarjeta

  • Revisar el historial y los patrones

  • Perspectivas sobre el progreso del aprendizaje

🎨 Medios y modelos

  • Tipos de notas de acceso y definiciones de campos

  • Gestión de archivos multimedia

  • Soporte de personalización de plantillas

🔍 Funciones avanzadas

  • Consultas de búsqueda complejas utilizando la sintaxis de búsqueda de Anki

  • Operaciones por lotes para mayor eficiencia

  • Sincronización en tiempo real con Anki

  • Manejo de errores y validación

  • Métodos API organizados agrupados por funcionalidad (cartas, mazos, notas, modelos, estadísticas, medios, etc.)

  • Acceso directo a los 115 métodos API de AnkiConnect con seguridad de tipo completa

🛠 Desarrollo

# Run in development mode with auto-reloading
pnpm dev

# Lint the code
pnpm lint

# Format the code
pnpm format

# Test with MCP inspector
pnpm inspect

🔧 Configuración

Configuración de AnkiConnect

El servidor se conecta a AnkiConnect en localhost:8765 por defecto. Si has personalizado la configuración de AnkiConnect, es posible que tengas que ajustar la configuración de conexión.

Importante : Asegúrese de que Anki esté en ejecución y que AnkiConnect esté instalado antes de usar el servidor MCP. El servidor no podrá conectarse si AnkiConnect no está disponible.

💡 Nota: La biblioteca subyacente yanki-connect admite el inicio automático de Anki en macOS, pero esta función no está disponible actualmente en la configuración del servidor MCP. Deberá iniciar Anki manualmente.

Configuración avanzada de Claude Desktop

Para usuarios avanzados, puedes pasar parámetros adicionales:

{
  "mcpServers": {
    "anki": {
      "command": "anki-mcp",
      "args": ["--verbose"],
      "env": {
        "ANKI_CONNECT_HOST": "localhost",
        "ANKI_CONNECT_PORT": "8765"
      }
    }
  }
}

Solución de problemas

Problemas comunes:

  • "Error al conectar con AnkiConnect" : Asegúrese de que Anki se esté ejecutando y que el complemento AnkiConnect esté instalado.

  • "No se encontraron mazos" : Asegúrate de tener al menos un mazo en Anki

  • Claude no responde : Reiniciar Claude Desktop después de los cambios de configuración

  • Errores de permisos : Verifique que la instalación global de npm funcionó correctamente con npm list -g @arielbk/anki-mcp

🤝 Contribuyendo

¡Agradecemos sus contribuciones! Por favor:

  1. Bifurcar el repositorio

  2. Crear una rama de características

  3. Realiza tus cambios

  4. Agregue pruebas si corresponde

  5. Enviar una solicitud de extracción

📜 Licencia

MIT - consulte el archivo LICENCIA para obtener más detalles.

🙏 Agradecimientos


¡Transforma tu experiencia con tarjetas didácticas con conversaciones impulsadas por IA! 🚀

Available Tools

7 tools
anki_operationsD
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYesAnki utility operation
deckNameNoDeck name to export
filePathNoFile path for export/import
includeSchedNoInclude scheduling in export
filenameNoMedia filename
mediaDataNoBase64 encoded media data
mediaUrlNoURL to download media from
patternNoPattern to match media files

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_analyticsD
ParametersJSON Schema
NameRequiredDescriptionDefault
scopeYesAnalytics scope
deckNameNoDeck name for deck-specific stats
cardIdsNoCard IDs for detailed analysis
startTimestampNoStart timestamp for review history
wholeCollectionNoGet whole collection stats vs current deck

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_media_fileD
ParametersJSON Schema
NameRequiredDescriptionDefault
filenameYesMedia filename referenced in Anki cards (e.g., "image.png")

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

manage_decksD
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYesDeck management operation
deckNameNoDeck name
deckNamesNoDeck names (for batch operations)
deleteCardsNoDelete cards when deleting deck
cardIdsNoCard IDs to move
targetDeckNoTarget deck for moving cards
configIdNoConfig ID to apply

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

manage_flashcardsD
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYesThe flashcard operation to perform
deckNameNoDeck name (for create operations)
modelNameNoNote type/model name (for create operations)
fieldsNoField name-value pairs (for create/update)
tagsNoTags to add/remove or set
notesNoArray of notes to create (for create_batch)
noteIdNoNote ID (for update/delete single note)
noteIdsNoNote IDs (for delete multiple)
queryNoAnki search query (for find operation)
includeDetailsNoInclude detailed note info (for find)
limitNoMax results to return (default: 50, recommended to prevent context overflow)
offsetNoNumber of results to skip for pagination (default: 0)
cardIdsNoCard IDs to get info for

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

manage_modelsD
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYesModel management operation
modelNameNoModel/note type name
fieldsNoField names in order (for create)
templatesNoCard templates (for create)
cssNoCSS styling
isClozeNoIs cloze deletion type
fieldNameNoField name
newFieldNameNoNew field name (for rename)
fieldIndexNoField index position
templateNameNoTemplate name
templateNoTemplate content

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

study_sessionD
ParametersJSON Schema
NameRequiredDescriptionDefault
operationYesStudy session operation
queryNoSearch query to find cards (for find_due)
cardIdsNoCard IDs to operate on
answersNoCard answers (for answer operation)
daysNoDays from today for due date (for reschedule)

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 98 tool updatesv1.0.0
    • Removedadd_note
    • Removedadd_notes
    • Removedadd_tags_to_notes
    • Addedanki_operations
    • Removedanswer_cards
    • Removedapi_reflect
    • Removedcan_add_notes
    • Removedcard_reviews
    • Removedcards_to_notes
    • Removedchange_deck
    • Removedcheck_card_suspended
    • Removedcheck_cards_due
    • Removedcheck_cards_suspended
    • Removedclear_unused_tags
    • Removedclone_deck_config
    • Removedcreate_deck
    • Removedcreate_model
    • Removeddelete_decks
    • Removeddelete_media_file
    • Removeddelete_notes
    • Removedexport_package
    • Removedfind_and_replace_in_models
    • Removedfind_cards
    • Removedfind_notes
    • Removedforget_cards
    • Removedget_active_profile
    • Addedget_analytics
    • Removedget_cards_ease_factors
    • Removedget_cards_info
    • Removedget_cards_intervals
    • Removedget_cards_mod_time
    • Removedget_collection_stats_html
    • Removedget_latest_review_id
    • Removedget_media_dir_path
    • Addedget_media_file
    • Removedget_media_files_names
    • Removedget_num_cards_reviewed_by_day
    • Removedget_num_cards_reviewed_today
    • Removedget_profiles
    • Removedget_reviews_of_cards
    • Removedget_version
    • Removedgui_add_cards
    • Removedgui_answer_card
    • Removedgui_browse
    • Removedgui_check_database
    • Removedgui_current_card
    • Removedgui_deck_browser
    • Removedgui_deck_overview
    • Removedgui_deck_review
    • Removedgui_edit_note
    • Removedgui_exit_anki
    • Removedgui_import_file
    • Removedgui_select_card
    • Removedgui_select_note
    • Removedgui_selected_notes
    • Removedgui_show_answer
    • Removedgui_show_question
    • Removedgui_start_card_timer
    • Removedgui_undo
    • Removedimport_package
    • Removedinsert_reviews
    • Removedload_profile
    • Addedmanage_decks
    • Addedmanage_flashcards
    • Addedmanage_models
    • Removedmodel_field_add
    • Removedmodel_field_remove
    • Removedmodel_field_rename
    • Removedmodel_field_reposition
    • Removedmodel_field_set_description
    • Removedmodel_field_set_font
    • Removedmodel_field_set_font_size
    • Removedmodel_template_add
    • Removedmodel_template_remove
    • Removedmodel_template_rename
    • Removedmodel_template_reposition
    • Removedmulti
    • Removedrelearn_cards
    • Removedreload_collection
    • Removedremove_deck_config
    • Removedremove_empty_notes
    • Removedremove_tags_from_notes
    • Removedreplace_tags_in_notes
    • Removedrequest_permission
    • Removedretrieve_media_file
    • Removedsave_deck_config
    • Removedset_card_specific_values
    • Removedset_cards_due_date
    • Removedset_cards_ease_factors
    • Removedset_deck_config
    • Removedstore_media_file
    • Addedstudy_session
    • Removedsuspend_cards
    • Removedsync
    • Removedunsuspend_cards
    • Removedupdate_model_styling
    • Removedupdate_model_templates
    • Removedupdate_note
  2. 91 tool updates
    • First observedadd_note
    • First observedadd_notes
    • First observedadd_tags_to_notes
    • First observedanswer_cards
    • First observedapi_reflect
    • First observedcan_add_notes
    • First observedcard_reviews
    • First observedcards_to_notes
    • First observedchange_deck
    • First observedcheck_card_suspended
    • First observedcheck_cards_due
    • First observedcheck_cards_suspended
    • First observedclear_unused_tags
    • First observedclone_deck_config
    • First observedcreate_deck
    • First observedcreate_model
    • First observeddelete_decks
    • First observeddelete_media_file
    • First observeddelete_notes
    • First observedexport_package
    • First observedfind_and_replace_in_models
    • First observedfind_cards
    • First observedfind_notes
    • First observedforget_cards
    • First observedget_active_profile
    • First observedget_cards_ease_factors
    • First observedget_cards_info
    • First observedget_cards_intervals
    • First observedget_cards_mod_time
    • First observedget_collection_stats_html
    • First observedget_latest_review_id
    • First observedget_media_dir_path
    • First observedget_media_files_names
    • First observedget_num_cards_reviewed_by_day
    • First observedget_num_cards_reviewed_today
    • First observedget_profiles
    • First observedget_reviews_of_cards
    • First observedget_version
    • First observedgui_add_cards
    • First observedgui_answer_card
    • First observedgui_browse
    • First observedgui_check_database
    • First observedgui_current_card
    • First observedgui_deck_browser
    • First observedgui_deck_overview
    • First observedgui_deck_review
    • First observedgui_edit_note
    • First observedgui_exit_anki
    • First observedgui_import_file
    • First observedgui_select_card
    • First observedgui_select_note
    • First observedgui_selected_notes
    • First observedgui_show_answer
    • First observedgui_show_question
    • First observedgui_start_card_timer
    • First observedgui_undo
    • First observedimport_package
    • First observedinsert_reviews
    • First observedload_profile
    • First observedmodel_field_add
    • First observedmodel_field_remove
    • First observedmodel_field_rename
    • First observedmodel_field_reposition
    • First observedmodel_field_set_description
    • First observedmodel_field_set_font
    • First observedmodel_field_set_font_size
    • First observedmodel_template_add
    • First observedmodel_template_remove
    • First observedmodel_template_rename
    • First observedmodel_template_reposition
    • First observedmulti
    • First observedrelearn_cards
    • First observedreload_collection
    • First observedremove_deck_config
    • First observedremove_empty_notes
    • First observedremove_tags_from_notes
    • First observedreplace_tags_in_notes
    • First observedrequest_permission
    • First observedretrieve_media_file
    • First observedsave_deck_config
    • First observedset_card_specific_values
    • First observedset_cards_due_date
    • First observedset_cards_ease_factors
    • First observedset_deck_config
    • First observedstore_media_file
    • First observedsuspend_cards
    • First observedsync
    • First observedunsuspend_cards
    • First observedupdate_model_styling
    • First observedupdate_model_templates
    • First observedupdate_note

TDQS

D1.8/5.0

Scored across 7 tools

Disambiguation4/5

The tools have distinct purposes targeting different aspects of Anki functionality: operations, analytics, media, decks, flashcards, models, and study sessions. There is some potential overlap between 'anki_operations' and the more specific 'manage_' tools, but the separation is generally clear enough for an agent to distinguish them based on their names.

Naming Consistency3/5

The naming is mixed: 'anki_operations', 'get_analytics', and 'get_media_file' follow a verb_noun pattern, while 'manage_decks', 'manage_flashcards', and 'manage_models' use a verb_noun pattern with a consistent 'manage_' prefix, and 'study_session' is a noun_noun pattern. This inconsistency in conventions reduces predictability but remains readable.

Tool Count5/5

With 7 tools, the count is well-scoped for an Anki server, covering core areas like decks, flashcards, models, study sessions, analytics, media, and general operations. Each tool appears to earn its place without being excessive or insufficient for the domain.

Completeness3/5

The tool set covers key areas of Anki (decks, flashcards, models, study, analytics, media, operations), but without descriptions, it's unclear if there are gaps in CRUD/lifecycle coverage. For example, 'manage_flashcards' might imply create/update/delete, but specific tools for individual operations are missing, potentially leading to agent workarounds.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    An MCP server that enables AI assistants like Claude to interact with Anki flashcard decks, allowing users to create, manage, and update flashcards through natural language conversations.
    9
    44
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    An MCP server that enables AI assistants to interact with the Anki flashcard application for studying, deck management, and note creation. It supports natural language interaction for reviewing cards, searching content, and managing media files across local and remote environments.
    1,773 npm
    502
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that enables AI assistants to seamlessly manage Anki flashcards, decks, and templates through the AnkiConnect API. It supports intelligent querying, batch note creation, and detailed study progress analysis using natural language.
    4
    MIT