关于 Microsoft Copilot Studio ❤️ MCP
Microsoft Copilot Studio ❤️ MCP 是一份实验指南,带领读者部署 MCP 服务并将其添加到 Microsoft Copilot Studio。示例服务可从三个网站获取不同类型的笑话,并以工具形式供 Agent 使用。
主要功能
- 01指导部署 Azure Web App
- 02创建 Power Platform Connector
- 03将 MCP 服务添加为 Agent 操作
- 04获取三类笑话及 Chuck Norris 分类
适用场景
- 01在 Copilot Studio 中构建笑话 Agent
- 02学习将 MCP 服务接入 Power Platform
- 03测试基于工具的笑话获取
MCP 相关
该项目展示如何部署 MCP 服务并将其接入 Microsoft Copilot Studio。示例服务向客户端提供笑话获取工具,包括 Chuck Norris、Dad 和 Yo Mama 笑话。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Microsoft Copilot Studio ❤️ MCP
欢迎参加 Microsoft Copilot Studio ❤️ MCP 实验。在本实验中,你将学习如何部署 MCP 服务,以及如何将其添加到 Microsoft Copilot Studio。
什么是 MCP?
模型上下文协议(MCP) 是一种开放协议,用于标准化应用程序向大模型提供上下文的方式,由 Anthropic 定义。MCP 提供了一种标准化方式,可将 AI 模型连接到不同的数据源和工具。借助 MCP,创作者可以将现有的知识服务器和 API 无缝集成到 Copilot Studio 中。
目前,Copilot Studio 仅支持工具。若要了解当前功能,请参阅 aka.ms/mcsmcp。目前存在一些已知问题和计划改进项,详见此处。
MCP 与连接器
何时使用 MCP?何时使用连接器?MCP 会取代连接器吗?
MCP 服务通过连接器基础设施提供给 Copilot Studio,因此这些问题并不适用。MCP 服务使用连接器基础设施,这意味着它们可以采用企业安全和治理控制,例如虚拟网络集成、数据丢失防护控制、多种身份验证方法——这些功能在此版本中均可用,同时还支持 AI 驱动的 Agent 实时访问数据。
因此,MCP 和连接器确实是强强联手。
先决条件
- Azure 订阅(已添加付款方式)
- 拥有 GitHub 帐户并已登录
- Copilot Studio 试用版或开发者帐户
- 已预配 Power Platform 环境
实验
若要部署此 MCP 服务并在 Microsoft Copilot Studio 中使用,需要完成以下操作:
- 基于模板创建新的 GitHub 存储库
- 部署 Azure Web App
- 创建 Power Platform 连接器
- 在 Microsoft Copilot Studio 中将 MCP 服务添加为操作
基于模板创建新的 GitHub 存储库
-
选择
Use this template -
选择
Create a new repository
-
选择正确的
Owner -
为其指定
Repository name -
你也可以选择为其填写
Description -
选择
Private -
选择
Create repository这需要一些时间。完成后,你将转到新创建的存储库。
警告
完成本实验中的步骤后,你将在 Azure 上运行一个可公开访问的 MCP 服务。通常不应如此。请务必在实验结束后删除 Azure Web App。
部署 Azure Web App
-
前往
portal.azure.com
-
将鼠标悬停在
Resource groups选项卡上,然后选择Create
-
点击
Subscription下拉菜单,然后从列表中选择你的订阅
-
点击
Resource group名称文本框,然后输入资源组名称,例如“jokesgrp”
-
选择
Region下拉菜单,然后选择离你最近的区域
-
点击
Review + create
-
点击
Create
-
选择
Go to resource group
-
选择
Create
-
点击
search box
-
输入
web app -
在 Web App 搜索结果中选择
Create button
-
选择
Web App
-
选择
Name文本输入框,然后输入 Web App 的名称,例如“wegotjokes”
-
选择
Runtime stack下拉菜单,然后选择Node 22 LTS
-
选择
Region下拉菜单,然后选择离你最近的区域
-
点击
Review + create
-
点击
Create
-
点击
Refresh以更新部署进度
-
部署完成后,选择
Go to resource
-
展开
Deployment选项卡
-
点击
Deployment Center
-
点击
Source下拉菜单,然后选择GitHub
-
选择
Authorize
-
选择
Continue
-
选择
Authorize AzureAppService
-
点击
Organization下拉菜单,然后选择你的组织
-
点击
Repository下拉菜单,然后从列表中选择你之前创建的 GitHub 仓库
-
点击
Branch下拉菜单,然后选择你的分支
-
保持其他设置为默认值,然后选择
Save
-
点击
Refresh以更新部署状态
-
确认部署已完成

创建 Power Platform 连接器
-
在左侧菜单中选择
More -
选择
Discover all按钮 -
在 Data 下,选择
Custom connectors旁边的pin icon,将其固定到左侧菜单 -
在左侧菜单中选择
Custom connectors -
选择
New custom connector -
选择
Create from blank
-
为连接器命名(例如
JokesMCP) -
选择蓝色的
Continue按钮 -
选择
Swagger editor开关
-
从此处复制 yaml 代码,并替换 Swagger editor 中的代码
-
在 Swagger editor 中,将
dummyurl.azurewebsites.net替换为你之前创建的 Web 应用的 URL。请务必移除https://以及azurewebsites.net之后的所有内容 -
选择
Create connector以创建连接器
在 Microsoft Copilot Studio 中将 MCP 服务添加为操作
现在,你已在 Azure 中运行 MCP 服务,并在 Power Platform 中拥有一个连接器。此步骤将介绍如何在 Microsoft Copilot Studio 中创建 Agent,并将 MCP 服务添加到该 Agent。
-
选择右上角的环境选择器
-
选择正确的环境
-
在左侧导航中选择
Create -
选择蓝色的
New agent按钮
-
在右上角选择
Skip to configure
-
将名称更改为
Jokester -
添加以下
Description一个专注于幽默的 Agent,仅在用户请求时提供简洁、引人入胜的笑话,并调整风格以符合用户的语气和偏好。它始终保持角色设定,避免重复,并过滤冒犯性内容,确保体验始终得体又风趣。 -
添加以下
Instructions你是一名讲笑话的助手。你的唯一职责是在用户请求时讲得体、巧妙又有趣的笑话。请遵循以下规则: * 仅当用户要求讲笑话或提出相关请求时才回复(例如“讲点有趣的”)。 * 根据用户的输入匹配其语气和幽默偏好,例如健康、黑色幽默、冷幽默、双关语、爸爸笑话等。 * 绝不脱离角色,也不提供与幽默无关的信息。 * 笑话应简洁,格式清晰。 * 避免冒犯性、歧视性或 NSFW 内容。 * 不确定用户的幽默偏好时,默认讲一个巧妙且适合所有人的笑话。 * 同一会话中不要重复笑话。 * 除非用户明确要求,否则不要解释笑话。 * 反应迅速、机智风趣。 -
在右上角选择
Create
-
启用生成式 AI
Orchestration
-
在
Knowledge部分禁用通用知识
-
在顶部菜单中选择
Actions
-
选择
Add an action
-
搜索你之前创建的连接器名称(本例中为
jokes)(见下方截图中的数字 1) -
选择
Jokes MCP server(见下方截图中的数字 2)
-
等待创建连接,然后在完成后选择
Next
-
将
Description for the agent to know when to use this action更改为以下文本:当用户要求讲笑话时触发此操作。它可以提供 Chuck Norris 笑话、爸爸笑话和“你妈妈”笑话。其余部分保留默认设置,例如最终用户身份验证,稍后会详细介绍。
-
选择
Add action,将操作添加到 Agent
-
在
Test your agent窗格中选择refresh icon
-
在
Test your agent窗格中发送以下消息:Can I get a Chuck Norris joke?你会看到一条消息,提示运行此操作需要额外权限。这是因为操作向导中设置了用户身份验证。
-
选择
Connect
这会打开一个新窗口,你可以在其中管理此 Agent 的连接。
-
选择
JokesMCP旁边的Connect
-
等待连接创建完成,然后选择
Submit
-
现在应该已连接,此时状态应显示为
Connected
-
关闭浏览器中的“管理连接”选项卡
现在你应该会返回 Jokester Agent 页面。
-
在
Test your agent窗格中选择refresh icon
-
在
Test your agent窗格中发送以下消息:Can I get a Chuck Norris joke?现在会显示一则 Chuck Norris 笑话,而不是提示需要额外权限。

-
在
Test your agent窗格中发送以下消息:Can I get a Dad joke?现在会显示一则 Dad 笑话。

-
在
Test your agent窗格中发送以下消息:Can I get a Yo Mama joke?现在会显示一则 Yo Mama 笑话。

至此,你已经在 Microsoft Copilot Studio 中运行了 Jokes MCP Server。本实验也到此结束!希望你喜欢本实验。请抽空填写我们的反馈表。
Jokes MCP Server 详情
这是一个基于 TypeScript SDK 构建的 MCP 服务。
使用此 MCP Server,你可以从以下网站获取笑话:
如果要在本地运行服务,请确保在代码库根目录中运行 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 开源行为准则。 如需了解更多信息,请参阅行为准则常见问题,或通过 [email protected] 联系我们,提出其他问题或意见。
商标
本项目可能包含项目、产品或服务的商标或徽标。经授权使用 Microsoft 商标或徽标时,必须遵守 Microsoft 商标与品牌指南。 在本项目的修改版本中使用 Microsoft 商标或徽标,不得造成混淆或暗示 Microsoft 提供了赞助。 任何第三方商标或徽标的使用均须遵守相应第三方的政策。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。