anki-mcp-addon: Instructions file for Codex

AGENTS.md

anki-mcp-addon AGENTS.md is an instructions file for Codex, OpenCode from luiz-santos-it/anki-mcp-addon. It costs 1,439 tokens per session, scanned A, original, MIT.

A Python Anki add-on that exposes Anki’s note, deck, study, tagging, sync, and retention tools to an agent through MCP. Anki is a flashcard program used for spaced-repetition study.

In plain words
What is it for?
Creating, finding, changing, moving, and tagging notes; managing decks; handling due cards and study answers; and viewing retention statistics. It also includes setup helpers for Claude Code and Claude Desktop.
Why use it?
It lets an agent work with Anki through its internal APIs and a local server, without requiring extra external dependencies.

Instructions file for CodexOpenCode

Written for Codex and OpenCode: the file is AGENTS.md. Also seen: mentions Claude Code.

This is luiz-santos-it/anki-mcp-addon's own configuration. It tells Codex and OpenCode how to work on anki-mcp-addon itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything anki-mcp-addon configures →

Reuse

Borrowing it

Nothing to install: this file belongs to luiz-santos-it/anki-mcp-addon. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/luiz-santos-it/anki-mcp-addon/master/AGENTS.md
Clone the repo
git clone --depth 1 https://github.com/luiz-santos-it/anki-mcp-addon

Made for: Codex, OpenCode.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for anki-mcp-addon AGENTS.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/luiz-santos-it/anki-mcp-addon/agents-md/github.svg)](https://agentmods.dev/instructions/luiz-santos-it/anki-mcp-addon/agents-md)
Your own site
<a href="https://agentmods.dev/instructions/luiz-santos-it/anki-mcp-addon/agents-md"><img src="https://agentmods.dev/badge/instructions/luiz-santos-it/anki-mcp-addon/agents-md/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for anki-mcp-addon AGENTS.md

Your own site · 80×15
<a href="https://agentmods.dev/instructions/luiz-santos-it/anki-mcp-addon/agents-md"><img src="https://agentmods.dev/badge/instructions/luiz-santos-it/anki-mcp-addon/agents-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 1,439 This file is loaded in full into every session.
When invoked 1,439 The same file — it is already loaded in full.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.01439 $0.01439
Opus 5 $0.00720 $0.00720
Sonnet 5 $0.00288 $0.00288
Haiku 4.5 $0.00144 $0.00144

Measured 8d ago against content hash 293f26102681, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-09, from the pricing page.

Security

Grade A, and why

anki-mcp-addon AGENTS.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

Copies of this mod

1 near-identical copy found in the catalogue:

AGENTS.md · 71 lines

How it starts

The opening of the file, as written. The whole thing — 71 lines — stays where its author put it; the contents beside it link to each section on GitHub.

anki-mcp-addon

Python Anki add-on that exposes Anki as MCP tools via an in-process SSE server. Zero external deps; calls Anki's internal Python APIs directly.

Commands

pytest              # run all tests (no Anki required)
pytest -x           # stop on first failure
pytest tests/test_notes.py  # single file

Architecture

__init__.py    ← Anki entry point: registers tools, starts server, wires config UI/hooks
config_ui.py   ← Qt settings dialog: Server tab (port/status/restart) + Client Setup tab
                 (one-click Claude Code/Desktop connection helpers + .mcpb export)
client_setup.py ← pure port→command/JSON/URL string builders + .mcpb copy; no Qt/Anki
                 imports, tested directly without mocking aqt.qt
protocol.py    ← JSON-RPC 2.0 + MCP dispatch; tool registry (_tools dict)
server.py      ← ThreadingHTTPServer; GET /sse (SSE stream), POST /messages
tools/
  notes.py     ← 7 tools: create/search/update/delete/move notes + tag management
  decks.py     ← 3 tools: create/list/delete decks
  study.py     ← 5 tools: get_due_cards, submit_answer, reschedule, suspend, forget
  insights.py  ← 1 tool: retention stats via direct SQL (mw.col.db)
  sync.py      ← 1 tool: trigger AnkiWeb sync
  search.py    ← shared deck-name quoting for Anki search syntax
tests/
  conftest.py  ← fakes aqt/anki via sys.modules before any imports
desktop-extension/    ← Claude Desktop .mcpb SOURCE (manifest.json + server/index.js, runs a
                         bundled mcp-remote IN-PROCESS via dynamic import); packed via `mcpb pack`
desktop-extension.mcpb ← pre-built, tracked binary — the actual file client_setup.py's
                         export_mcpb() copies; rebuild+commit whenever the source above changes
scripts/build_ankiaddon.py ← builds the AnkiWeb .ankiaddon zip; must include client_setup.py
                              and desktop-extension.mcpb alongside the other runtime files

Key conventions

  • Thread safety: tool functions call mw.col directly; server.py routes all tool execution to the Qt main thread via mw.taskman.run_on_main() + concurrent.futures.Future.
  • No auth, Origin check instead: server.py rejects any request carrying an Origin header — only browsers send one, no legitimate MCP client does. This is the CSRF defense (there's no other auth), don't add CORS headers back.
  • Server lifecycle: server.stop() must call both shutdown() and server_close(), or the port stays bound and a same-port restart fails.
  • Benign connection errors: _MCPServer.handle_error() and the except _BENIGN_CONNECTION_ERRORS in _handle_sse both swallow BrokenPipeError/ConnectionResetError/ConnectionAbortedError — a client disconnecting mid-transport-negotiation is routine (confirmed with real Claude Desktop/mcp-remote traffic), not a bug worth a traceback in Anki's console.
  • Scheduler compat: study.py checks mw.col.v3_scheduler() and branches between v3 answer_card(CardAnswer(...)) and legacy answerCard(card, ease).
  • v3 state cache: _queued_states in study.py maps card_id → QueuedCard. Populated by get_due_cards (merged, not cleared, so concurrent decks don't clobber each other), consumed by submit_answer, and dropped via reset_queue() on profile open so stale state from a previous collection can't leak in.
  • Deck-name escaping: build search queries with tools/search.py:quote_deck(), never raw f-string interpolation — deck names can contain ".
  • SQL in insights: mw.col.db.all(sql, *args) — positional params, not list.
  • No external deps: stdlib only (http.server, threading, queue, json, uuid, concurrent.futures).

Read the full file on GitHub · 71 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 8d ago First seen · 71 lines · 1,439 tokens per session scan A 293f26102681

Subscribe to this mod's changes

anki-mcp-addon AGENTS.md is an instructions file published in the GitHub repository luiz-santos-it/anki-mcp-addon (1 stars, last pushed 1mo ago), licensed MIT. It adds 1,439 tokens to every session, about $0.0072 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other instructions, from other repositories

next.js AGENTS.md

AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.

vercel/next.js · 7,296 tokens

codex AGENTS.md

AGENTS.md instructions for openai/codex, covering rust/codex-rs, the codex-core crate, code review rules, crate api surface and model visible context.

openai/codex · 5,153 tokens

vscode buildNext.instructions.md

Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).

microsoft/vscode · 6,785 tokens

vscode oss-third-party-notices.instructions.md

Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, applying the notice (cutover) and fallback chain (never fail the build).

microsoft/vscode · 5,001 tokens

langchain AGENTS.md

AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.

langchain-ai/langchain · 4,469 tokens

deepseek-harness AGENTS.md

AGENTS.md instructions for deepseek-ai/deepseek-harness, covering agents.md, pre-stable apis and released session data, repository layout, commands and host sandbox failures.

deepseek-ai/deepseek-harness · 3,735 tokens