Skip to content
Skill

mcp-builder

by anthropics

AI Summary

mcp-builder is a guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to integrate with external services and APIs. It helps developers build well-designed tool interfaces in Python or TypeScript for AI-powered applications.

Install

Copy this and paste it into Claude Code, Cursor, or any AI assistant:

I want to install the "mcp-builder" skill in my project.

Please run this command in my terminal:
# Install skill into your project (10 files)
mkdir -p .claude/skills/mcp-builder && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/mcp-builder/SKILL.md "https://raw.githubusercontent.com/anthropics/skills/main/skills/mcp-builder/SKILL.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/mcp-builder/LICENSE.txt "https://raw.githubusercontent.com/anthropics/skills/main/skills/mcp-builder/LICENSE.txt" && mkdir -p .claude/skills/mcp-builder/reference && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/mcp-builder/reference/evaluation.md "https://raw.githubusercontent.com/anthropics/skills/main/skills/mcp-builder/reference/evaluation.md" && mkdir -p .claude/skills/mcp-builder/reference && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/mcp-builder/reference/mcp_best_practices.md "https://raw.githubusercontent.com/anthropics/skills/main/skills/mcp-builder/reference/mcp_best_practices.md" && mkdir -p .claude/skills/mcp-builder/reference && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/mcp-builder/reference/node_mcp_server.md "https://raw.githubusercontent.com/anthropics/skills/main/skills/mcp-builder/reference/node_mcp_server.md" && mkdir -p .claude/skills/mcp-builder/reference && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/mcp-builder/reference/python_mcp_server.md "https://raw.githubusercontent.com/anthropics/skills/main/skills/mcp-builder/reference/python_mcp_server.md" && mkdir -p .claude/skills/mcp-builder/scripts && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/mcp-builder/scripts/connections.py "https://raw.githubusercontent.com/anthropics/skills/main/skills/mcp-builder/scripts/connections.py" && mkdir -p .claude/skills/mcp-builder/scripts && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/mcp-builder/scripts/evaluation.py "https://raw.githubusercontent.com/anthropics/skills/main/skills/mcp-builder/scripts/evaluation.py" && mkdir -p .claude/skills/mcp-builder/scripts && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/mcp-builder/scripts/example_evaluation.xml "https://raw.githubusercontent.com/anthropics/skills/main/skills/mcp-builder/scripts/example_evaluation.xml" && mkdir -p .claude/skills/mcp-builder/scripts && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/mcp-builder/scripts/requirements.txt "https://raw.githubusercontent.com/anthropics/skills/main/skills/mcp-builder/scripts/requirements.txt"

Then restart Claude Code (or reload the window in Cursor) so the skill is picked up.

Description

Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).

Overview

Create MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. The quality of an MCP server is measured by how well it enables LLMs to accomplish real-world tasks. ---

🚀 High-Level Workflow

Creating a high-quality MCP server involves four main phases:

Phase 1: Deep Research and Planning

1.1 Understand Modern MCP Design API Coverage vs. Workflow Tools: Balance comprehensive API endpoint coverage with specialized workflow tools. Workflow tools can be more convenient for specific tasks, while comprehensive coverage gives agents flexibility to compose operations. Performance varies by client—some clients benefit from code execution that combines basic tools, while others work better with higher-level workflows. When uncertain, prioritize comprehensive API coverage. Tool Naming and Discoverability: Clear, descriptive tool names help agents find the right tools quickly. Use consistent prefixes (e.g., github_create_issue, github_list_repos) and action-oriented naming. Context Management: Agents benefit from concise tool descriptions and the ability to filter/paginate results. Design tools that return focused, relevant data. Some clients support code execution which can help agents filter and process data efficiently. Actionable Error Messages: Error messages should guide agents toward solutions with specific suggestions and next steps. 1.2 Study MCP Protocol Documentation Navigate the MCP specification: Start with the sitemap to find relevant pages: https://modelcontextprotocol.io/sitemap.xml Then fetch specific pages with .md suffix for markdown format (e.g., https://modelcontextprotocol.io/specification/draft.md). Key pages to review: • Specification overview and architecture • Transport mechanisms (streamable HTTP, stdio) • Tool, resource, and prompt definitions 1.3 Study Framework Documentation Recommended stack: • Language: TypeScript (high-quality SDK support and good compatibility in many execution environments e.g. MCPB. Plus AI models are good at generating TypeScript code, benefiting from its broad usage, static typing and good linting tools) • Transport: Streamable HTTP for remote servers, using stateless JSON (simpler to scale and maintain, as opposed to stateful sessions and streaming responses). stdio for local servers. Load framework documentation: • MCP Best Practices: 📋 View Best Practices - Core guidelines For TypeScript (recommended): • TypeScript SDK: Use WebFetch to load https://raw.githubusercontent.com/modelcontextprotocol/typescript-sdk/main/README.md • ⚡ TypeScript Guide - TypeScript patterns and examples For Python: • Python SDK: Use WebFetch to load https://raw.githubusercontent.com/modelcontextprotocol/python-sdk/main/README.md • 🐍 Python Guide - Python patterns and examples 1.4 Plan Your Implementation Understand the API: Review the service's API documentation to identify key endpoints, authentication requirements, and data models. Use web search and WebFetch as needed. Tool Selection: Prioritize comprehensive API coverage. List endpoints to implement, starting with the most common operations. ---

Phase 2: Implementation

2.1 Set Up Project Structure See language-specific guides for project setup: • ⚡ TypeScript Guide - Project structure, package.json, tsconfig.json • 🐍 Python Guide - Module organization, dependencies 2.2 Implement Core Infrastructure Create shared utilities: • API client with authentication • Error handling helpers • Response formatting (JSON/Markdown) • Pagination support 2.3 Implement Tools For each tool: Input Schema: • Use Zod (TypeScript) or Pydantic (Python) • Include constraints and clear descriptions • Add examples in field descriptions Output Schema: • Define outputSchema where possible for structured data • Use structuredContent in tool responses (TypeScript SDK feature) • Helps clients understand and process tool outputs Tool Description: • Concise summary of functionality • Parameter descriptions • Return type schema Implementation: • Async/await for I/O operations • Proper error handling with actionable messages • Support pagination where applicable • Return both text content and structured data when using modern SDKs Annotations: • readOnlyHint: true/false • destructiveHint: true/false • idempotentHint: true/false • openWorldHint: true/false ---

Discussion

0/2000
Loading comments...

Health Signals

MaintenanceCommitted Today
Active
Adoption1K+ stars on GitHub
117.3k ★ · Popular
DocsREADME + description
Well-documented

GitHub Signals

Stars117.3k
Forks13.5k
Issues693
UpdatedToday
View on GitHub
No License

My Fox Den

Community Rating

Sign in to rate this booster

Works With

Claude Code