MCP Builder

Designs, builds, and tests Model Context Protocol servers with typed tools, resources, and prompts.

2|Updated May 21, 2026
One-click install
npx skills add https://github.com/tcvdog/agency-agents-hermes --skill mcp-builder-tcvdog
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: MCP Builder
Source: https://github.com/tcvdog/agency-agents-hermes/tree/main/specialized/mcp-builder
Command: npx skills add https://github.com/tcvdog/agency-agents-hermes --skill mcp-builder-tcvdog

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? AI agents often fail to use external tools correctly because of vague tool names, untyped parameters, and poor error handling. This Skill guides the design and implementation of MCP servers so agents can reliably discover, call, and interpret custom tools that connect to APIs, databases, and business systems. ## Core Features & Use Cases - Agent-Friendly Tool Design: Enforces verb_noun naming, descriptive tool documentation, and typed parameter schemas using Zod (TypeScript) or Pydantic (Python). - Production-Grade Server Implementation: Provides runnable TypeScript and Python MCP server templates with structured error handling, environment-based secrets, and stateless tool design. - Resources, Prompts, and Testing: Covers exposing data as MCP resources, creating prompt templates, and testing the full agent tool-call loop including error paths. - Use Case: You need an agent to search support tickets. Use this Skill to build an MCP server exposing a search_tickets tool with validated status and priority filters, returning structured JSON the agent can act on. ## Quick Start Ask the agent to design and implement an MCP server in TypeScript that exposes tools for searching and updating records in your target API or database.

Frequently Asked Questions about MCP Builder

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build an MCP server in TypeScript?▼

Use the @modelcontextprotocol/sdk package to create an McpServer instance, register tools with Zod-validated parameter schemas, and connect via StdioServerTransport. Each tool should have a descriptive verb_noun name and return structured JSON content.

How to create MCP tools with Python FastMCP?▼

Use the FastMCP class from the mcp.server.fastmcp module and decorate async functions with @mcp.tool(). Define parameters with Pydantic Field descriptions and defaults so agents receive typed, self-documenting schemas.

Why does the agent call the wrong MCP tool?▼

Agents select tools based on names and descriptions, so vague names like query or overlapping tool purposes cause misselection. Rename tools as unambiguous verb_noun pairs and write descriptions stating when to use each tool, then retest the full call loop.

Should MCP tools return errors or throw exceptions?▼

MCP tools should return error content with isError set to true rather than throwing exceptions that crash the server. The error message should be actionable so the agent can retry, adjust parameters, or ask the user.

How do I handle API keys in an MCP server?▼

Load API keys and tokens from environment variables configured in the MCP client config, never hardcode them in source. For user-scoped third-party access, implement OAuth 2.0 flows with token refresh and scoped permissions.

When should I use stdio vs SSE transport for MCP?▼

Use stdio for local CLI integrations and desktop agents where the server runs as a subprocess. Use SSE or streamable HTTP for web-based agent interfaces, remote access, and scalable cloud deployments with stateless request handling.