Skip to main content
Glama

🧠 안키 MCP

NPM 패키지 yanki-connect라이센스: MIT

AI로 Anki 플래시카드 경험을 혁신하세요! 이 MCP(모델 컨텍스트 프로토콜) 서버는 Claude와 같은 AI 도우미와 Anki 플래시카드 컬렉션을 연결하여 학습 자료에 대한 자연스러운 대화를 가능하게 합니다.

🚀 무엇을 할 수 있나요?

여러분의 플래시 카드 컬렉션 전체를 알고 다음과 같은 일을 할 수 있는 AI 튜터가 있다고 상상해 보세요.

📚 대화형 학습

  • "3일 동안 못 본 일본어 어휘 퀴즈 좀 해주세요"

  • "내 의료 카드 덱에서 어려운 카드로 나를 시험해 봐"

  • "최근에 내가 어려움을 겪고 있는 카드를 보여주세요"

✨ 스마트 콘텐츠 제작

  • "다이어그램을 활용한 광합성에 대한 플래시카드 만들기"

  • "이 PDF 장을 간격 반복 카드로 바꾸세요"

  • "내 강의 노트에서 빈칸 삭제 카드 생성"

🔍 강력한 분석

  • "어떤 주제가 가장 어려움을 겪고 있나요?"

  • "지난 한 달 동안의 공부 패턴을 보여주세요"

  • "다양한 카드 유형에 대한 유지율은 어떻게 되나요?"

🎯 대량 작업

  • "내 모든 화학 카드에 '시험 준비' 태그를 달아주세요."

  • "보존률이 낮은 카드를 집중 검토 덱으로 옮기세요"

  • "내 덱에서 중복된 카드를 찾아 수정하세요"

Related MCP server: Anki MCP Server

🎯 특징

  • 전체 Anki 통합 : 115개의 AnkiConnect API 메소드를 통해 데크, 카드, 메모 및 통계에 대한 완전한 액세스

  • 대화형 인터페이스 : AI 어시스턴트를 통한 자연어 명령

  • 대량 작업 : 수천 장의 카드를 한 번에 효율적으로 관리

  • 실시간 통계 : 학습 진행 상황에 대한 통찰력을 얻으세요

  • 미디어 지원 : 카드의 이미지, 오디오 및 기타 미디어를 처리합니다.

  • 고급 쿼리 : 복잡한 검색 기준을 사용하여 카드 찾기

  • 유형 안전성 : 포괄적인 오류 처리를 갖춘 완전한 유형화된 API

🛠 기술 스택

  • Node.js : 런타임 환경 (18세 이상 필수)

  • TypeScript : 유형 안전성 및 개발자 경험

  • MCP SDK : 모델 컨텍스트 프로토콜 구현

  • yanki-connect : 🙏 완전 유형화되고 동형인 AnkiConnect API 클라이언트

  • tsup : 빠른 TypeScript 번들러

  • PNPM : 효율적인 패키지 관리자

이 통합을 지원하는 강력한 AnkiConnect 인터페이스를 제공한 yanki-connect 라이브러리에 특별히 감사드립니다!

📋 필수 조건

1. Anki 설치

아직 Anki를 다운로드하지 않았다면 지금 설치하세요.

2. AnkiConnect 플러그인 설치

  1. Anki 열기

  2. 도구 → 애드온으로 이동

  3. 추가 기능 받기...를 클릭하세요.

  4. 코드 입력: 2055492159

  5. Anki를 다시 시작하세요

📋 버전 요구 사항: 이 서버는 완벽한 호환성을 위해 AnkiConnect 버전 25.2.25.0 이상(2025년 2월 25일 출시)이 필요합니다. 대부분의 기능은 이전 버전에서도 작동하지만, 최상의 환경을 위해 업데이트하는 것을 권장합니다.

3. AnkiConnect 구성(선택 사항)

AnkiConnect는 바로 사용할 수 있지만 설정을 사용자 지정할 수 있습니다.

  1. 도구 → 애드온으로 이동

  2. AnkiConnect를 선택하고 구성을 클릭하세요.

  3. 대부분의 사용자에게는 기본 설정이 잘 작동할 것입니다.

🚀 빠른 시작

옵션 1: Claude Desktop과 함께 사용(권장)

  1. 패키지를 설치하세요

    지엑스피1

  2. Claude Desktop 구성

    Claude Desktop 구성 파일을 편집하세요.

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

    다음 구성을 추가합니다.

    {
      "mcpServers": {
        "anki": {
          "command": "anki-mcp",
          "args": []
        }
      }
    }
  3. Claude Desktop을 다시 시작하세요

  4. 지금 사용을 시작하세요!

    • AnkiConnect가 활성화된 상태에서 Anki가 실행 중인지 확인하세요.

    • Claude에게 물어보세요: "내 Anki 덱 보여줘" 또는 "5장의 카드로 퀴즈 풀어줘"

💡 전문가 팁: 클로드에게 "내 Anki 덱이 몇 개나 있어?" 또는 "내 가장 큰 덱에는 무엇이 들어있어?" 와 같은 간단한 질문을 해서 설정을 테스트해 볼 수 있습니다.

옵션 2: 개발 설정

  1. 저장소를 복제합니다

    git clone https://github.com/arielbk/anki-mcp.git
    cd anki-mcp
  2. 종속성 설치

    pnpm install
  3. 프로젝트를 빌드하세요

    pnpm build
  4. 서버 테스트

    # Use the MCP inspector to test functionality
    pnpm inspect

옵션 3: 다른 MCP 클라이언트와 함께 사용

이 서버는 모든 MCP 호환 클라이언트와 호환됩니다. 또한 다음 클라이언트와도 호환됩니다.

  • MCP Inspector : 대화형 디버깅 도구

  • 클라인 : AI 코딩을 위한 VS 코드 확장

  • 사용자 정의 MCP 클라이언트 : MCP SDK를 사용하여 사용자 정의 MCP 클라이언트를 구축하세요

stdio 전송의 경우 다음을 실행합니다.

node dist/index.js

🎮 사용 예시

Claude Desktop을 구성하면 다음과 같은 자연스러운 대화를 나눌 수 있습니다.

📖 스터디 세션

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...

📝 콘텐츠 제작

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...

📊 학습 분석

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...

🏷️ 조직

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...

🔧 사용 가능한 도구 및 리소스

이 MCP 서버는 다음 기능을 통해 Anki 컬렉션에 대한 포괄적인 액세스를 제공합니다.

📚 데크 관리

  • 통계를 포함한 모든 데크 나열

  • 새로운 덱을 만드세요

  • 데크 이름 변경 및 삭제

  • 데크 구성 가져오기

🗂️ 카드 운영

  • 검색 기준으로 카드 찾기

  • 카드 답변하기(리뷰 시뮬레이션)

  • 카드 정보 및 통계를 얻으세요

  • 카드 정지/정지 해제

  • 대량 카드 작업

📝 노트 관리

  • 사용자 정의 필드로 새 메모 추가

  • 기존 노트 업데이트

  • 메모 삭제

  • 검색어로 노트 찾기

  • 대량 메모 작업

📊 통계 및 분석

  • 데크 통계 및 성능 지표

  • 카드 편의성 및 간격 데이터

  • 역사와 패턴을 검토하세요

  • 학습 진행 상황 통찰력

🎨 미디어 & 모델

  • 노트 유형 및 필드 정의에 액세스

  • 미디어 파일 관리

  • 템플릿 사용자 정의 지원

🔍 고급 기능

  • Anki의 검색 구문을 사용한 복잡한 검색 쿼리

  • 효율성을 위한 일괄 작업

  • Anki와 실시간 동기화

  • 오류 처리 및 검증

  • 기능(카드, 데크, 노트, 모델, 통계, 미디어 등)별로 그룹화된 정리된 API 메서드

  • 전체 유형 안전성을 갖춘 115개 AnkiConnect API 메서드에 직접 액세스

🛠 개발

# 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

🔧 구성

AnkiConnect 설정

서버는 기본적으로 localhost:8765 의 AnkiConnect에 연결됩니다. AnkiConnect 구성을 사용자 지정했다면 연결 설정을 조정해야 할 수도 있습니다.

중요 : MCP 서버를 사용하기 전에 Anki가 실행 중이고 AnkiConnect가 설치되어 있는지 확인하세요. AnkiConnect에 액세스할 수 없으면 서버 연결에 실패합니다.

💡 참고: 기본 yanki-connect 라이브러리는 macOS에서 Anki 자동 실행을 지원하지만, 현재 MCP 서버 구성에는 이 기능이 제공되지 않습니다. Anki를 수동으로 실행해야 합니다.

Claude Desktop 고급 구성

고급 사용자의 경우 추가 매개변수를 전달할 수 있습니다.

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

문제 해결

일반적인 문제:

  • "AnkiConnect에 연결하지 못했습니다" : Anki가 실행 중이고 AnkiConnect 플러그인이 설치되어 있는지 확인하세요.

  • "덱을 찾을 수 없습니다" : Anki에 최소한 하나의 덱이 있는지 확인하세요.

  • Claude가 응답하지 않습니다 . 구성 변경 후 Claude Desktop을 다시 시작하세요.

  • 권한 오류 : npm list -g @arielbk/anki-mcp 사용하여 글로벌 npm 설치가 올바르게 작동하는지 확인하세요.

🤝 기여하기

여러분의 참여를 환영합니다!

  1. 저장소를 포크하세요

  2. 기능 브랜치 생성

  3. 변경 사항을 만드세요

  4. 해당되는 경우 테스트를 추가하세요

  5. 풀 리퀘스트 제출

📜 라이센스

MIT - 자세한 내용은 LICENSE 파일을 참조하세요.

🙏 감사의 말


AI 기반 대화로 플래시카드 경험을 혁신하세요! 🚀

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