ethangillani_anki_mcp_server

ethangillani_anki_mcp_server

by ethangillani
Enables large language models to create and manage Anki flashcards through the AnkiConnect API.

Anki Flashcard Management via 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
  2. Install AnkiConnect by going to Tools > Add-ons > Get Add-ons and entering code: 2055492159
  3. Clone this repository:
    bash git clone https://github.com/yourusername/anki-mcp-server.git cd anki-mcp-server
  4. Install dependencies:
    bash npm install
  5. Build the project:
    bash npm run build

Usage

  1. Make sure Anki is running on your computer with AnkiConnect enabled
  2. Start the MCP server:
    bash 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
  2. Make sure Anki is running
  3. Check that AnkiConnect add-on is installed and working
  4. Verify that the AnkiConnect URL is correct (default: http://localhost:8765)
  5. Permission issues with AnkiConnect
  6. AnkiConnect may prompt for permission when the server tries to add cards. Look for a popup in Anki.

License

MIT License

About

Anki MCP Server to allow LLMs to create and manage Anki decks via Anki Connect

Resources

Readme

License

MIT license

Activity

Stars

1 star

Watchers

1 watching

Forks

1 fork

Report repository

Releases


No releases published

Packages 0


No packages published

Languages

Features & Capabilities

Categories
mcp_server model_context_protocol javascript anki anki_connect api_integration claude llm

Implementation Details

Stats

0 Views
1 GitHub Stars

Repository Info

ethangillani Organization

Similar MCP Servers

continuedev_continue by continuedev
25049
21423
9300