Skip to content
Back to skills

Mcp Builder

ASecurity

MCP Server 开发指南 - 帮助创建高质量的 MCP (Model Context Protocol) 服务器。 当需要构建 MCP 服务器来集成外部 API 或服务时使用,支持 Python (FastMCP) 和 Node/TypeScript (MCP SDK)。 触发关键词: mcp开发, mcp服务器, model context protocol, 构建mcp, 创建mcp

  • 17 stars
  • 0 votes
  • 0 copies
  • 4 views
  • Added May 30, 2026
ai-agentstypescriptpythonbashnodeazuregitapidevops

Works with

  • vscode
  • api
  • mcp

Security analysis

A100/100

Scanned May 30, 2026

npx -y skills add gabrielmoreira/agent-skills-mirror --skill mcp-builder --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Mcp Builder?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Mcp Builder
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/gabrielmoreira-mcp-builder/badge)](https://www.skillsdirectory.com/skills/gabrielmoreira-mcp-builder)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: mcp-builder
description: |
  MCP Server 开发指南 - 帮助创建高质量的 MCP (Model Context Protocol) 服务器。
  当需要构建 MCP 服务器来集成外部 API 或服务时使用,支持 Python (FastMCP) 和 Node/TypeScript (MCP SDK)。
  触发关键词: mcp开发, mcp服务器, model context protocol, 构建mcp, 创建mcp
---

# MCP Server 开发指南

## 执行声明规范

**每次使用本 Skill 时,必须向用户明确告知:**

### 开始执行时
```
🔧 **正在执行: MCP Builder** (`#mcp-builder`)

✅ 已加载 Skill 指引
⭕ 当前步骤: [步骤描述]
```

### 执行完成时
```
✅ **执行完成**: MCP Builder

参考来源:
- Skill: `#mcp-builder`
- 参考文档: [使用的参考文档]

产出物: [MCP Server 代码/配置]
```

---

## 概述

创建 MCP (Model Context Protocol) 服务器,使 LLM 能够通过精心设计的工具与外部服务交互。
MCP 服务器的质量取决于它如何有效地帮助 LLM 完成实际任务。

---

## 高层工作流

创建高质量 MCP 服务器涉及四个主要阶段:

### 阶段1: 深度研究和规划

#### 1.1 理解现代 MCP 设计

**API 覆盖 vs 工作流工具**:
平衡全面的 API 端点覆盖与专业工作流工具。当不确定时,优先考虑全面的 API 覆盖。

**工具命名和可发现性**:
清晰、描述性的工具名称帮助代理快速找到正确的工具。使用一致的前缀(如 `github_create_issue`、`github_list_repos`)和面向动作的命名。

**可操作的错误消息**:
错误消息应引导代理找到解决方案,包含具体建议和后续步骤。

#### 1.2 研究 MCP 协议文档

**导航 MCP 规范**:
- 站点地图: `https://modelcontextprotocol.io/sitemap.xml`
- 使用 `.md` 后缀获取 Markdown 格式页面

**关键页面**:
- 规范概述和架构
- 传输机制 (streamable HTTP, stdio)
- 工具、资源和提示定义

#### 1.3 研究框架文档

**推荐技术栈**:
- **语言**: TypeScript(高质量 SDK 支持,良好的执行环境兼容性)
- **传输**: 远程服务器使用 Streamable HTTP,本地服务器使用 stdio

**框架文档**:
- [MCP 最佳实践](reference/mcp_best_practices.md)
- [TypeScript 指南](reference/node_mcp_server.md)
- [Python 指南](reference/python_mcp_server.md)

#### 1.4 规划实现

**理解 API**: 查看服务的 API 文档,识别关键端点、认证要求和数据模型。

**工具选择**: 优先考虑全面的 API 覆盖。列出要实现的端点,从最常见的操作开始。

---

### 阶段2: 实现

#### 2.1 设置项目结构

详见语言特定指南:
- [TypeScript 指南](reference/node_mcp_server.md) - 项目结构、package.json、tsconfig.json
- [Python 指南](reference/python_mcp_server.md) - 模块组织、依赖项

#### 2.2 实现核心基础设施

创建共享工具:
- 带认证的 API 客户端
- 错误处理助手
- 响应格式化 (JSON/Markdown)
- 分页支持

#### 2.3 实现工具

对于每个工具:

**输入 Schema**:
- 使用 Zod (TypeScript) 或 Pydantic (Python)
- 包含约束和清晰的描述
- 在字段描述中添加示例

**输出 Schema**:
- 尽可能定义 `outputSchema`
- 在工具响应中使用 `structuredContent`

**工具描述**:
- 功能的简洁摘要
- 参数描述
- 返回类型 schema

**注解**:
- `readOnlyHint`: true/false
- `destructiveHint`: true/false
- `idempotentHint`: true/false
- `openWorldHint`: true/false

---

### 阶段3: 审查和测试

#### 3.1 代码质量

审查:
- 无重复代码 (DRY 原则)
- 一致的错误处理
- 完整的类型覆盖
- 清晰的工具描述

#### 3.2 构建和测试

**TypeScript**:
```bash
npm run build
npx @modelcontextprotocol/inspector
```

**Python**:
```bash
python -m py_compile your_server.py
```

---

### 阶段4: 创建评估

实现 MCP 服务器后,创建全面的评估来测试其有效性。

详见 [评估指南](reference/evaluation.md)。

---

## 快速参考

### 服务器命名
- **Python**: `{service}_mcp` (如 `slack_mcp`)
- **Node/TypeScript**: `{service}-mcp-server` (如 `slack-mcp-server`)

### 工具命名
- 使用 snake_case 加服务前缀
- 格式: `{service}_{action}_{resource}`
- 示例: `slack_send_message`, `github_create_issue`

### 响应格式
- 支持 JSON 和 Markdown 两种格式
- JSON 用于程序化处理
- Markdown 用于人类可读性

### 分页
- 始终尊重 `limit` 参数
- 返回 `has_more`, `next_offset`, `total_count`
- 默认 20-50 项

### 传输选择

| 标准 | stdio | Streamable HTTP |
|------|-------|-----------------|
| **部署** | 本地 | 远程 |
| **客户端** | 单个 | 多个 |
| **复杂度** | 低 | 中 |
| **实时** | 否 | 是 |

---

## 参考文档

加载这些资源以获取详细指导:

### 核心 MCP 文档
- [MCP 最佳实践](reference/mcp_best_practices.md) - 通用 MCP 指南

### 语言特定实现指南
- [Python 实现指南](reference/python_mcp_server.md) - FastMCP 完整指南
- [TypeScript 实现指南](reference/node_mcp_server.md) - TypeScript SDK 完整指南

### 评估指南
- [评估指南](reference/evaluation.md) - 完整的评估创建指南

---

## Azure DevOps MCP 示例

当前项目使用 Azure DevOps MCP,以下是配置示例:

### VS Code 配置 (.vscode/mcp.json)

```json
{
  "mcpServers": {
    "azuredevops": {
      "command": "npx",
      "args": ["-y", "@anthropic/mcp-server-azure-devops"],
      "env": {
        "AZURE_DEVOPS_ORG_URL": "https://dev.azure.com/your-org",
        "AZURE_DEVOPS_AUTH_METHOD": "pat",
        "AZURE_DEVOPS_PAT": "${env:AZURE_DEVOPS_PAT}"
      }
    }
  }
}
```

### 工具调用示例

```typescript
// 搜索代码 - 必须指定仓库过滤器
mcp_azuredevops_search_code({
  searchText: "IDataLoadService",
  filters: { Repository: ["{{PLATFORM_REPO}}"] }
});

// 获取文件内容 - 必须指定版本
mcp_azuredevops_get_file_content({
  repositoryId: "{{PLATFORM_REPO}}",
  path: "/DataLoad/src/Service.cs",
  versionType: "branch",
  version: "{{PLATFORM_BRANCH}}"
});

// 获取工作项
mcp_azuredevops_get_work_item({
  id: 1073716
});
```

---

## 参考来源声明

使用本 Skill 时,必须声明参考来源:

```markdown
📚 **参考来源**:
- Skill: `#mcp-builder`
- 参考文档: [使用的参考文档名称]
- 外部资源: [MCP 官方文档等]
```

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.