anki-workflow-mcp
# anki-workflow-mcp
[](https://github.com/Gugart43/anki-workflow-mcp-public/actions/workflows/ci.yml)
Servidor MCP para validar, compilar e registrar flashcards Anki: **o LLM escreve; o servidor verifica estrutura, conta e registra**. Compatível com os campos QA/Cloze e as convenções de apresentação AnkiMBR; templates, mídia e coleções não são distribuídos aqui.
## Recursos
- Validação CSV, Cloze, hints, QA, notas, imagens, tabelas, taxonomia e referências cruzadas.
- Manifesto transacional, registro de IDs, recibos de conteúdo e exportação com locks e recuperação de falhas.
- Catálogos de mídia, namespacing e sincronização para destino explicitamente configurado.
- Perfis descritivos que separam contexto, recuperação obrigatória e explicação opcional; não certificam correção clínica ou qualidade pedagógica.
- Triagem determinística e integração opcional com provedores externos, somente quando configurados.
## Instalação
Requer Python 3.12–3.14; CI em Python 3.13. Instale o [uv](https://docs.astral.sh/uv/) e execute:
```bash
uv tool install --python 3.13 "git+https://github.com/Gugart43/anki-workflow-mcp-public.git"
anki-workflow-mcp
```
O comando inicia o transporte stdio; configure seu cliente MCP para executar `anki-workflow-mcp`. Evite mensagens próprias em stdout, reservado ao protocolo. A branch pode evoluir; para instalação reproduzível, fixe um SHA revisado em vez da branch.
## Desenvolvimento
```bash
git clone https://github.com/Gugart43/anki-workflow-mcp-public.git
cd anki-workflow-mcp-public
uv sync --extra dev --frozen
uv run ruff check src tests
uv run ruff format --check src tests
uv run pytest --cov=anki_mcp --cov-fail-under=70
uv run --with mypy mypy src --ignore-missing-imports
```
## Organização
```text
.github/workflows/ CI Linux e Windows
src/anki_mcp/ servidor, modelos, checks, estado e ferramentas MCP
tests/ testes de regressão, sem datasets ou coleções pessoais
docs/ arquitetura, segurança e limites dos perfis
```
- [Arquitetura](docs/architecture.md)
- [Configuração e privacidade](docs/configuration.md)
- [Quantidade de informação](docs/information-quality.md)
- [Contribuição](CONTRIBUTING.md) · [Segurança](SECURITY.md) · [Licença MIT](LICENSE)
## Escopo público
Esta distribuição começa com histórico novo. Não inclui estudos privados, corpus, exports, logs, backups, templates extraídos, dados de Anki ou configurações de infraestrutura. Exemplos/testes são demonstrações técnicas, não recomendações médicas. Uma revisão de segurança reduz riscos, mas não oferece garantia absoluta. Não use dados de pacientes para testes ou envie conteúdo confidencial a provedores externos.
TDQS
Scored across 49 tools
Several clusters have overlapping boundaries: validate_batch, review_batch, pipeline_gate_check and validate_csv_structure all appear to run the same validation suite over CSVs, while topic_budget_plan, topic_triage_calibrate and manifesto_plan_set all compute a card budget plan. Sanitization/compilation is similarly split across csv_build_row, sanitize_card_field, batch_auto_fix and cards_compile_drafts, and card_patch_apply vs batch_patch_draft, manifesto_commit vs export_final require careful reading to distinguish.
All names are snake_case and human-readable, but the ordering convention is mixed: verb_noun (validate_cloze, cards_compile_drafts, build-style csv_build_row) coexists with noun_first (corpus_coverage, topic_budget_plan, image_sync, deck_audit, card_quarantine). The inconsistency is not fatal but makes prefix-based grouping unreliable.
49 tools is far above a comfortable surface for an agent to select from reliably, and the count is inflated by near-duplicate validators and budget planners. The domain is genuinely multi-stage, but a tighter set of aggregate tools plus narrower ones would serve better.
The surface is unusually complete for its domain: corpus ingestion and triage, manifesto lifecycle, field-level and batch validation, compilation, image catalog/sync, deck hierarchy management, gated pipeline advancement and transactional export. Only minor gaps exist, such as no batch enumeration/rollback or card-preview tool separate from the validators.