mcp-server-authoringlisted
Install: claude install-skill laurigates/claude-plugins
# MCP Server Authoring
Producer-side patterns for **building** a Python Model Context Protocol server
with the official SDK's `FastMCP` (or the standalone `fastmcp` package). Applies
to any Python MCP server you own — the guidance is portfolio-independent.
For *consuming* / installing servers into a project, this is the wrong skill —
see the table below.
## When to Use This Skill
| Use this skill when... | Use a different skill when... |
|------------------------|-------------------------------|
| Building or scaffolding a new MCP server | Installing an existing server into `.mcp.json` → `agent-patterns-plugin:mcp-management` |
| Adding a tool / resource / prompt to a server | Running MCP compliance checks on a project → `configure-plugin:configure-mcp` |
| Wiring a server's tests, lint, release-please | An agent calls 50+ MCP tools and needs the code-execution pattern → `agent-patterns-plugin:mcp-code-execution` |
| Choosing transport (stdio vs HTTP) for a server you own | Managing OAuth for a remote server you consume → `mcp-management` |
## The Build Path
Build a server in this order. Each step's *why* is the load-bearing part — it is
what lets you generalize past the example.
### Step 1 — Scaffold the project
```bash
uv init --package my-server && cd my-server
uv add "mcp[cli]" # bundled SDK; or `uv add fastmcp` for the standalone package
uv add --group dev pytest ruff ty
```
**Why `uv init --package`**: it lays down a `src/` package + `pyproject.toml`
w