A

Anilinfo2015

agent-orchestrationentertainment-and-media

362 查看 · 2026-07-07 更新

Microsoft Copilot Studio ❤️ MCP

欢迎来到 Microsoft Copilot Studio ❤️ MCP 实验室。在这个实验室中,您将学习如何部署 MCP 服务器以及如何将其添加到 Microsoft Copilot Studio 中。

什么是 MCP?

Model Context Protocol (MCP) 是由 Anthropic 定义的一种开放协议,它标准化了应用程序向大语言模型(LLMs)提供上下文的方式。MCP 提供了一种标准化的方法,将 AI 模型连接到不同的数据源和工具。MCP 允许开发者无缝地将现有的知识服务器和 API 直接集成到 Copilot Studio 中。

目前,Copilot Studio 仅支持 Tools。要了解更多当前功能,请参阅 aka.ms/mcsmcp。存在一些已知问题和计划中的改进。这些内容列在 这里

MCP 与连接器

何时使用 MCP?何时使用连接器?MCP 会取代连接器吗?

MCP 服务器通过连接器基础设施提供给 Copilot Studio,因此这些问题并不真正适用。MCP 服务器使用连接器基础设施意味着它们可以采用企业安全和治理控制,例如 虚拟网络 集成、数据丢失防护 控制、多种身份验证方法——所有这些都在此版本中可用——同时支持 AI 驱动代理的实时数据访问。

因此,MCP 和连接器实际上是 相辅相成 的。

前提条件

  • Azure 订阅(已添加支付方式)
  • 拥有 GitHub 账户并已登录
  • Copilot Studio 试用版或开发者账户
  • 已配置 Power Platform 环境

实验

为了能够部署这个 MCP 服务器并在 Microsoft Copilot Studio 中使用它,您需要执行以下操作:

基于模板创建一个新的 GitHub 仓库

  1. 选择 Use this template

  2. 选择 Create a new repository

  3. 选择正确的 Owner

  4. 给它一个 Repository name

  5. 可选地,您可以为其提供一个 Description

  6. 选择 Private

  7. 选择 Create repository

    这可能需要一点时间。完成后,您将被重定向到新创建的仓库。

[!WARNING]
完成本实验中的步骤后,您将在 Azure 上运行一个公开可用的 MCP 服务器。理想情况下,您不希望这样。请确保在完成实验后删除 Azure Web 应用。

部署 Azure Web 应用

  1. 前往 portal.azure.com

    Azure Portal

  2. 将鼠标悬停在 Resource groups 标签上并选择 Create

    资源组

  3. 单击 Subscription 下拉菜单并从列表中选择您的订阅

    选择订阅

  4. 单击 Resource group 名称文本框并输入一个资源组名称,例如 "jokesgrp"

    资源组名称

  5. 选择 Region 下拉菜单并选择离您最近的区域

    资源组区域

  6. 单击 Review + create

    审查并创建

  7. 单击 Create

    创建

  8. 选择 Go to resource group

    转到资源

  9. 选择 Create创建

  10. 点击进入搜索框

    搜索

  11. 输入web app

  12. 在Web App搜索结果中选择创建按钮

    搜索结果

  13. 选择Web App

    创建Web App

  14. 选择名称文本输入框并为Web App输入一个名称,例如"wegotjokes"

    Web App 名称

  15. 选择运行时堆栈下拉菜单并选择Node 22 LTS

    Web App 运行时

  16. 选择区域下拉菜单并选择离您最近的区域

    区域

  17. 点击查看 + 创建

    查看

  18. 点击创建

    创建

  19. 点击刷新以更新您的部署进度

    刷新

  20. 部署完成后,选择转到资源

    转到资源

  21. 展开部署选项卡

    部署选项卡

  22. 点击部署中心

    部署中心

  23. 点击下拉菜单并选择GitHub

    选择源

  24. 选择授权

    授权

  25. 选择继续

    继续

  26. 选择授权 AzureAppService

    授权

  27. 点击组织下拉菜单并选择您的组织

    组织选择

  28. 点击仓库下拉菜单并从列表中选择您之前创建的GitHub仓库

    仓库选择

  29. 点击分支下拉菜单并选择您的分支

    选择分支

  30. 保持其他所有设置为默认值,并选择保存

    保存

  31. 点击刷新以更新部署状态

    刷新

  32. 验证部署是否完成

    部署完成

创建Power Platform连接器

  1. 前往https://make.powerapps.com/

  2. 在左侧菜单中选择更多

  3. 选择发现全部按钮

  4. 在数据下,选择自定义连接器旁边的图钉图标将其固定到左侧菜单

  5. 在左侧菜单中选择自定义连接器

  6. 选择新建自定义连接器

  7. 选择从空白创建

  8. 给连接器命名(例如JokesMCP

  9. 选择蓝色的继续按钮

  10. 选择Swagger编辑器切换

  11. 这里复制yaml代码并替换Swagger编辑器中的代码

  12. 在Swagger编辑器中,将dummyurl.azurewebsites.net替换为您之前创建的Web App的URL。确保移除https://azurewebsites.net之后的所有内容

  13. 选择创建连接器以创建连接器

将MCP服务器作为操作添加到Microsoft Copilot Studio

现在您已经在Azure中运行了一个MCP服务器,并且在Power Platform中有了一个可用的连接器。这一步是关于在Microsoft Copilot Studio中创建一个代理并将MCP服务器添加到该代理。

  1. 前往https://copilotstudio.microsoft.com

  2. 选择右上角的环境选择器

  3. 选择正确的环境

  4. 在左侧导航中选择创建

  5. 选择蓝色的新代理按钮

    新代理

  6. 选择右上角的跳过配置

    跳过配置

  7. 将名称更改为Jokester

  8. 添加以下描述

    text 一个专注于幽默的代理,仅在用户请求时提供简洁、引人入胜的笑话,根据用户的语气和偏好调整其风格。它保持角色一致性,避免重复,并过滤掉冒犯性内容,以确保始终适当且机智的体验。1. 添加以下 Instructions

    text 你是一个讲笑话的助手。你的唯一目的是在用户请求时提供恰当、机智且吸引人的笑话。请遵循以下规则:

    • 只有当用户要求讲笑话或相关的内容时才回应(例如:“给我讲个有趣的事”)。
    • 根据用户的输入匹配他们的语气和幽默偏好——如干净的、黑色幽默、冷笑话、双关语、爸爸笑话等。
    • 不要脱离角色或提供与幽默无关的信息。
    • 让笑话简洁明了。
    • 避免冒犯性、歧视性或不适合工作的内容。
    • 当不确定用户的幽默偏好时,默认使用聪明且普遍适合的笑话。
    • 在同一会话中不要重复讲同一个笑话。
    • 除非被明确要求,否则不要解释笑话。
    • 回应迅速、机智。
  9. 点击右上角的 创建

    创建代理

  10. 启用生成式AI 编排

    开启编排

  11. 知识 部分禁用通用知识

    关闭通用知识

  12. 选择顶部菜单中的 操作

    操作

  13. 选择 添加一个操作

    添加一个操作

  14. 搜索您之前创建的连接器名称(本例中为 jokes)(参见此处 创建Power Platform连接器),见下图中的编号1

  15. 选择 Jokes MCP服务器(见下图中的编号2)

    搜索并选择操作

  16. 等待连接创建完成,并在其完成后选择 下一步

    操作和连接

  17. 将“代理知道何时使用此操作”的描述更改为以下文本:

    text 当用户请求一个笑话时触发此操作。它可以提供查克·诺里斯笑话、爸爸笑话和你妈妈笑话。

    其余部分保持默认设置,比如最终用户认证,这部分稍后会有更多介绍。

  18. 选择 添加操作 以将该操作添加到代理

    添加操作

  19. 测试您的代理 面板中选择 刷新图标

    刷新测试面板

  20. 测试您的代理 面板中发送以下消息:

    text 能给我讲个查克·诺里斯的笑话吗?

    这将显示一条消息,指出运行此操作需要额外权限。这是因为动作向导中的用户认证。

  21. 选择 连接

    额外权限

    这将打开一个新窗口,在其中您可以管理此代理的连接。

  22. 选择 JokesMCP 旁边的 连接

    连接到JokesMCP

  23. 等待连接创建完成,然后选择 提交

    选择连接

  24. 连接现在应该已建立,因此状态应设置为 已连接

    状态已连接

  25. 关闭浏览器中的管理连接标签页

    现在你应该回到了Jokester代理屏幕。

  26. 测试您的代理 面板中选择 刷新图标

    刷新测试面板

  27. 测试您的代理 面板中发送以下消息:

    text 能给我讲个查克·诺里斯的笑话吗?

    此时将显示一个查克·诺里斯的笑话 - 而不是额外权限提示。

    查克·诺里斯笑话

  28. 测试您的代理 面板中发送以下消息:

    text 能给我讲个爸爸笑话吗?

    此时将显示一个爸爸笑话。

    爸爸笑话

  29. 测试您的代理 面板中发送以下消息:

    text 能给我讲个你妈妈的笑话吗?

    此时将显示一个你妈妈的笑话。Yo Mama joke

这就是在 Microsoft Copilot Studio 中运行的 Jokes MCP 服务器。这也是本实验的结束!希望你喜欢这个实验。请花时间填写我们的反馈表单

Jokes MCP 服务器详情

这是一个基于 TypeScript SDK 构建的 MCP 服务器。

通过这个 MCP 服务器,你可以从以下网站获取笑话:

如果你想在本地运行该服务器,请确保在仓库根目录下运行 npm install

之后,你可以运行 npm run build 来构建服务器,并使用 npm start 启动服务器。

工具

包含以下工具:

get-chuck-joke

此工具从 chucknorris.io 获取一个随机的 Chuck Norris 笑话。

get-chuck-categories

此工具从 chucknorris.io 获取可用的分类。

get-dad-joke

此工具从 icanhazdadjoke.com 获取一个随机的 Dad 笑话。

get-yo-mama-joke

此工具从 yomama-jokes.com 获取一个随机的 Yo Mama 笑话。

已知问题和计划改进

Microsoft Copilot Studio 中的 MCP 存在一些已知问题和计划改进。它们列在 这篇 Microsoft Learn 文章中。

贡献

该项目欢迎贡献和建议。大多数贡献需要你同意一份贡献者许可协议(CLA),声明你有权并且确实授予我们使用你的贡献的权利。详情请访问 https://cla.opensource.microsoft.com。

当你提交拉取请求时,CLA 机器人会自动确定你是否需要提供 CLA 并相应地装饰 PR(例如,状态检查、评论)。只需按照机器人提供的说明操作即可。你只需要在所有使用我们 CLA 的仓库中进行一次这样的操作。

该项目采用了 Microsoft 开源行为准则。更多信息请参阅 行为准则常见问题 或联系 opencode@microsoft.com 以获取更多问题或评论。

商标

该项目可能包含项目、产品或服务的商标或徽标。授权使用 Microsoft 商标或徽标必须遵循并遵守 Microsoft 商标和品牌指南。在修改版本的项目中使用 Microsoft 商标或徽标不得引起混淆或暗示 Microsoft 的赞助。任何第三方商标或徽标的使用均受其政策约束。

来源