模型上下文协议(MCP)是一种客户端-服务器协议,旨在使语言模型和代理能够更有效地发现和使用外部数据源和工具。
重要
Azure Functions MCP 扩展目前以预览版提供。 在扩展正式发布之前,你可能需要对触发器和绑定 API 进行更改。
应避免在生产应用中使用预览版扩展。
Azure Functions MCP 扩展允许使用 Azure Functions 创建远程 MCP 服务器。 函数应用通过公开一组作为 MCP 工具触发器函数实现的终结点来实现远程 MCP 服务器。 MCP 客户端(如语言模型和代理)可以查询和访问这些工具来执行特定任务,例如存储和访问代码片段。 MCP 客户端还可以订阅应用,以接收有关公开工具更改的通知。
重要
MCP 扩展目前不支持 PowerShell 应用。
先决条件
- MCP 工具触发器依赖于 默认主机存储帐户 (
AzureWebJobsStorage
) 提供的 Azure 队列存储。 使用托管标识时,请确保函数应用在主机存储帐户中至少具有这些基于角色的权限:存储队列数据读取器和存储队列数据消息处理器。 - 在本地运行时,MCP 扩展需要 Azure Functions Core Tools 版本 4.0.7030 或更高版本。
- 需要 2.0.2 或更高版本的
Microsoft.Azure.Functions.Worker.Sdk
包。
安装扩展
小窍门
Azure Functions MCP 扩展仅支持 隔离的辅助角色模型。
通过采用首选方式安装此 NuGet 包 ,将扩展添加到项目:
Microsoft.Azure.Functions.Worker.Extensions.Mcp
安装捆绑包
MCP 扩展预览版是实验 性扩展捆绑包的一部分,该捆绑包是在 host.json 项目文件中指定的。
若要在应用中使用此实验捆绑包,请将项目 host.json 文件中的现有 extensionBundle
对象替换为以下 JSON 对象:
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle.Preview",
"version": "[4.*, 5.0.0)"
}
host.json 设置
本部分介绍版本 2.x 及更高版本中可用于此绑定的配置设置。 host.json 文件中的设置将应用于函数应用实例中的所有函数。 下面的示例 host.json 文件仅包含此绑定的 2.x 版及更高版本设置。 若要详细了解版本 2.x 及更高版本中的函数应用程序配置设置,请参阅 Azure Functions 的 host.json 参考。
{
"version": "2.0",
"extensions": {
"mcp": {
"instructions": "Some test instructions on how to use the server",
"serverName": "TestServer",
"serverVersion": "2.0.0"
}
}
}
资产 | DESCRIPTION |
---|---|
指示 | 描述客户端如何访问远程 MCP 服务器。 |
serverName | 远程 MCP 服务器的友好名称。 |
serverVersion | 远程 MCP 服务器的当前版本。 |