Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/softspark/ai-toolkitnpx agentmods add skills/softspark/ai-toolkit/mcp-builderWrote 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/softspark/ai-toolkit/mcp-builder)<a href="https://agentmods.dev/skills/softspark/ai-toolkit/mcp-builder"><img src="https://agentmods.dev/badge/skills/softspark/ai-toolkit/mcp-builder/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/softspark/ai-toolkit/mcp-builder"><img src="https://agentmods.dev/badge/skills/softspark/ai-toolkit/mcp-builder.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
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 →
- medium MCP Rug Pull · line 67 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
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.00039 | $0.02067 |
| Opus 5.5 | $0.00016 | $0.00827 |
| Sonnet 5.5 | $0.00008 | $0.00413 |
| Haiku 4.5 | $0.00004 | $0.00207 |
Grade A, and why
mcp-builder 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 1mo 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 — 170 lines — stays where its author put it; the contents beside it link to each section on GitHub.
MCP Builder
$ARGUMENTS
Build a production-grade MCP server following Anthropic's 4-phase methodology.
When to Use
- Wrapping a third-party REST API as MCP tools
- Exposing an internal database or service to Claude
- Creating reusable integrations for the team
- Migrating a custom tool into the MCP ecosystem
For MCP protocol theory, see mcp-patterns knowledge skill (auto-loaded).
4-Phase Workflow
Phase 1 — Research & Planning
- Read the target API's documentation (OpenAPI spec, README, changelog).
- Identify the 5-15 most useful operations. Prefer workflow-oriented tools over 1:1 API mirror.
- Decide transport:
stdiofor local dev tools,streamable-httpfor remote/shared. - Decide language: TypeScript recommended (best SDK), Python acceptable (
mcppackage). - List required secrets (API keys, tokens) and their env var names.
Output: PLAN.md with tool list, transport choice, auth model.
Phase 2 — Implementation
Scaffold:
my-mcp/
├── package.json # or pyproject.toml
├── src/
│ ├── server.ts # entry point
│ ├── client.ts # API client (axios/httpx)
│ ├── tools/ # one file per tool
│ ├── schemas.ts # Zod/Pydantic schemas
│ └── errors.ts # typed errors
├── .env.example
└── README.md
Per tool:
- Input/output schemas (Zod for TS, Pydantic for Python)
- Clear
namewith service prefix (e.g.github_create_issue) - Description starts with a verb, mentions trigger keywords
- Annotations:
readOnlyHint,destructiveHint,idempotentHint,openWorldHint - Pagination support via
cursororpageparameters - Focused responses — filter noise, don't dump raw API payloads
Phase 3 — Review & Testing
- TypeScript:
npm run typecheck && npm run lint && npm test - Python:
ruff check . && mypy --strict src/ && pytest - MCP Inspector dry-run:
npx @modelcontextprotocol/inspector node dist/server.js - Verify each tool's schema validates a real request and rejects malformed input.
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.
- 1mo ago First seen · 170 lines · 39 tokens per session scan A f025ef68205d
mcp-builder is a skill published in the GitHub repository softspark/ai-toolkit (180 stars, last pushed yesterday), licensed Apache-2.0. It adds 39 tokens to every session and 2,067 once invoked, about $0.0002 per session on Opus 5.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
cline-fix-volatile-msg
Ladder-aware Cline Anthropic caching — verify the rolling read/write ladder on the wire, then add the tools breakpoint and tune TTL. Updated for the 2026-08 AI-SDK monorepo.
continue-gemini-explicit
Continue's Gemini provider doesn't use the cachedContents API at all. Add explicit caching for sessions over the minimum token threshold.
roo-fix-volatile-msg
Ladder-aware Roo Code Anthropic caching — verify the rolling read/write ladder on the wire, then close the real gaps (Vertex 4-block budget, MiniMax path).
aider-1h-ttl
Aider uses 5min TTL by default and works around long pauses with keepalive pings. Wire up the 1h TTL beta instead.
cline-openai-cache-key
Cline OpenAI native provider sends no promptcachekey. Add a stable per-task key so cachedtokens stops being zero.
continue-enable-defaults
Continue's prompt caching is opt-in via config and off by default. Flip the default to systemAndTools.