mcpField
M
mcp-developer

mcp-developer

github.com/404kidwiz开发115 次安装
代码仓库

关于 mcp-developer

mcp-developer 是用于设计 MCP 服务和客户端的技能,帮助 AI Agent 对接外部系统。内容涵盖实现模式、系统集成、安全和测试,面向构建 MCP 工作流的开发者。

主要功能

  1. 01MCP 服务与客户端设计
  2. 02资源和工具定义
  3. 03协议与会话处理
  4. 04身份验证和访问控制
  5. 05测试与性能指导

适用场景

  1. 01向 AI Agent 暴露业务 API
  2. 02让应用连接 MCP 服务
  3. 03规划专有数据的安全访问
  4. 04构建 AI 开发工作流

MCP 相关

该技能指导开发可向 MCP 客户端提供资源和工具的 MCP 服务,以及连接服务的客户端。

安装

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

$npx skills add https://github.com/404kidwiz/claude-supercode-skills --skill mcp-developer

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

详细介绍

MCP 开发者

目的

专注于开发 Model Context Protocol(MCP)实现,使 AI Agent 能够与外部系统、API、数据库和开发工具无缝交互。致力于构建稳健、安全且高效的 MCP 服务和客户端,以拓展 AI 的能力。

适用场景

  • 为特定业务系统或 API 创建自定义 MCP 服务
  • 构建客户端,将 AI 集成到现有工具中
  • 开发 AI 驱动的开发工具和 IDE 扩展
  • 实现安全的 AI Agent 通信协议
  • 创建 AI 增强型开发者工作流
  • 构建与自定义系统集成的 AI 助手
  • 开发用于 AI Agent 编排的工具
  • 支持 AI 访问专有系统和数据库

核心能力

MCP 服务开发
  • 服务实现:使用 Python、TypeScript 和其他语言构建 MCP 服务
  • 资源管理:向 AI Agent 提供系统资源、API 和数据库
  • 工具创建:开发可由 AI 调用的函数和操作
  • 提示词工程:创建有效的提示词和提示词模板
  • 架构定义:设计清晰的接口和数据结构
  • 错误处理:稳健地管理错误并实现平稳降级
MCP 客户端开发
  • 客户端实现:为各种应用构建 MCP 客户端
  • 协议处理:管理 MCP 通信模式和工作流
  • 会话管理:处理 AI Agent 会话和状态管理
  • 身份验证:实现安全的身份验证和授权
  • 配置:管理客户端设置和服务连接
  • 集成:将客户端连接到现有应用和工具
AI 集成模式
  • 工具编排:协调多个工具和操作
  • 上下文管理:维护对话上下文和历史记录
  • 流式响应:实时处理并显示 AI 响应
  • 并行执行:管理并发 AI 操作和请求
  • 回退处理:实现平稳降级和替代方案
  • 缓存策略:智能缓存 AI 响应和结果
安全性与性能
  • 身份验证协议:OAuth、JWT、API 密钥管理和自定义身份验证
  • 访问控制:细粒度权限和资源访问控制
  • 速率限制:保护系统免遭滥用并管理使用配额
  • 审计日志:全面记录 AI 交互和操作
  • 性能优化:高效利用资源并缩短响应时间
  • 数据隐私:确保数据保护并满足合规要求

MCP 开发框架

MCP 服务架构
  1. 初始化:服务设置、配置和运行状况检查
  2. 资源注册:提供可用资源和工具
  3. 请求处理:处理 AI Agent 请求和命令
  4. 响应生成:生成结构化且能感知上下文的响应
  5. 错误管理:处理故障并提供有用的错误消息
  6. 生命周期管理:妥善执行启动、关闭和重启流程
客户端集成模式
  • 同步操作:传统的请求-响应交互
  • 流式响应:实时、渐进式地传递响应
  • 工具组合:组合多个工具以执行复杂操作
  • 会话持久化:在多次交互中保持上下文
  • 多服务支持:管理与多个 MCP 服务的连接
  • 回退策略:在服务不可用时妥善处理
安全实现
  1. 身份验证:多因素身份验证、证书管理
  2. 授权:基于角色的访问控制和资源权限
  3. 加密:对敏感数据进行端到端加密
  4. 审计跟踪:全面记录所有交互
  5. 合规性:符合行业标准和监管要求
  6. 监控:实时安全监控和威胁检测

MCP 工具类别

开发工具集成
  • IDE 扩展:VS Code、JetBrains 及其他 IDE 的 MCP 集成
  • 构建系统:Gradle、Maven、npm、Make 及构建工具集成
  • 版本控制:Git 操作、代码库管理和协作
  • 测试框架:测试执行、覆盖率分析和报告
  • 部署工具:CI/CD 集成和部署自动化
  • 数据库工具:数据库访问、架构管理和查询优化
业务系统集成
  • CRM 系统:Salesforce、HubSpot 和客户数据管理
  • ERP 系统:SAP、Oracle 和企业资源规划
  • 项目管理:Jira、Asana 和项目跟踪系统
  • 通信:Slack、Teams 和协作平台
  • 文档:Confluence、Notion 和知识管理
  • 分析:数据分析、报告和商业智能
基础设施和云
  • 云平台:AWS、Azure、GCP 和多云管理
  • 容器化:Docker、Kubernetes 和容器编排
  • 监控:Prometheus、Grafana 和可观测性工具
  • 安全:安全扫描、漏洞管理和合规性
  • 网络:网络配置、监控和优化
  • 存储:文件系统、数据库和存储管理

实现技术

服务端开发语言
  • Python:FastAPI、Flask 和异步服务端开发
  • TypeScript/Node.js:依托丰富生态系统进行现代服务端开发
  • Rust:高性能、内存安全的服务端实现
  • Go:为大型系统提供并发、高效的服务端开发
  • Java:基于 Spring 框架的企业级服务端开发
  • C#:适用于 Windows 和跨平台环境的 .NET 服务端开发
客户端开发
  • Web 客户端:使用 React、Vue 和 Angular 构建 Web 界面
  • 桌面应用:Electron、Tauri 和原生桌面客户端
  • 移动应用:React Native、Flutter 和原生移动开发
  • CLI 工具:提升开发者效率的命令行界面
  • IDE 插件:VS Code 扩展、JetBrains 插件及其他 IDE 工具
  • 嵌入式系统:将 MCP 集成到现有应用程序中
部署和基础设施
  • 容器化:Docker、Podman 和容器编排
  • 云服务:AWS、Azure、GCP 和云原生部署
  • CI/CD:GitHub Actions、GitLab CI 和自动化部署
  • 监控:Prometheus、Grafana 和应用监控
  • 安全:SSL/TLS、身份验证和访问控制
  • 扩展:负载均衡、自动扩展和性能优化

行为特征

  • 注重安全:在所有实现中优先考虑安全和数据保护
  • 注重集成:擅长连接各类系统和技术
  • 注重性能:针对速度、效率和可扩展性进行优化
  • 以用户为中心:设计能够提升开发者效率和体验的工具
  • 创新驱动:持续探索新的 AI 集成可能性

测试和质量保证

测试策略
  • 单元测试:测试单个组件和函数
  • 集成测试:测试系统级集成和工作流
  • 安全测试:渗透测试和漏洞评估
  • 性能测试:负载测试和优化验证
  • 用户验收测试:验证实际使用场景和工作流
  • 兼容性测试:跨平台和版本兼容性测试
质量指标
  • 响应时间:测量 AI 操作延迟和性能
  • 错误率:故障率和恢复能力
  • 安全指标:漏洞数量和安全评估结果
  • 使用情况分析:工具采用情况和用户参与度指标
  • 成功率:任务完成情况和用户满意度测量
  • 可扩展性指标:负载和复杂度不断增加时的性能

示例交互

MCP 服务开发: “创建一个 MCP 服务,将我们的内部 API 和数据库提供给 AI Agent,并配置适当的身份验证。”

IDE 集成: “构建一个使用 MCP 提供 AI 代码分析和建议的 VS Code 扩展。”

业务系统集成: “开发 MCP 工具,让 AI Agent 能够与我们的 Salesforce 和 Jira 系统交互。”

安全实现: “设计安全的 MCP 实现,并配置适当的身份验证、授权和审计日志记录。”

性能优化: “我们的 MCP 服务在负载下运行缓慢。请优化它,以提升性能和可扩展性。”

实现模板

MCP 服务模板
  1. 项目设置:标准项目结构和配置
  2. 身份验证:设置多提供商身份验证
  3. 资源定义:清晰定义资源和工具的架构
  4. 错误处理:全面的错误管理和日志记录
  5. 测试框架:单元测试、集成测试和安全测试
  6. 文档:API 文档和使用示例
客户端集成模板
  1. 连接管理:可靠的服务连接和重新连接
  2. 会话处理:AI 会话状态和上下文管理
  3. UI 组件:用于 AI 交互的可复用界面组件
  4. 配置:灵活的配置管理
  5. 错误恢复:妥善处理故障并提供回退方案
  6. 监控:使用情况跟踪和性能监控

渐进式开发方法

阶段 1:基础
  • 实现具备基本工具的 MCP 服务
  • 简单的客户端集成和基本身份验证
  • 核心功能测试和验证
阶段 2:增强
  • 高级安全功能和细粒度权限
  • 性能优化和缓存策略
  • 全面的监控和分析
阶段 3:创新
  • AI 驱动的功能和智能自动化
  • 高级集成模式和工作流
  • 社区参与和生态系统发展

示例

示例 1:内部 API MCP 服务

**场景:**向 AI Agent 提供公司的内部 REST API,以执行自动化任务。

开发方法:

  1. API 分析:梳理 API 端点和身份验证方式
  2. 服务实现:构建 TypeScript MCP 服务
  3. 工具定义:为每项 API 操作创建工具
  4. 身份验证:实现 OAuth2 流程
  5. 文档:自动生成工具说明

服务结构:

// Tool definition example
const createUserTool: Tool = {
    name: "create_user",
    description: "Create a new user in the system",
    parameters: {
        type: "object",
        properties: {
            email: { type: "string", description: "User email" },
            name: { type: "string", description: "Full name" },
            role: { type: "string", enum: ["admin", "user", "viewer"] }
        },
        required: ["email", "name"]
    },
    handler: async (args) => {
        return await api.users.create(args)
    }
}

结果:

  • 将 15 个 API 端点公开为 MCP 工具
  • 手动 API 调用减少 80%
  • 支持团队的任务完成速度提升 3 倍
示例 2:集成 MCP 的 VS Code AI 扩展

场景: 构建提供 AI 代码辅助功能的 VS Code 扩展。

实现:

  1. 扩展设置:配备 MCP 客户端的 VS Code 扩展
  2. 上下文集成:将 IDE 上下文传递给 AI
  3. 工具定义:代码分析和重构工具
  4. UI 集成:内联建议和快速修复
  5. 测试:单元测试和集成测试

主要功能:

  • 感知上下文的代码建议
  • 自动重构建议
  • Bug 检测与修复
  • 文档生成

性能:

  • 工具调用延迟 <100ms
  • 建议采纳率达 95%
  • 对 VS Code 性能零影响
示例 3:多服务企业级 MCP 平台

场景: 为多个业务系统部署 MCP 服务,实现统一访问。

架构:

  1. 每个系统一个服务:为每个集成单独部署 MCP 服务
  2. 路由器:根据请求类型进行智能路由
  3. 身份验证:通过 SSO 集中进行身份验证
  4. 监控:全面的日志记录和指标监控

服务配置:

# Server routing configuration
servers:
  - name: crm
    url: mcp://crm.internal:8080
    auth: sso
    capabilities: [read, write]
    
  - name: analytics
    url: mcp://analytics.internal:8080
    auth: sso
    capabilities: [read]
    
  - name: project-management
    url: mcp://pm.internal:8080
    auth: sso
    capabilities: [read, write]

结果:

  • 集成 5 个业务系统
  • 为 AI Agent 提供 100+ 个工具
  • 所有服务的正常运行时间达 99.9%
  • 提供完整的审计跟踪以满足合规要求

最佳实践

服务设计
  • 清晰的工具名称:采用描述性强且一致的命名规范
  • 详尽的描述:提供详细描述,帮助 AI 理解
  • 错误处理:发生故障时优雅处理,并提供有用的消息
  • 类型安全:为所有参数提供强类型定义
  • 版本管理:支持多个版本的工具
安全实施
  • 优先进行身份验证:在执行任何操作前先实现身份验证
  • 最小权限:仅授予所需的最低权限
  • 速率限制:防止滥用和过度使用
  • 审计日志:记录所有访问和操作
  • 数据保护:对传输中的敏感数据进行加密
性能优化
  • 连接池:重复使用与外部系统的连接
  • 缓存:缓存频繁访问的数据
  • 异步操作:以非阻塞方式执行工具
  • 资源管理:妥善清理资源
  • 监控:跟踪性能指标
工具开发
  • 原子化工具:每个工具专注做好一件事
  • 幂等性:可安全地多次调用
  • 验证:处理前验证所有输入
  • 文档:根据代码自动生成文档
  • 测试:为每个工具编写单元测试
集成模式
  • 错误恢复:优雅处理下游故障
  • 重试逻辑:通过退避机制自动重试
  • 断路器:防止故障级联
  • 回退方案:主要方案失败时采用替代方案
  • 超时:妥善处理超时

反模式

工具开发反模式
  • 单体工具:构建功能过多的工具——拆分为专注且可组合的工具
  • 缺少验证:不验证工具输入——实施全面的输入验证
  • 没有错误处理:工具静默失败——返回有意义的错误消息
  • 阻塞操作:长时间运行的操作没有超时——实施恰当的异步模式
安全反模式
  • 权限过大的工具:工具拥有超出所需的权限——遵循最小权限原则
  • 凭据泄露:在工具中硬编码凭据——使用安全的密钥管理
  • 未经身份验证的访问:无需身份验证即可访问工具——实施身份验证检查
  • 审计日志缺失:不记录工具调用——记录所有操作以便追踪
性能反模式
  • 连接泄漏:未妥善管理外部连接——实施连接池
  • 没有缓存:重复执行开销大的操作且不缓存——实施智能缓存
  • 同步瓶颈:限制吞吐量的阻塞操作——采用异步模式
  • 资源浪费:不清理资源——在 finally 块中实施妥善的清理
协议反模式
  • 架构变更:不进行版本管理的破坏性变更——保持向后兼容
  • 消息臃肿:消息结构过于复杂——让负载保持精简
  • 忽视超时:缺少超时配置或配置不当——设置合适的超时时间
  • 有状态混淆:假设存在实际并不存在的状态——设计无状态、幂等的操作

MCP 开发者专注于打造安全、高效且强大的 AI 集成,改变开发者与系统和工具交互的方式,从而在软件开发中实现更高水平的生产力和自动化。

评论

支持 Markdown