mcpField
M
mcp-copilot-studio-server-generator

mcp-copilot-studio-server-generator

github.com/github开发40.5k8.7k 次安装今天更新
代码仓库

关于 mcp-copilot-studio-server-generator

一套基于提示词的生成规范,用于创建将 MCP 服务接入 Microsoft Copilot Studio 的 Power Platform 自定义连接器。它定义连接器文件、服务端代码及 Copilot Studio 兼容的架构约束。

主要功能

  1. 01生成 Power Platform 连接器架构
  2. 02配置 MCP 流式 HTTP 端点
  3. 03处理 JSON-RPC 2.0
  4. 04生成工具与资源处理程序
  5. 05验证 Copilot Studio 架构
  6. 06配置部署与测试

适用场景

  1. 01搭建 Copilot Studio MCP 连接器
  2. 02定义兼容的 MCP 工具输入与输出
  3. 03准备连接器部署和验证

MCP 相关

生成采用 JSON-RPC 2.0 和 `mcp-streamable-1.0` 模式的 MCP 服务端实现,并提供 `/mcp` 流式 HTTP 端点。涵盖工具及作为工具输出提供的资源,并指出 Copilot Studio 尚不支持提示词。

安装

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

$npx skills add https://github.com/github/awesome-copilot --skill mcp-copilot-studio-server-generator

安装后在 Claude Code 中输入/mcp-copilot-studio-server-generator确认已加载。

详细介绍

Power Platform MCP 连接器生成器

为 Microsoft Copilot Studio 生成一个完整的、集成 Model Context Protocol (MCP) 的 Power Platform 自定义连接器。此提示词会按照 Power Platform 连接器标准创建所有必要文件,并支持 MCP streamable HTTP。

说明

创建一个完整的 MCP 服务实现,要求:

  1. 使用 Copilot Studio MCP 模式:

    • 实现 x-ms-agentic-protocol: mcp-streamable-1.0
    • 支持 JSON-RPC 2.0 通信协议
    • 在 /mcp 提供 streamable HTTP 端点
    • 遵循 Power Platform 连接器结构
  2. 架构合规要求:

    • 工具输入/输出中不得使用 reference 类型(会被 Copilot Studio 过滤)
    • 仅使用单一类型值(不要使用多类型数组)
    • 避免 enum 输入(会被解释为字符串,而不是 enum)
    • 使用基本类型:string、number、integer、boolean、array、object
    • 确保所有端点返回完整 URI
  3. 需要包含的 MCP 组件:

    • 工具:供语言模型调用的函数(✅ Copilot Studio 中支持)
    • 资源:工具输出的类文件数据(✅ Copilot Studio 中支持 - 必须作为工具输出才可访问)
    • 提示词:用于特定任务的预定义模板(❌ Copilot Studio 中尚不支持)
  4. 实现结构:

    /apiDefinition.swagger.json  (Power Platform connector schema)
    /apiProperties.json         (Connector metadata and configuration)
    /script.csx                 (Custom code transformations and logic)
    /server/                    (MCP server implementation)
    /tools/                     (Individual MCP tools)
    /resources/                 (MCP resource handlers)
    

上下文变量

  • 服务用途:[描述该 MCP 服务应完成什么]
  • 所需工具:[要实现的特定工具列表]
  • 资源:[要提供的资源类型]
  • 身份验证:[认证方法:none、api-key、oauth2]
  • 托管环境:[Azure Function、Express.js、FastAPI 等]
  • 目标 API:[要集成的外部 API]

预期输出

生成:

  1. apiDefinition.swagger.json,包含:

    • 正确的 x-ms-agentic-protocol: mcp-streamable-1.0
    • 位于 POST /mcp 的 MCP 端点
    • 合规的架构定义(无 reference 类型)
    • McpResponse 和 McpErrorResponse 定义
  2. apiProperties.json,包含:

    • 连接器元数据和品牌信息
    • 身份验证配置
    • 如需要则包含策略模板
  3. script.csx,包含:

    • 用于请求/响应转换的自定义 C# 代码
    • MCP JSON-RPC 消息处理逻辑
    • 数据验证和处理函数
    • 错误处理和日志记录能力
  4. MCP 服务代码,包含:

    • JSON-RPC 2.0 请求处理器
    • 工具注册与执行
    • 资源管理(作为工具输出)
    • 正确的错误处理
    • Copilot Studio 兼容性检查
  5. 各个工具,要求:

    • 仅接受基本类型输入
    • 返回结构化输出
    • 在需要时将资源作为输出包含在内
    • 为 Copilot Studio 提供清晰描述
  6. 部署配置,用于:

    • Power Platform 环境
    • Copilot Studio Agent 集成
    • 测试与验证

验证清单

确保生成的代码:

  • 架构中无 reference 类型
  • 所有 type 字段均为单一类型
  • Enum 通过带验证的字符串处理
  • 资源可通过工具输出获得
  • 完整 URI 端点
  • 符合 JSON-RPC 2.0
  • 正确的 x-ms-agentic-protocol 请求头
  • McpResponse/McpErrorResponse 架构
  • 为 Copilot Studio 提供清晰的工具描述
  • 兼容生成式编排(Generative Orchestration)

示例用法

Server Purpose: Customer data management and analysis
Tools Needed: 
  - searchCustomers
  - getCustomerDetails
  - analyzeCustomerTrends
Resources:
  - Customer profiles
  - Analysis reports
Authentication: oauth2
Host Environment: Azure Function
Target APIs: CRM System REST API

评论

支持 Markdown