Anki

by ethangillani

1 stars
77 downloads
Not rated
GitHub

About

Enables AI models to interact directly with Anki flashcard software through the AnkiConnect API, providing tools to create, search, and manage decks and notes for learners and educators.

Details

Author
ethangillani
Repository
ethangillani/Anki-MCP-Server
GitHub stars
1
Downloads
77
License
MIT License
Categories
Productivity, AI, Design, Search, Infrastructure, Automation, API, Frontend, Other

- 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

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Anki
    Command (node, npx, python, etc.) npx
    Arguments
    • Argument 1 -y
    • Argument 2 @highlight/mcp-server

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

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)

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.

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

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "anki": {
            "env": {},
            "args": [
                "-y",
                "@highlight/mcp-server"
            ],
            "command": "npx"
        }
    }
}

Linux

{
    "env": [],
    "args": [
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "npx"
}

Macos

{
    "env": [],
    "args": [
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "npx"
}

Windows

{
    "env": [],
    "args": [
        "/c",
        "npx",
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "cmd"
}

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

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.