mcpField
M
mcp-builder

mcp-builder

github.com/composio-community开发2.0k1.7k 次安装14 周前更新
代码仓库

关于 mcp-builder

mcp-builder 是指导开发者设计、实现、审查和评估 MCP 服务的技能,强调围绕工作流设计工具、精简响应、提供可操作的错误信息及制定真实评估。

主要功能

  1. 01以工作流为中心设计工具
  2. 02提供 Python 和 TypeScript 实现指导
  3. 03输入验证与工具注解指导
  4. 04错误处理和响应格式建议
  5. 05代码审查与质量检查
  6. 06服务测试评估设计

适用场景

  1. 01围绕 Agent 的完整任务规划工具
  2. 02使用 Python 或 TypeScript 构建 MCP 服务
  3. 03审查服务代码与工具模式
  4. 04通过真实评估测试服务行为

MCP 相关

该技能指导创建 MCP 服务,为大模型提供与外部服务和 API 交互的工具,并涵盖服务设计、实现、审查和评估。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/composio-community/awesome-claude-plugins --skill mcp-builder

安装后在 Claude Code 中输入/mcp-builder确认已加载。

详细介绍

MCP 服务开发指南

概述

使用此技能创建高质量的 MCP(Model Context Protocol)服务,使大模型能够有效地与外部服务交互。MCP 服务提供工具,让大模型能够访问外部服务和 API。

高层工作流

创建高质量的 MCP 服务包含四个主要阶段:

阶段 1:深入研究与规划
以 Agent 为中心的设计原则

围绕工作流构建,而不只是封装 API 端点:

  • 不要只是封装现有的 API 端点,而要构建经过深思熟虑、影响力大的工作流工具
  • 整合相关操作(例如,schedule_event 同时检查可用时间并创建事件)
  • 聚焦于支持完成完整任务的工具,而不只是单独的 API 调用

针对有限上下文进行优化:

  • Agent 的上下文窗口有限,因此要充分利用每个词元
  • 返回高价值信息,而不是详尽的数据倾倒
  • 提供“简洁”和“详细”两种响应格式选项
  • 默认使用易于理解的标识符,而非技术代码

设计可操作的错误消息:

  • 错误消息应引导 Agent 正确使用工具
  • 提供明确的后续步骤建议:“尝试使用 filter='active_only' 来减少结果”
  • 让错误消息具有指导性,而不只是用于诊断
学习 MCP 协议文档

获取最新的 MCP 协议文档: 使用 WebFetch 加载:https://modelcontextprotocol.io/llms-full.txt

Python 实现:

  • Python SDK:https://raw.githubusercontent.com/modelcontextprotocol/python-sdk/main/README.md

Node/TypeScript 实现:

  • TypeScript SDK:https://raw.githubusercontent.com/modelcontextprotocol/typescript-sdk/main/README.md
阶段 2:实现
设置项目结构

Python:

  • 创建单个 .py 文件;如果项目较复杂,则按模块组织
  • 使用 MCP Python SDK 注册工具
  • 定义 Pydantic 模型以验证输入

Node/TypeScript:

  • 创建合适的项目结构
  • 设置 package.json 和 tsconfig.json
  • 使用 MCP TypeScript SDK
  • 定义 Zod 模式以验证输入
优先实现核心基础设施

在实现工具之前,先创建共享实用程序:

  • API 请求辅助函数
  • 错误处理实用程序
  • 响应格式化函数(JSON 和 Markdown)
  • 分页辅助函数
  • 身份验证/令牌管理
系统化实现工具

对于每个工具:

定义输入模式:

  • 使用 Pydantic(Python)或 Zod(TypeScript)进行验证
  • 添加适当的约束(最小/最大长度、正则表达式模式)
  • 提供清晰、详细的字段说明

编写全面的文档字符串:

  • 用一行概述工具的功能
  • 详细说明用途和功能
  • 明确标注参数类型并提供示例
  • 完整的返回类型模式
  • 使用示例

添加工具注释:

  • readOnlyHint:true(用于只读操作)
  • destructiveHint:false(用于非破坏性操作)
  • idempotentHint:true(如果重复调用效果相同)
  • openWorldHint:true(如果与外部系统交互)
阶段 3:审查与完善
代码质量审查

审查代码时,检查以下方面:

  • DRY 原则:工具之间没有重复代码
  • 可组合性:将共享逻辑提取为函数
  • 一致性:相似操作返回相似格式
  • 错误处理:所有外部调用都有错误处理
  • 类型安全:完整覆盖类型
  • 文档:每个工具都有全面的文档字符串
阶段 4:创建评估

创建全面的评估,以测试 MCP 服务的有效性。

每个评估问题都必须:

  • 独立:不依赖其他问题
  • 只读:只需要非破坏性操作
  • 复杂:需要多次工具调用和深入探索
  • 真实:基于真实使用场景
  • 可验证:答案唯一明确且可验证

最佳实践总结

  1. 面向工作流构建,而不只是 API 端点
  2. 针对有限的上下文窗口进行优化
  3. 设计可执行的错误消息
  4. 遵循自然的任务划分
  5. 采用评估驱动的开发方式
  6. 彻底研读框架文档
  7. 优先实现核心基础设施
  8. 添加恰当的工具注解
  9. 在真实场景中测试

评论

支持 Markdown