{
  "name": "anki",
  "display_name": "Anki",
  "description": "An MCP server for interacting with your [Anki](https://apps.ankiweb.net/) decks and cards.",
  "repository": {
    "type": "git",
    "url": "https://github.com/scorzeth/anki-mcp-server"
  },
  "homepage": "https://github.com/scorzeth/anki-mcp-server",
  "author": {
    "name": "scorzeth"
  },
  "license": "MIT",
  "categories": [
    "Knowledge Base"
  ],
  "tags": [
    "Anki",
    "Cards",
    "Review"
  ],
  "installations": {
    "npm": {
      "type": "npm",
      "command": "npx",
      "args": [
        "-y",
        "https://github.com/scorzeth/anki-mcp-server"
      ],
      "description": "Run with npx (requires npm install)"
    }
  },
  "tools": [
    {
      "name": "update_cards",
      "description": "After the user answers cards you've quizzed them on, use this tool to mark them answered and update their ease",
      "inputSchema": {
        "type": "object",
        "properties": {
          "answers": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "cardId": {
                  "type": "number",
                  "description": "Id of the card to answer"
                },
                "ease": {
                  "type": "number",
                  "description": "Ease of the card between 1 (Again) and 4 (Easy)"
                }
              }
            }
          }
        }
      }
    },
    {
      "name": "add_card",
      "description": "Create a new flashcard in Anki for the user. Must use HTML formatting only. IMPORTANT FORMATTING RULES:\n1. Must use HTML tags for ALL formatting - NO markdown\n2. Use <br> for ALL line breaks\n3. For code blocks, use <pre> with inline CSS styling\n4. Example formatting:\n   - Line breaks: <br>\n   - Code: <pre style=\"background-color: transparent; padding: 10px; border-radius: 5px;\">\n   - Lists: <ol> and <li> tags\n   - Bold: <strong>\n   - Italic: <em>",
      "inputSchema": {
        "type": "object",
        "properties": {
          "front": {
            "type": "string",
            "description": "The front of the card. Must use HTML formatting only."
          },
          "back": {
            "type": "string",
            "description": "The back of the card. Must use HTML formatting only."
          }
        },
        "required": [
          "front",
          "back"
        ]
      }
    },
    {
      "name": "get_due_cards",
      "description": "Returns a given number (num) of cards due for review.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "num": {
            "type": "number",
            "description": "Number of due cards to get"
          }
        },
        "required": [
          "num"
        ]
      }
    },
    {
      "name": "get_new_cards",
      "description": "Returns a given number (num) of new and unseen cards.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "num": {
            "type": "number",
            "description": "Number of new cards to get"
          }
        },
        "required": [
          "num"
        ]
      }
    }
  ]
}