{"id":"nailuogg-anki-mcp-server","name":"anki-mcp-server","homepage":null,"repo_url":"https://github.com/nailuoGG/anki-mcp-server","category":"ai-ml","subcategories":[],"tags":["mcp","anki","anki-connect","flashcards","automation","agent-tools","typescript"],"what_it_does":"An MCP server that lets LLMs interact with local Anki flashcards by calling AnkiConnect-style operations (decks, note types, CRUD for notes, search, and related metadata) via MCP tools and resources.","use_cases":["Generate and insert new flashcards into specific Anki decks","Batch creation of notes from structured content","Search and retrieve existing notes for review/update","Inspect and manage Anki note types and schemas","Automate deck and note-type setup from an agent"],"not_for":["Hosted/remote Anki access over the internet (appears designed for local AnkiConnect)","Use cases requiring robust authorization or multi-tenant security boundaries","High-integrity workflows where silent failures or partial updates are unacceptable"],"best_when":"You run Anki + AnkiConnect locally and want an agent-driven workflow (via MCP/stdio) to create and manage flashcards.","avoid_when":"You need authenticated multi-user remote access, webhooks, or a public API surface with strong governance and quota controls.","alternatives":["Direct use of AnkiConnect API calls from your own client","Other MCP servers/wrappers for Anki functionality (if available)","Automating Anki via scripting (e.g., AnkiConnect client libraries)"],"af_score":61.8,"security_score":33.2,"reliability_score":31.2,"package_type":"mcp_server","discovery_source":["github"],"priority":"high","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-03-30T13:36:18.320551+00:00","interface":{"has_rest_api":false,"has_graphql":false,"has_grpc":false,"has_mcp_server":true,"mcp_server_url":null,"has_sdk":true,"sdk_languages":["TypeScript"],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":["None documented (relies on local AnkiConnect/desktop environment)"],"oauth":false,"scopes":false,"notes":"Authentication/authorization for the MCP server itself is not described; access is presumably limited by the local AnkiConnect setup and the user running the server."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"No pricing information provided; as an MCP server wrapping local AnkiConnect, costs are likely incidental (hosting/compute and Anki installation)."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":61.8,"security_score":33.2,"reliability_score":31.2,"mcp_server_quality":80.0,"documentation_accuracy":75.0,"error_message_quality":0.0,"error_message_notes":null,"auth_complexity":95.0,"rate_limit_clarity":10.0,"tls_enforcement":30.0,"auth_strength":20.0,"scope_granularity":10.0,"dependency_hygiene":55.0,"secret_handling":60.0,"security_notes":"Security posture is primarily local-tooling oriented: no auth/scopes are documented at the MCP layer, and TLS is not discussed (communication to AnkiConnect may be local/HTTP depending on AnkiConnect). This increases risk if AnkiConnect is exposed beyond localhost or if other local users can invoke the server. Ensure AnkiConnect is restricted to trusted local access, and treat note content as sensitive since tool calls can move data into/out of your Anki database.","uptime_documented":0.0,"version_stability":45.0,"breaking_changes_history":40.0,"error_recovery":40.0,"idempotency_support":"false","idempotency_notes":"CRUD tools for notes/decks likely map to AnkiConnect calls; no idempotency guarantees are described.","pagination_style":"none","retry_guidance_documented":false,"known_agent_gotchas":["Operations are destructive by nature (delete/update); agents should confirm targets before mutating.","Search/update accuracy depends on correct Anki query syntax and existing note field names.","AnkiConnect configuration/port must be reachable from the server process."]}}