Anki Flashcard MCP

Anki Flashcard MCP

Enables large language models like Claude to automatically generate flashcards and sync them with Anki decks via a Dockerized MCP server using the AnkiConnect add-on.

Category
Visit Server

README

Anki Flashcard MCP Server 🃏

Project Overview 🚀

This project provides a Dockerized Model Context Protocol (MCP) server specifically designed to work with the Anki desktop application. By leveraging the anki-flashcard-mcp server, you can use a large language model (LLM), such as Claude, to automatically generate flashcards and sync them with your Anki decks.

Prerequisites ✅

Before you get started, please make sure you have the following installed:

  • Docker: The containerization platform. 🐳
  • uv: A fast Python package installer and bundler (recommended for development).
  • AnkiConnect Add-on: This Anki add-on is required to allow the server to communicate with your Anki application. In Anki, go to Tools > Add-ons > Get Add-ons... and enter the code 2055492159.
  • Anki Desktop: The Anki application must be open and running for the server to work. 💡

Development Setup (Optional) ⚙️

If you plan to develop or modify the server, you can set it up locally using uv.

  1. Initialize the project:
uvx create-mcp-server anki-flashcard-mcp
cd anki-flashcard-mcp
  1. Install dependencies and run the server:
uv sync --dev --all-extras
uv run my-server

Running with Docker 📦

This is the recommended way to use the server.

  1. Build the Docker image:
docker build -t anki-flashcard-mcp .

This command builds the Docker image and tags it as anki-flashcard-mcp.

  1. Test the server (optional): You can test the container using the MCP inspector tool to ensure it's running correctly.
npx @modelcontextprotocol/inspector docker run -i --rm --init -e DOCKER_CONTAINER=true anki-flashcard-mcp

This command will run the inspector, which lets you test prompts and tools to verify the container's output.

Using with the Claude App 🤖

Follow these steps to integrate the Dockerized server with the Claude desktop application.

  1. Enable Docker access for Claude: Sometimes, Claude doesn't have the necessary shell environment variables to access Docker. Run the following command in your terminal to fix this:
launchctl setenv PATH "$PATH"
  1. Configure Claude Desktop:
    • Open the Claude app and navigate to Settings > Developer.
    • Find the Local MCP Servers section and click Edit Config.
    • This will open claude_desktop_config.json. Add the following configuration to the JSON file:
{
  "mcpServers": {
    "anki-flashcard-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "--init",
        "-e",
        "DOCKER_CONTAINER=true",
        "anki-flashcard-mcp"
      ]
    }
  }
}
  1. Troubleshooting - Wrapper Script (if direct config fails): ⚠️ If the direct configuration doesn't work, you can use a shell script as a stable entry point.
    • Create a new script file, for example: /Users/cademaxwell/.scripts/run-anki-docker.sh
#!/bin/bash
exec /usr/local/bin/docker run -i --rm --init -e DOCKER_CONTAINER=true anki-flashcard-mcp
  • Make the script executable:
chmod +x ~/.scripts/run-anki-docker.sh
  • Note: Replace /usr/local/bin/docker with the actual path to your Docker executable (you can find this by running which docker).
  • Update the claude_desktop_config.json to point to the new script:
{
  "mcpServers": {
    "anki-flashcard-mcp": {
      "command": "/Users/cademaxwell/.scripts/run-anki-docker.sh"
    }
  }
}

Your Dockerized MCP server is now ready to be used by Claude! Each time you open the Claude desktop app, a new Docker container will start for the anki-flashcard-mcp image.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured