Anki MCP Server

by ethangillani

Integrations

  • Enables interaction with Anki flashcard software through the AnkiConnect API, allowing creation of decks, adding notes, listing decks and models, searching notes, and retrieving detailed information about note models and their fields.

  • Serves as the runtime environment for the MCP server, with the README specifying Node.js version 14 or later as a prerequisite.

Anki MCP Server

A Model Context Protocol (MCP) server that enables LLMs to interact with Anki flashcard software through the AnkiConnect API.

Features

  • Create new decks in Anki
  • Add notes to existing decks
  • List available decks and note models
  • Search for notes using Anki's search syntax
  • Get detailed information about note models and their fields
  • Bulk add multiple notes at once

Prerequisites

  • Node.js (v14 or later)
  • Anki with the AnkiConnect add-on installed
  • A Model Context Protocol compatible client (such as Claude with Anthropic MCP support)

Installation

  1. Make sure you have Anki installed with the AnkiConnect add-on
    • Install AnkiConnect by going to Tools > Add-ons > Get Add-ons and entering code: 2055492159
  2. Clone this repository:
    git clone https://github.com/yourusername/anki-mcp-server.git cd anki-mcp-server
  3. Install dependencies:
    npm install
  4. Build the project:
    npm run build

Usage

  1. Make sure Anki is running on your computer with AnkiConnect enabled
  2. Start the MCP server:
    npm start
  3. Connect your MCP client (e.g., Claude) to this server

Available Tools

The server provides the following tools to MCP clients:

  • listDecks: Get a list of all decks in Anki
  • listModels: Get a list of all note models/types in Anki
  • createDeck: Create a new deck in Anki
  • getModel: Get details about a specific note model/type
  • addNote: Add a single note to a deck
  • addNotes: Add multiple notes at once
  • searchNotes: Search for notes using Anki's search syntax

Examples

Create a New Deck

{ "name": "createDeck", "arguments": { "name": "My New Deck" } }

Add a Note

{ "name": "addNote", "arguments": { "deckName": "My New Deck", "modelName": "Basic", "fields": { "Front": "What is the capital of France?", "Back": "Paris" }, "tags": ["geography", "europe"] } }

Search Notes

{ "name": "searchNotes", "arguments": { "query": "deck:\"My New Deck\" tag:geography" } }

Configuration

The server configuration is in the config object in src/index.ts. You can modify:

  • ankiConnectUrl: URL for the AnkiConnect API (default: http://localhost:8765)
  • apiVersion: API version for AnkiConnect (default: 6)
  • defaultDeckName: Default deck to use if none specified (default: Default)

Troubleshooting

  1. Cannot connect to Anki
    • Make sure Anki is running
    • Check that AnkiConnect add-on is installed and working
    • Verify that the AnkiConnect URL is correct (default: http://localhost:8765)
  2. Permission issues with AnkiConnect
    • AnkiConnect may prompt for permission when the server tries to add cards. Look for a popup in Anki.

License

MIT License

-
security - not tested
A
license - permissive license
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

A Model Context Protocol server that allows LLMs to interact with Anki flashcard software, enabling functions like creating decks, adding notes, searching cards, and managing flashcard content through natural language.

  1. Features
    1. Prerequisites
      1. Installation
        1. Usage
          1. Available Tools
            1. Examples
              1. Create a New Deck
              2. Add a Note
              3. Search Notes
            2. Configuration
              1. Troubleshooting
                1. License

                  Related MCP Servers

                  • A
                    security
                    A
                    license
                    A
                    quality
                    A Model Context Protocol server that enables LLMs to interact with Salesforce data through SOQL queries, SOSL searches, and various API operations including record management.
                    Last updated -
                    10
                    53
                    Python
                    MIT License
                  • A
                    security
                    A
                    license
                    A
                    quality
                    A Model Context Protocol server that gives LLMs the ability to interact with Ethereum networks, manage wallets, query blockchain data, and execute smart contract operations through a standardized interface.
                    Last updated -
                    31
                    323
                    2
                    TypeScript
                    MIT License
                  • A
                    security
                    F
                    license
                    A
                    quality
                    A Model Context Protocol server that enables LLMs to interact with Anki flashcard software through AnkiConnect, allowing for creation and management of flashcards, decks, and note types.
                    Last updated -
                    10
                    131
                    22
                    TypeScript
                    • Apple
                  • A
                    security
                    A
                    license
                    A
                    quality
                    A Model Context Protocol server that enables LLMs to interact with web pages, take screenshots, generate test code, scrape web pages, and execute JavaScript in a real browser environment.
                    Last updated -
                    29
                    10
                    1
                    TypeScript
                    MIT License

                  View all related MCP servers

                  ID: utfwl3q3xh