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 Notysoty/openagentskills --skill mcp-server-buildergit clone --depth 1 https://github.com/Notysoty/openagentskillsWrote 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/notysoty/openagentskills/mcp-server-builder)<a href="https://agentmods.dev/skills/notysoty/openagentskills/mcp-server-builder"><img src="https://agentmods.dev/badge/skills/notysoty/openagentskills/mcp-server-builder.svg" alt="Measured on agentmods" height="20"></a>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.00038 | $0.01708 |
| Opus 5 | $0.00019 | $0.00854 |
| Sonnet 5 | $0.00008 | $0.00342 |
| Haiku 4.5 | $0.00004 | $0.00171 |
Grade A, and why
MCP Server 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 7d 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 — 227 lines — stays where its author put it; the contents beside it link to each section on GitHub.
MCP Server Builder
What this skill does
This skill walks you through building a Model Context Protocol (MCP) server from scratch. MCP servers expose tools, resources, and prompts to AI agents (Claude, Cursor, Cline, etc.). This skill covers both Python (FastMCP) and TypeScript (official SDK) implementations, with production-ready patterns for error handling, input validation, and tool description writing.
How to use
Claude Code / Cline
Copy this file to .agents/skills/mcp-server-builder/SKILL.md in your project root.
Then ask:
- "Use the MCP Server Builder to create a server that exposes our internal database as tools."
- "Build an MCP server in Python that wraps our REST API."
Provide:
- What capabilities you want to expose (tools, resources, or both)
- Language preference (Python or TypeScript)
- Whether it will run locally (stdio) or as a remote server (HTTP)
- What systems it needs to connect to
Cursor / Codex
Describe the tools you want to expose alongside these instructions.
The Prompt / Instructions for the Agent
When asked to build an MCP server, produce the following:
Step 1 — Choose transport
| Use case | Transport |
|---|---|
| Local tool for one developer | stdio (local process) |
| Team-shared server | Streamable HTTP (remote) |
| Claude Desktop integration | stdio |
| Multi-user / production | HTTP with auth |
Step 2a — Python implementation (FastMCP)
# Install: pip install fastmcp
from fastmcp import FastMCP
from pydantic import BaseModel, Field
mcp = FastMCP("my-server")
# --- Tool definition ---
class SearchInput(BaseModel):
query: str = Field(description="The search query to run")
limit: int = Field(default=10, ge=1, le=50, description="Max results to return")
@mcp.tool()
async def search_documents(input: SearchInput) -> str:
"""
Search the document database for relevant content.
Use this when the user asks to find, look up, or search for documents.
Returns a formatted list of matching documents with titles and summaries.
"""
try:
results = await db.search(input.query, limit=input.limit)
if not results:
return "No documents found matching your query."
return "\n".join(f"- {r.title}: {r.summary}" for r in results)
except Exception as e:
return f"Error searching documents: {str(e)}"
# --- Resource definition (read-only data) ---
@mcp.resource("config://app-settings")
async def get_app_settings() -> str:
"""Returns the current application configuration."""
return json.dumps(load_config(), indent=2)
# Run with stdio (for local / Claude Desktop)
if __name__ == "__main__":
mcp.run()
# Run with HTTP (for remote / team use)
# mcp.run(transport="streamable-http", host="0.0.0.0", port=8000)
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.
- 7d ago First seen · 227 lines · 38 tokens per session scan A a2319b58ba2b
MCP Server Builder is a skill published in the GitHub repository Notysoty/openagentskills (9 stars, last pushed 24d ago), licensed MIT. It adds 38 tokens to every session and 1,708 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-08-31.
Other skills, from other repositories
api-tester
Test and document API endpoints - validate responses, check status, generate examples.
lc-curate-context
Decide which files a task actually needs, record that as a reusable llm-context rule, verify it against the codebase - including the files your selection references but leaves out - and pack it for your own context, a chat, or a sub-agent you dispatch. Load when choosing what code to put in front of a model, packing…
infra-dify-ops
A set of tools for managing Dify resources used by applications and workflows, including creating, checking, importing and exporting workflow files. It works at the platform-usage level, not with Dify deployment, databases or containers.
devlab-integration-fullstack
A guide to testing complete business flows across a frontend, backend services, databases, and other connected systems. It uses tools such as Playwright, Jest, SuperTest, Testcontainers, and mock servers to test multi-service setups.
devlab-srv-test-api
A backend API testing guide for Java, Python, and Node.js services. It covers REST and GraphQL APIs, which let software exchange requests and data, plus OpenAPI documents that describe those interfaces.
devlab-contract-web-server
A guide for agreeing on how a separate frontend and backend communicate through APIs. An API contract defines field types, optional values, data formatting, error codes, and which configuration belongs on each side.