1. Conduid
  2. AI
  3. anki-server
MCP server · AI

anki-server

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

Unclaimed ai
39Low

Scored 4 months ago · breakdown

About anki-server

anki-server is an MCP server published by git+nailuoGG in the AI category: a Model Context Protocol (MCP) server that enables LLMs to interact with Anki flashcard software through AnkiConnect. It has been installed 0 times through Conduid.

Install

Install
npx anki-mcp-server
Claude Code
claude mcp add anki-mcp-server-gitnailu -- npx -y anki-mcp-server
npx
npx -y anki-mcp-server

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

Ask AI about anki-server

Powered by Claude · Grounded in docs

I know everything about anki-server. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ·README presentNot checked yet.
  • ·License declaredNot checked yet.
  • ·Tests presentNot checked yet.
  • ·Dependencies pinnedNot checked yet.
  • ·No dynamic code executionNot checked yet.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

README

Anki MCP Server

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

Anki Icon

Features

Tools

  • list_decks - List all available Anki decks
  • create_deck - Create a new Anki deck
  • create_note - Create a new note (Basic or Cloze)
  • batch_create_notes - Create multiple notes at once
  • search_notes - Search for notes using Anki query syntax
  • get_note_info - Get detailed information about a note
  • update_note - Update an existing note
  • delete_note - Delete a note
  • list_note_types - List all available note types
  • create_note_type - Create a new note type
  • get_note_type_info - Get detailed structure of a note type

Resources

  • anki://decks/all - Complete list of available decks
  • anki://note-types/all - List of all available note types
  • anki://note-types/all-with-schemas - Detailed structure information for all note types
  • anki://note-types/{modelName} - Detailed structure information for a specific note type

Prerequisites

  1. Anki installed on your system
  2. AnkiConnect add-on installed in Anki

Configuration

Install via Desktop Extension (.mcpb)

This repository supports Anthropic Desktop Extensions (MCPB). The easiest way to use this server in Claude Desktop is by installing the packaged .mcpb bundle.

  1. Generate the .mcpb file locally using the provided script:
npm run pack
  1. Open Claude Desktop Settings → Extensions and drag the generated .mcpb file in, then click Install.

This validates manifest.json and outputs a .mcpb archive you can install as above. Learn more about Desktop Extensions in Anthropic's announcement: Desktop Extensions: One-click MCP server installation for Claude Desktop.

Usage with Claude Desktop

Add the server to your claude_desktop_config.json:

{
  "mcpServers": {
    "anki": {
      "command": "npx",
      "args": ["--yes", "anki-mcp-server"]
    }
  }
}

Using Custom AnkiConnect Port

If your AnkiConnect is running on a different port, you can specify it using the --port parameter:

{
  "mcpServers": {
    "anki": {
      "command": "npx",
      "args": ["--yes", "anki-mcp-server", "--port", "8080"]
    }
  }
}

Configuration for Cline

Add the server to your Cline MCP settings file inside VSCode's settings cline_mcp_settings.json

{
  "mcpServers": {
    "anki": {
      "command": "npx",
      "args": ["--yes", "anki-mcp-server"]
    }
  }
}

Using Custom AnkiConnect Port

For Cline, you can also specify a custom port:

{
  "mcpServers": {
    "anki": {
      "command": "npx",
      "args": ["--yes", "anki-mcp-server", "--port", "8080"]
    }
  }
}

Agent Skills (Claude Code)

Install the Anki skill to give Claude Code built-in knowledge of all Anki tools and workflows:

npx skills add nailuoGG/anki-mcp-server@anki

Once installed, Claude Code will automatically use the skill when you ask it to create flashcards, manage decks, or batch import notes.

Note: Do not use the .mcpb packaged version as the MCP server — it outputs Electron metadata to stdout which breaks the MCP stdio protocol. Use npx -y anki-mcp-server instead.

Development

Packaging a Desktop Extension (.mcpb)

Create a distributable Desktop Extension bundle for Claude Desktop:

npm run pack

This will build the project and generate a .mcpb archive from the current repository, validating manifest.json. Test by dragging it into Claude Desktop's Extensions settings. Reference: Desktop Extensions: One-click MCP server installation for Claude Desktop.

Publishing to MCP Registry

This server is automatically published to the MCP Registry when a new version is released. The publishing process includes:

  1. Automated CI/CD: GitHub Actions automatically publishes to both NPM and MCP Registry on successful releases
  2. Schema Validation: The server.json file is validated against the MCP schema before publishing
  3. Version Synchronization: Versions are kept in sync between package.json, manifest.json, and server.json
  4. Comprehensive Testing: Multi-version Node.js testing, linting, and validation before publishing
  5. Beta Support: Automated beta releases for testing new features

Manual Validation

You can validate the MCP server configuration locally:

npm run validate-mcp

This will download the latest MCP schema and validate your server.json file.

Manual Publishing

If you need to publish manually, you can use the MCP Publisher CLI:

# Install MCP Publisher
curl -L "https://github.com/modelcontextprotocol/registry/releases/download/v1.1.0/mcp-publisher_1.1.0_$(uname -s | tr '[:upper:]' '[:lower:]')_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz" | tar xz mcp-publisher
chmod +x mcp-publisher
sudo mv mcp-publisher /usr/local/bin/

# Login to MCP Registry
mcp-publisher login github-oidc

# Publish to MCP Registry
mcp-publisher publish

Setup

  1. Install dependencies:
npm install
  1. Build the server:
npm run build
  1. For development with auto-rebuild:
npm run watch

Testing

Run the test suite:

npm test

This executes tests for:

  • Server initialization
  • AnkiConnect communication
  • Note operations (create/read/update/delete)
  • Deck management
  • Error handling

Debugging

Since MCP servers communicate over stdio, we recommend using the MCP Inspector:

npm run inspector

This provides a browser-based interface for:

  • Monitoring MCP messages
  • Testing tool invocations
  • Viewing server logs
  • Debugging communication issues

Example Usage

  1. Create a new deck:
Create a new Anki deck called "Programming"
  1. Add a basic card:
Create an Anki card in the "Programming" deck with:
Front: What is a closure in JavaScript?
Back: A closure is the combination of a function and the lexical environment within which that function was declared.
  1. Add a cloze deletion card:
Create a cloze card in the "Programming" deck with:
Text: In JavaScript, {{c1::const}} declares a block-scoped variable that cannot be {{c2::reassigned}}.

Contributing

  1. Fork the repository
  2. Create your feature branch
  3. Run tests: npm test
  4. Submit a pull request

Star History

Star History Chart

Credits

Icon courtesy of macOS Icons

License

MIT License - see LICENSE file for details

README mirrored from the source repository 4 months ago. The original is authoritative.

Questions

About anki-server

How do I install anki-server?

Run npx anki-mcp-server, then add the server to your MCP client's configuration. Conduid has recorded 0 installs, so the command is known to work with current clients.

Is anki-server safe to use with an AI agent?

Its trust score is 39 out of 100 (low). It passes 0 of 1 static security checks; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is anki-server still maintained?

Conduid hasn't recorded a commit date for this repository yet. Check the repository directly for recent activity.