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 skills add MichelKerkmeester/skilled-agent-harness_spec-driven-loops --skill mcp-code-modegit clone --depth 1 https://github.com/MichelKerkmeester/skilled-agent-harness_spec-driven-loopsWrote 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.
[](https://agentmods.dev/skills/michelkerkmeester/skilled-agent-harness_spec-driven-loops/mcp-code-mode)<a href="https://agentmods.dev/skills/michelkerkmeester/skilled-agent-harness_spec-driven-loops/mcp-code-mode"><img src="https://agentmods.dev/badge/skills/michelkerkmeester/skilled-agent-harness_spec-driven-loops/mcp-code-mode/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.
<a href="https://agentmods.dev/skills/michelkerkmeester/skilled-agent-harness_spec-driven-loops/mcp-code-mode"><img src="https://agentmods.dev/badge/skills/michelkerkmeester/skilled-agent-harness_spec-driven-loops/mcp-code-mode.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 3 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Privilege Escalation · line 86 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
- high Privilege Escalation · line 342 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
- high Privilege Escalation · line 384 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00033 | $0.05005 |
| Opus 5 | $0.00016 | $0.02502 |
| Sonnet 5 | $0.00007 | $0.01001 |
| Haiku 4.5 | $0.00003 | $0.00500 |
Grade A, and why
mcp-code-mode 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 4d 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 — 473 lines — stays where its author put it; the contents beside it link to each section on GitHub.
MCP Code Mode
Execute TypeScript code with direct access to 200+ MCP tools through progressive disclosure. Code Mode eliminates context overhead by loading tools on-demand, enabling complex multi-tool workflows in a single execution with state persistence and built-in error handling.
1. WHEN TO USE
Use Code Mode When
MANDATORY for ALL MCP tool calls:
- ✅ Calling ClickUp, Notion, Figma, MyService, Chrome DevTools, or any other MCP tools
- ✅ Accessing external APIs through MCP servers
- ✅ Managing tasks in project management tools
- ✅ Interacting with design tools, databases, or services
- ✅ Browser automation and web interactions
Benefits over traditional tool calling:
- 🚀 98.7% context reduction - 1.6k tokens vs 141k for 47 tools
- ⚡ 60% faster execution - Single execution vs 15+ API round trips
- 🔗 State persistence - Data flows naturally between operations
- 🛡️ Type safety - Full TypeScript support with autocomplete
- 🎯 Progressive loading - Tools discovered on-demand, zero upfront cost
Do NOT Use Code Mode For
Use native tools instead:
- ❌ File operations (use Read, Write, Edit tools)
- ❌ Text searching (use Grep tool)
- ❌ File discovery (use Glob tool)
- ❌ Bash commands (use Bash tool)
- ❌ Continuity recovery (use
/speckit:resume, which walkshandover.md -> _memory.continuity -> spec docs)
See Section 4 for details on Native MCP vs Code Mode distinction.
Common Use Cases
| Scenario | Code Mode Approach | Benefit |
|---|---|---|
| Create ClickUp task | call_tool_chain({ code: "await clickup.clickup_create_task({...})" }) |
Type-safe, single execution |
| Multi-tool workflow | Figma → ClickUp → MyService in one execution | State persists, 5× faster |
| Browser automation | Chrome DevTools MCP for testing/screenshots | Sandboxed, reliable |
| Design-to-implementation | Fetch Figma design → Create task → Update CMS | Atomic workflow |
| External API access | Any MCP server (Notion, GitHub, etc.) | Progressive tool loading |
What ships with it
60 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- assets/config-template.md 12 KB
- assets/env-template.md 12 KB
- changelog/v1.0.0.0.md 2.0 KB
- changelog/v1.0.0.31.md 1.7 KB
- changelog/v1.0.1.0.md 1.3 KB
- changelog/v1.0.2.0.md 1.2 KB
- changelog/v1.0.3.0.md 735 B
- changelog/v1.0.4.0.md 1.1 KB
- changelog/v1.0.5.0.md 1002 B
- changelog/v1.0.7.0.md 1.2 KB
- changelog/v1.0.8.0.md 917 B
- graph-metadata.json 4.2 KB
- INSTALL-GUIDE.md 46 KB
- leaf-aliases.json 7.0 KB
- leaf-manifest.config.json 678 B
- leaf-manifest.json 2.5 KB
- manual-testing-playbook/clickup-and-chrome-via-cm/chrome-navigate-screenshot.md 4.6 KB
- manual-testing-playbook/clickup-and-chrome-via-cm/clickup-create-read-delete.md 4.5 KB
- manual-testing-playbook/clickup-and-chrome-via-cm/sibling-pair-handover.md 5.6 KB
- manual-testing-playbook/core-tools/call-tool-chain-execution.md 3.9 KB
- manual-testing-playbook/core-tools/list-tools-enumeration.md 5.0 KB
- manual-testing-playbook/core-tools/search-tools-relevance.md 4.1 KB
- manual-testing-playbook/core-tools/tool-info-schema.md 4.1 KB
- manual-testing-playbook/env-var-prefixing/prefixed-env-load.md 4.4 KB
- manual-testing-playbook/env-var-prefixing/unprefixed-env-not-found.md 4.8 KB
- manual-testing-playbook/env-var-prefixing/validate-config-script.md 4.5 KB
- manual-testing-playbook/manual-namespace-contract/correct-manual-tool-form.md 4.4 KB
- manual-testing-playbook/manual-namespace-contract/list-tools-dot-vs-underscore.md 5.0 KB
- manual-testing-playbook/manual-namespace-contract/wrong-form-error.md 4.6 KB
- manual-testing-playbook/manual-testing-playbook.md 34 KB
- manual-testing-playbook/multi-tool-workflows/promise-all-parallel.md 5.0 KB
- manual-testing-playbook/multi-tool-workflows/sequential-chain.md 4.4 KB
- manual-testing-playbook/multi-tool-workflows/try-catch-error-path.md 5.0 KB
- manual-testing-playbook/plugins-and-hooks/mcp-route-guard.md 12 KB
- manual-testing-playbook/recovery-and-config/deregister-reregister-cycle.md 5.2 KB
- manual-testing-playbook/recovery-and-config/disabled-server-omitted.md 4.9 KB
- manual-testing-playbook/recovery-and-config/invalid-config-error.md 5.3 KB
- manual-testing-playbook/recovery-and-config/missing-manual-entry.md 4.2 KB
- manual-testing-playbook/recovery-and-config/partial-chain-rollback.md 5.3 KB
- manual-testing-playbook/recovery-and-config/timeout-escalation.md 3.9 KB
- manual-testing-playbook/third-party-via-cm/figma-file-metadata.md 4.2 KB
- manual-testing-playbook/third-party-via-cm/github-list-user-repos.md 3.7 KB
- manual-testing-playbook/third-party-via-cm/myservice-list-sites.md 3.8 KB
- manual-testing-playbook/third-party-via-cm/notion-search-workspace.md 3.9 KB
- mcp-server/.nvmrc 7 B
- mcp-server/index.ts 16 KB runs code
- mcp-server/package-lock.json 56 KB
- mcp-server/README.md 12 B
- mcp-server/scripts/check-node.cjs 793 B runs code
- mcp-server/scripts/README.md 1.2 KB
- mcp-server/tsconfig.json 872 B
- README.md 15 KB
- references/architecture.md 19 KB
- references/configuration.md 17 KB
- references/naming-convention.md 15 KB
- references/tool-catalog.md 2.7 KB
- references/workflows.md 4.3 KB
- scripts/doctor.sh 3.0 KB runs code
- scripts/install.sh 19 KB runs code
- scripts/README.md 3.3 KB
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.
- 4d ago Changed 537818677421
- 6d ago First seen · 473 lines · 33 tokens per session scan A d90794d6a952
mcp-code-mode is a skill published in the GitHub repository MichelKerkmeester/skilled-agent-harness_spec-driven-loops (35 stars, last pushed yesterday), licensed MIT. It adds 33 tokens to every session and 5,005 once invoked, about $0.0002 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-09-03.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
local-ai-agents
Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…
next-cache-components-adoption
Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…
insight-error-page
Write or audit an insight-kind error page for the Next.js dev overlay. Use when creating a new errors/ .mdx page, auditing an existing one, or checking that a page matches the framework fix cards. Covers page structure, title alignment, FixCard cards with Copy prompt button, code snippets, terminology verification…
next-cache-components-optimizer
Drive a Next.js route to instant navigation by setting up an agentic loop, under Cache Components / PPR, on initial load (hard navigation) and client-side navigation (soft navigation). Encode the goal as a failing @next/playwright instant() e2e and work it to green, one verified route at a time; the shipped test then…
next-partial-prefetching-adoption
Turn on Partial Prefetching in a Next.js app and work through the insights it surfaces. Use when the user wants to enable or adopt Partial Prefetching, flip the partialPrefetching flag, opt routes in with export const prefetch = 'partial', audit Link prefetch={true} behavior, preserve existing prefetched UI with…