AnkiConnect
Servidor MCP AnkiConnect para interagir com o Anki via AnkiConnect.
Documentação
Servidor MCP Anki Connect
Um servidor Model Context Protocol (MCP) que fornece integração perfeita com o Anki através do add-on AnkiConnect. Este servidor permite que assistentes de IA e outros clientes MCP interajam programaticamente com sua coleção de flashcards do Anki.

O que é o Anki Connect?
AnkiConnect é um poderoso add-on do Anki que expõe as funcionalidades do Anki através de uma API REST. Ele permite que aplicações externas:
- Criem, modifiquem e excluam flashcards
- Gerenciem baralhos e suas configurações
- Controlem a interface gráfica do Anki programaticamente
- Pesquisem e recuperem informações de cartões
- Gerenciem tags e tipos de notas
- Realizem operações em lote em cartões e notas
O que é MCP (Model Context Protocol)?
O Model Context Protocol é uma forma padronizada de assistentes de IA se conectarem a fontes de dados e ferramentas externas. Este servidor MCP atua como uma ponte entre clientes MCP (como o Claude Desktop) e o AnkiConnect, permitindo que assistentes de IA ajudem você a gerenciar seus flashcards do Anki naturalmente através de conversa.
Recursos
Este servidor MCP fornece acesso abrangente às funcionalidades do AnkiConnect através das seguintes ferramentas:
Gerenciamento de Flashcards
create_flashcard()- Crie novos flashcards com conteúdo de frente e versoadd_note()- Adicione notas com campos e tags personalizadosadd_notes()- Adicione múltiplas notas em loteupdate_note_fields()- Atualize campos de notas existentesfind_notes()- Pesquise notas usando a sintaxe de consulta do Anki
Gerenciamento de Baralhos
deck_names()- Obtenha todos os nomes de baralhosdeck_names_and_ids()- Obtenha nomes de baralhos com seus IDschange_deck()- Mova cartões entre baralhosdelete_decks()- Exclua baralhos e opcionalmente seus cartõesget_deck_config()- Recupere configurações de baralhos
Operações com Cartões
find_cards()- Pesquise cartõescards_info()- Obtenha informações detalhadas de cartõessuspend()/unsuspend()- Suspenda/ative cartõesare_suspended()/are_due()- Verifique o status dos cartões
Controle da Interface Gráfica
gui_deck_browser()- Abra o navegador de baralhosgui_deck_review()- Inicie a revisão de baralhosgui_browse()- Abra o navegador de cartões com pesquisagui_add_cards()- Abra o diálogo de adicionar cartões
Ferramentas Utilitárias
version()- Obtenha a versão do AnkiConnectget_tags()- Recupere todas as tagsmulti()- Execute múltiplas requisições AnkiConnect em lote
Pré-requisitos
1. Instale o Add-on AnkiConnect
- Abra o Anki
- Vá em Ferramentas → Add-ons
- Clique em Obter Add-ons...
- Digite o código:
2055492159 - Clique em OK e reinicie o Anki
2. Configure o AnkiConnect (Opcional)
O AnkiConnect funciona imediatamente, mas você pode personalizar suas configurações:
- Vá em Ferramentas → Add-ons
- Selecione AnkiConnect e clique em Config
- Modifique as configurações se necessário (a porta padrão é 8765)
- Reinicie o Anki após fazer alterações
Instalação
- Clone este repositório:
git clone https://github.com/spacholski1225/anki-connect-mcp.git
cd anki-connect-mcp
- Instale as dependências:
npm install
- Compile o projeto:
npm run build
Configuração do Cliente MCP
Claude Desktop
Para usar este servidor MCP com o Claude Desktop, adicione a seguinte configuração ao seu arquivo de configurações MCP:
Localização do arquivo de configuração MCP:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Opções de Configuração:
Opção 1: Usando Node.js (Instalação Local)
{
"mcpServers": {
"anki-connect-mcp": {
"command": "node",
"args": [
"dist/index.js"
],
"env": {},
"disabled": false,
"alwaysAllow": [
"deck_names",
"cards_info",
"deck_names_and_ids",
"gui_deck_browser"
]
}
}
}
Opção 2: Usando npx (Pacote NPM)
Em seguida, configure seu cliente MCP:
{
"mcpServers": {
"anki-connect": {
"command": "npx",
"args": [
"@spacholski1225/anki-connect-mcp"
],
"env": {},
"disabled": false,
"alwaysAllow": [
"deck_names",
"cards_info",
"deck_names_and_ids",
"gui_deck_browser"
]
}
}
}
Opção 3: Usando Docker
{
"mcpServers": {
"anki-connect": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"--network=host",
"-e", "ANKI_CONNECT_URL=http://host.docker.internal:8765",
"spacholski/anki-connect-mcp:latest"
],
"env": {},
"disabled": false,
"alwaysAllow": [
"deck_names",
"cards_info",
"deck_names_and_ids",
"gui_deck_browser"
]
}
}
}
Configuração Específica do AnkiConnect para Docker:
Ao usar a opção Docker, você deve configurar o AnkiConnect com configurações específicas para permitir o acesso do contêiner Docker:
- Vá em Ferramentas → Add-ons no Anki
- Selecione AnkiConnect e clique em Config
- Atualize a configuração com as seguintes configurações:
{
"apiKey": null,
"apiLogPath": null,
"ignoreOriginList": [],
"webBindAddress": "0.0.0.0",
"webBindPort": 8765,
"webCorsOriginList": [
"http://localhost",
"http://host.docker.internal",
"http://host.docker.internal:3000"
]
}
Pontos-chave da Configuração Docker:
webBindAddress: "0.0.0.0"- Permite que o AnkiConnect aceite conexões de qualquer endereço IP (necessário para contêineres Docker)webCorsOriginList- Deve incluir"http://host.docker.internal"e origens relacionadas para permitir requisições de origens cruzadas de contêineres Docker- Reinicie o Anki após fazer essas alterações de configuração
Notas Importantes:
- Para a opção Node.js: Substitua o caminho em
argspelo caminho real do seu arquivoindex.jscompilado - Para a opção npx: Usa o pacote NPM publicado
@spacholski1225/anki-connect-mcp- nenhuma instalação local é necessária - Para a opção Docker: Usa a imagem Docker pré-compilada
spacholski/anki-connect-mcp:latest - O array
alwaysAllowcontém ferramentas que não exigirão confirmação a cada vez - Certifique-se de que o Anki esteja rodando com o AnkiConnect habilitado antes de usar o servidor MCP
- Para a opção Docker, a flag
--network=hostpermite que o contêiner acesse o AnkiConnect na máquina host
Exemplos de Uso
Uma vez configurado com um cliente MCP como o Claude Desktop, você pode interagir com sua coleção do Anki naturalmente:
- "Crie um flashcard sobre a capital da França"
- "Mostre-me todos os nomes dos meus baralhos"
- "Encontre todos os cartões com a tag 'vocabulário'"
- "Suspenda todos os cartões no baralho 'Palavras Difíceis'"
- "Abra o navegador de baralhos no Anki"
Solução de Problemas
Problemas Comuns
- Conexão recusada: Certifique-se de que o Anki está rodando e o AnkiConnect está instalado
- Conflitos de porta: Verifique se a porta 8765 está disponível ou configure o AnkiConnect para usar uma porta diferente
- Erros de permissão: Garanta que o servidor MCP tenha as permissões adequadas do sistema de arquivos
- Ferramenta não encontrada: Verifique a configuração do cliente MCP e reinicie o cliente
Contribuindo
Contribuições são bem-vindas! Sinta-se à vontade para enviar issues, solicitações de recursos ou pull requests.
Licença
Licença ISC