Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/sharpninja/mcpserver/mcp-todonpx skills add sharpninja/McpServer --skill mcp-todogit clone --depth 1 https://github.com/sharpninja/McpServerWhat 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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00062 | $0.01865 |
| Opus 5 | $0.00031 | $0.00932 |
| Sonnet 5 | $0.00012 | $0.00373 |
| Haiku 4.5 | $0.00006 | $0.00186 |
Grade A, and why
mcp-todo 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 2d 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.
How it starts
The opening of the file, as written. The whole thing — 142 lines — stays where its author put it; the contents beside it link to each section on GitHub.
MCP Server TODO Management
This skill teaches an agent to query and mutate MCP Server TODO items through the
plugin (workflow.todo.*) instead of touching storage files. In this workspace,
"TODO" always means an MCP Server TODO item: not Claude Code's in-session task
list, not a markdown checklist, and not a GitHub issue list.
When to Use
- The user says: "list todos", "open TODOs", "create a todo", "update todo", "mark todo done", "check todo status", "plan implementation", "query tasks".
- You need the current TODO backlog, a single TODO by id, or to record progress on an item you are implementing.
- You discover work that must be tracked as a persisted TODO.
When Not to Use
- Tracking ephemeral, in-session steps for yourself: use the harness task list, not MCP TODOs.
- Session logging, requirements (FR/TR), or GraphRAG operations: those are
separate plugin surfaces (
workflow.sessionlog.*, requirements docs, GraphRAG), notworkflow.todo.*. - Any time the only goal is to read
docs/Project/TODO.yaml"quickly". That is still forbidden; useworkflow.todo.query/workflow.todo.get.
Inputs
- A TODO
idfor get/select/update/delete (canonical format, see Critical Rules). - For query: optional filters
keyword,priority(critical|high|medium|low),section, anddone(boolean). - For create: required
id,title,section,priority; optionalestimate,description(string array),technicalDetails,implementationTasks({task, done}),note,remaining,dependsOn,functionalRequirements,technicalRequirements. - For update:
idplus only the fields you want to change (same shape as create, plusdone,completedDate,doneSummary).
Critical Rules
- NEVER read or write
TODO.yaml,docs/Project/TODO.yaml, or any TODO storage file directly with Read, Edit, Write, Grep, or shellcat. The plugin is the only allowed interface. A "quick lookup" is still a violation. - Route every operation through the Claude Code plugin
(
mcpserver-claude-code-plugin) usingworkflow.todo.*methods. "Not in the visible tool list" does not mean unavailable; use the documented wrapper form. - Persisted TODO ids must match
^[A-Z][A-Z0-9]*(?:-[A-Z0-9]+)+-\d{3}$(uppercase kebab-case, three-digit suffix) or^ISSUE-\d+$. Valid:PLAN-NAMINGCONVENTIONS-001,MCP-TODO-CREATE-001,ISSUE-17. Invalid:plan-api-001,MCP-API-42,MCP-001,ISSUE-ABC. - To create a GitHub-backed TODO, submit the special id
ISSUE-NEW. The server creates the issue, rewrites the saved id to the canonicalISSUE-{number}, and returns that id. After first sync,ISSUE-{number}descriptions are immutable; updates surface to GitHub as a comment, not a body rewrite. - Each
dependsOnentry must itself be a valid persisted TODO id. - Do not invent methods or fields. The only TODO methods are listed in Workflow.
- Every request needs a unique
requestId, formatreq-<yyyyMMddTHHmmssZ>-<seq-or-slug>, unique within the session.
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.
- 2d ago First seen · 142 lines · 62 tokens per session scan A c3a970d84515
mcp-todo is a skill published in the GitHub repository sharpninja/McpServer (2 stars, last pushed 11d ago), licensed Apache-2.0. It adds 62 tokens to every session and 1,865 once invoked, about $0.0003 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.
Other skills, from other repositories
opencli-sitemap-author
Use when creating or maintaining OpenCLI site sitemaps: agent-facing navigation, page-state, action, workflow, API-reference, pitfall, and fallback knowledge for a website. Use after browser exploration discovers durable site context, when a sitemap is stale, or when promoting local site knowledge into the repo.
golden-rss
Use when testing the rss golden build.
omh-code-review
This is a Hermes-native code-review workflow skill.
redteam-web-detail-pack
Routing and boundary guidance for authorized general web application security testing. Use as a web testing router when the attack surface should be dispatched to more specific web vulnerability skills.
android-pentest
安卓应用渗透测试 — APK分析、Hook、自动化测试、运行态驱动、签名恢复、抓包分析.
studio
Architecture Studio control plane — initialize or inspect a studio workspace, create and register projects, or route an architecture/AEC task to the right agent or skill. Use when the user runs /as:studio, asks to set up or open their studio, manage its projects, or describes a task without naming a skill.