Clanki - Claude's Anki Integration

Permite que assistentes de IA interajam com baralhos de flashcards do Anki através do plugin AnkiConnect.

Documentação

MseeP.ai Security Assessment Badge License: MIT

Clanki - Claude's Anki Integration

Um servidor MCP que permite que assistentes de IA como o Claude interajam com baralhos de flashcards do Anki através do Model Context Protocol (MCP).

Funcionalidades

  • Criar e gerenciar baralhos do Anki
  • Criar flashcards básicos com conteúdo frente/verso
  • Criar cartões de cloze
  • Atualizar cartões existentes e remoções cloze
  • Adicionar e gerenciar tags
  • Visualizar conteúdos do baralho e informações do cartão
  • Integração completa com o AnkiConnect

Pré-requisitos

  • Anki instalado e em execução
  • Plugin AnkiConnect instalado no Anki
  • Node.js 16 ou superior

Instalação

  1. Clone este repositório:
git clone https://github.com/yourusername/clanki.git
cd clanki
  1. Instale as dependências:
npm install
  1. Compile o projeto:
npm run build

Configuração

  1. Certifique-se de que o Anki está em execução e o plugin AnkiConnect está instalado e habilitado

  2. Configure o Claude for Desktop para usar o servidor editando claude_desktop_config.json:

{
  "mcpServers": {
    "clanki": {
      "command": "node",
      "args": ["/absolute/path/to/clanki/build/index.js"]
    }
  }
}

Substitua /absolute/path/to/clanki pelo caminho real para a sua instalação do clanki.

Ferramentas Disponíveis

create-deck

Cria um novo baralho do Anki

  • Parâmetros:
    • name: Nome para o novo baralho

create-card

Cria um novo flashcard básico em um baralho especificado

  • Parâmetros:
    • deckName: Nome do baralho ao qual adicionar o cartão
    • front: Conteúdo da frente do cartão
    • back: Conteúdo do verso do cartão
    • tags: (Opcional) Array de tags para o cartão

create-cloze-card

Cria um novo cartão de cloze em um baralho especificado

  • Parâmetros:
    • deckName: Nome do baralho ao qual adicionar o cartão
    • text: Texto contendo remoções cloze usando a sintaxe {{c1::text}}
    • backExtra: (Opcional) Informações extras para mostrar no verso do cartão
    • tags: (Opcional) Array de tags para o cartão

update-card

Atualiza um flashcard básico existente

  • Parâmetros:
    • noteId: ID da nota a ser atualizada
    • front: (Opcional) Novo conteúdo da frente
    • back: (Opcional) Novo conteúdo do verso
    • tags: (Opcional) Novas tags para o cartão

update-cloze-card

Atualiza um cartão de cloze existente

  • Parâmetros:
    • noteId: ID da nota a ser atualizada
    • text: (Opcional) Novo texto com remoções cloze
    • backExtra: (Opcional) Novas informações extras para o verso
    • tags: (Opcional) Novas tags para o cartão

Desenvolvimento

Para modificar ou estender o servidor:

  1. Faça alterações em src/index.ts
  2. Recompile com npm run build
  3. Depure com npx @modelcontextprotocol/inspector node build/index.js

Licença

Este projeto está licenciado sob a Licença MIT - consulte o arquivo LICENSE para obter detalhes.

Contribuindo

Contribuições são bem-vindas! Sinta-se à vontade para enviar um Pull Request.

Agradecimentos