Azure Functions 的 MCP 工具绑定概述

模型上下文协议(MCP)是一种客户端-服务器协议,旨在使语言模型和代理能够更有效地发现和使用外部数据源和工具。

重要

Azure Functions MCP 扩展目前以预览版提供。 在扩展正式发布之前,你可能需要对触发器和绑定 API 进行更改。
应避免在生产应用中使用预览版扩展。

Azure Functions MCP 扩展允许使用 Azure Functions 创建远程 MCP 服务器。 函数应用通过公开一组作为 MCP 工具触发器函数实现的终结点来实现远程 MCP 服务器。 MCP 客户端(如语言模型和代理)可以查询和访问这些工具来执行特定任务,例如存储和访问代码片段。 MCP 客户端还可以订阅应用,以接收有关公开工具更改的通知。

重要

MCP 扩展目前不支持 PowerShell 应用。

先决条件

  • 需要 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 服务器的当前版本。

在远程 MCP 服务器中创建工具终结点