Step-by-step MCP server scaffolding workflow: research, plan, implement, test, evaluate. Scope: guided MCP server creation process ONLY. For general MCP expertise, debugging, or advanced patterns, use the mcp-expert agent instead.
From atum-systemnpx claudepluginhub arnwaldn/atum-system --plugin atum-systemThis skill uses the workspace's default tool permissions.
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Integrates PayPal payments with express checkout, subscriptions, refunds, and IPN. Includes JS SDK for frontend buttons and Python REST API for backend capture.
Step-by-step workflow for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools.
IN SCOPE: Guided 4-phase workflow for scaffolding and building new MCP servers from scratch. Project setup, tool implementation, testing, and evaluation.
OUT OF SCOPE: General MCP expertise, debugging existing MCP servers, advanced patterns (multi-transport, session management, streaming), or MCP protocol deep-dives. For those, use the mcp-expert agent instead.
API Coverage vs. Workflow Tools: Balance comprehensive API endpoint coverage with specialized workflow tools. When uncertain, prioritize comprehensive API coverage.
Tool Naming and Discoverability:
Clear, descriptive tool names help agents find the right tools. Use consistent prefixes (e.g., github_create_issue, github_list_repos) and action-oriented naming.
Context Management: Design tools that return focused, relevant data. Support pagination where applicable.
Actionable Error Messages: Error messages should guide agents toward solutions with specific suggestions and next steps.
Start with the sitemap: https://modelcontextprotocol.io/sitemap.xml
Fetch specific pages with .md suffix for markdown format.
Key pages to review:
Recommended: TypeScript (high-quality SDK, good compatibility, strong typing)
@modelcontextprotocol/sdkAlternative: Python
mcp package (use from mcp.server import FastMCP)TypeScript:
my-mcp-server/
src/
index.ts # Server entry point
tools/ # Tool implementations
utils/ # Shared utilities (API client, auth, formatting)
package.json
tsconfig.json
Python:
my-mcp-server/
src/
server.py # Server entry point
tools/ # Tool implementations
utils/ # Shared utilities
pyproject.toml
Create shared utilities:
For each tool, define:
Input Schema (Zod or Pydantic):
Output Schema (when possible):
outputSchema for structured datastructuredContent in responsesTool Description:
Annotations:
readOnlyHint: true/falsedestructiveHint: true/falseidempotentHint: true/falseopenWorldHint: true/falseReview for:
TypeScript:
npm run build
npx @modelcontextprotocol/inspector
Python:
python -m py_compile your_server.py
# Test with MCP Inspector
Create 10 evaluation questions to test effectiveness:
Each question must be:
Output format:
<evaluation>
<qa_pair>
<question>Your question here</question>
<answer>Expected answer</answer>
</qa_pair>
</evaluation>