AndreasVolkmann
服务介绍
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 仅支持工具。要了解更多当前功能,请参阅 aka.ms/mcsmcp。存在一些已知问题和计划中的改进。这些内容列在 这里。
MCP 与连接器
何时使用 MCP?何时使用连接器?MCP 会取代连接器吗?
MCP 服务器通过连接器基础设施提供给 Copilot Studio,因此这些问题并不真正适用。MCP 服务器使用连接器基础设施意味着它们可以采用企业安全和治理控制,例如 虚拟网络 集成、数据丢失防护 控制、多种身份验证方法——所有这些都在此版本中可用——同时支持 AI 驱动代理的实时数据访问。
因此,MCP 和连接器实际上是 相辅相成 的。
前提条件
- Azure 订阅(已添加支付方式)
- 拥有 GitHub 账户并已登录
- Copilot Studio 试用或开发者账户
- 已配置 Power Platform 环境
实验
为了能够部署这个 MCP 服务器并在 Microsoft Copilot Studio 中使用它,您需要执行以下操作:
- 基于模板创建一个新的 GitHub 仓库
- 部署 Azure Web 应用
- 创建 Power Platform 连接器
- 在 Microsoft Copilot Studio 中将 MCP 服务器作为操作添加
基于模板创建一个新的 GitHub 仓库
-
选择
Use this template -
选择
Create a new repository
-
选择正确的
Owner -
给它一个
Repository name -
可选地,您可以为其提供一个
Description -
选择
Private -
选择
Create repository这可能需要一点时间。完成后,您将被重定向到新创建的仓库。
[!WARNING]
在完成本实验的所有步骤后,您将在 Azure 上运行一个公开可用的 MCP 服务器。理想情况下,您不希望这样。请确保在完成实验后删除 Azure Web 应用。
部署 Azure Web 应用
-
前往
portal.azure.com
-
将鼠标悬停在
Resource groups标签上并选择Create
-
单击
Subscription下拉菜单并从列表中选择您的订阅
-
单击
Resource group名称文本框并输入一个资源组名称,例如 "jokesgrp"
-
选择
Region下拉菜单并选择离您最近的区域
-
单击
Review + create
-
单击
Create
-
选择
Go to resource group
-
选择
Create
-
点击进入
搜索框
-
输入
web app -
在Web App搜索结果中选择
创建按钮
-
选择
Web App
-
选择
名称文本输入框并为Web App输入一个名称,例如"wegotjokes"
-
选择
运行时堆栈下拉菜单并选择Node 22 LTS
-
选择
区域下拉菜单并选择离您最近的区域
-
点击
审查 + 创建
-
点击
创建
-
点击
刷新以更新您的部署进度
-
部署完成后,选择
转到资源
-
展开
部署标签页
-
点击
部署中心
-
点击
源下拉菜单并选择GitHub
-
选择
授权
-
选择
继续
-
选择
授权 AzureAppService
-
点击
组织下拉菜单并选择您的组织
-
点击
仓库下拉菜单并从列表中选择您之前创建的 GitHub 仓库
-
点击
分支下拉菜单并选择您的分支
-
保持其他设置默认不变,然后选择
保存
-
点击
刷新以更新部署状态
-
验证部署是否完成

创建 Power Platform 连接器
-
在左侧菜单中选择
更多 -
选择
发现全部按钮 -
在数据项下,选择
自定义连接器旁边的图钉图标将其固定到左侧菜单 -
在左侧菜单中选择
自定义连接器 -
选择
新建自定义连接器 -
选择
从空白创建
-
给连接器命名(例如
JokesMCP) -
选择蓝色的
继续按钮 -
选择
Swagger 编辑器切换开关
-
从这里复制yaml代码,并替换Swagger编辑器中的代码
-
在Swagger编辑器中,将
dummyurl.azurewebsites.net替换为您之前部署的 Web App 的 URL。确保移除https://和azurewebsites.net之后的所有内容 -
选择
创建连接器以创建连接器
将 MCP 服务器作为操作添加到 Microsoft Copilot Studio
现在您已经在 Azure 中运行了一个 MCP 服务器,并且在 Power Platform 中有了可用的连接器。这一步是关于在 Microsoft Copilot Studio 中创建代理并将 MCP 服务器添加到该代理。
-
选择右上角的环境选择器
-
选择正确的环境
-
在左侧导航栏中选择
创建 -
选择蓝色的
新代理按钮
-
选择右上角的
跳过配置
-
将名称更改为
Jokester -
添加以下
描述text
一个专注于幽默的代理,仅在用户请求时提供简洁、引人入胜的笑话,根据用户的语气和偏好调整其风格。它保持角色一致性,避免重复,并过滤掉冒犯性内容,以确保始终合适且机智的体验。1. 添加以下Instructionstext
你是一个讲笑话的助手。你的唯一目的是在用户请求时提供恰当、机智且吸引人的笑话。请遵循以下规则:- 仅当用户要求讲笑话或相关内容(例如,“给我讲个有趣的事情”)时才回应。
- 根据用户的输入匹配其语气和幽默偏好——如干净的、黑色幽默、冷笑话、双关语、老爸笑话等。
- 不要脱离角色或提供与幽默无关的信息。
- 保持笑话简洁且格式清晰。
- 避免冒犯性、歧视性或不适合工作的内容。
- 当不确定幽默偏好时,默认使用聪明且普遍适宜的笑话。
- 在同一会话中不要重复讲同一个笑话。
- 除非被明确要求,否则不要解释笑话。
- 回应迅速、机智。
-
点击右上角的
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更改为以下文本:text
当用户请求讲笑话时触发此动作。它可以提供查克·诺里斯笑话、老爸笑话和你妈笑话。其余部分保持默认设置,比如最终用户认证,这部分稍后会有更多介绍。
-
选择
Add action以将该动作添加到代理
-
在
Test your agent面板中选择刷新图标
-
在
Test your agent面板中发送以下消息:text
能给我讲个查克·诺里斯的笑话吗?这将显示一条消息,提示运行此动作需要额外权限。这是因为动作向导中的用户认证。
-
选择
Connect
这将打开一个新窗口,在其中可以管理此代理的连接。
-
选择
JokesMCP旁边的Connect
-
等待连接创建完成,然后选择
Submit
-
连接现在应该已经建立,因此状态应设置为
Connected
-
关闭浏览器中的“管理您的连接”标签页
现在你应该回到了Jokester代理屏幕。
-
在
Test your agent面板中选择刷新图标
-
在
Test your agent面板中发送以下消息:text
能给我讲个查克·诺里斯的笑话吗?这次将显示一个查克·诺里斯的笑话 - 而不是额外权限的消息。

-
在
Test your agent面板中发送以下消息:text
能给我讲个老爸笑话吗?这次将显示一个老爸笑话。

-
在
Test your agent面板中发送以下消息:text
能给我讲个你妈笑话吗?这次将显示一个你妈笑话。

这就是在 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 笑话。
已知问题和计划改进
对于 MCP 在 Microsoft Copilot Studio 中存在一些已知问题和计划改进。它们列在 这篇 Microsoft Learn 文章中。
贡献
该项目欢迎贡献和建议。大多数贡献需要你同意一份贡献者许可协议(CLA),声明你有权并且确实授予我们使用你的贡献的权利。详情请访问 https://cla.opensource.microsoft.com。
当你提交拉取请求时,CLA 机器人会自动确定你是否需要提供 CLA 并相应地装饰 PR(例如,状态检查、评论)。只需按照机器人提供的说明操作即可。你只需要在所有使用我们 CLA 的仓库中做一次。
该项目采用了 Microsoft 开源行为准则。更多信息请参阅 行为准则常见问题 或联系 opencode@microsoft.com 以获取更多问题或评论。
商标
该项目可能包含项目、产品或服务的商标或徽标。授权使用 Microsoft 商标或徽标必须遵循并遵守 Microsoft 商标和品牌指南。
在修改版本的项目中使用 Microsoft 商标或徽标不得引起混淆或暗示 Microsoft 的赞助。
任何第三方商标或徽标的使用均受其第三方政策的约束。