在 Foundry Toolkit 中使用工具目录(Tool Catalog)连接工具和工具箱(Toolbox)

注意

工具箱(Toolbox)支持目前处于预览阶段,仅在 Foundry Toolkit 的预发布版本中可用。

智能体通常依赖多个工具。有些工具来自 Microsoft Foundry,有些作为本地模型上下文协议 (MCP) 服务器运行,还有些属于由其他团队管理的共享工具箱。Visual Studio Code 的 Foundry Toolkit 中的工具目录提供了一个统一位置,用于连接这些选项、将它们附加到智能体,并生成连接到工具箱的托管智能体示例。

在本文中,您将学习如何连接 Foundry 工具、注册本地 MCP 服务器、创建和使用工具箱,以及如何从工具箱搭建(scaffold)托管智能体示例,从而从智能体构建器(Agent Builder)过渡到可运行的代码。

工具箱是一个集中管理的工具集合,通过一个兼容 MCP 的端点公开。当多个智能体需要同一套受管工具和凭据时,请使用它。

Screenshot showing the Tool Catalog in Foundry Toolkit.

主要功能

功能 描述
连接 Foundry 工具 将 Foundry 项目中的各个工具添加到智能体构建器中的提示词智能体(prompt agents)中。
连接本地 MCP 服务器 为本地或远程智能体工作流注册 stdio、HTTP 或 SSE MCP 服务器。
附加工具箱 通过一个兼容 MCP 的端点重用集中管理的工具集合。
生成托管智能体示例 搭建一个连接到工具箱并公开响应协议(Responses protocol)的 Agent Framework Python 项目。
集中治理 将凭据、策略执行和可审计性保留在 Microsoft Foundry 中,而不是智能体代码中。

先决条件

开始之前,请确保您具备以下条件:

  • Visual Studio Code。
  • 已安装 Foundry Toolkit 扩展。
  • 拥有对 Microsoft Foundry 项目的访问权限。有关详细信息,请参阅 Foundry Toolkit for Visual Studio Code
  • 拥有查看或附加项目中工具和工具箱的权限。
  • 对于托管智能体示例,需要 Python 3.12 或更高版本,以及已通过 az login 登录的 Azure CLI。
注意

工具箱端点兼容 MCP。任何支持 MCP 的智能体运行时都可以使用工具箱,包括在 Foundry Toolkit 之外构建的智能体。

开始使用

工具目录支持多种将工具引入智能体的方法。请选择符合工具托管方式以及您希望如何在智能体之间共享工具的选项。以下部分将详细介绍每个选项。

选项 使用场景
Foundry 工具 您希望将 Foundry 项目中的单个工具添加到提示词智能体中。
本地 MCP 服务器 您希望使用在本地或自定义 MCP 端点上运行的服务器。
工具箱 您希望多个智能体共享同一套集中管理的工具、凭据和策略。

连接 Foundry 工具

当您想要将 Foundry 项目中的单个工具添加到智能体构建器中的提示词智能体时,请使用此选项。

  1. 活动栏 (Activity Bar) 中选择 Foundry Toolkit
  2. 我的资源 (My Resources) 下,展开 您的项目名称 > 工具 (Tools)
  3. 选择 工具 (Tools) 旁边的 + 图标以打开 工具目录 (Tool Catalog)
  4. 目录 (Catalog) 选项卡上,浏览可用工具。
  5. 选择您要使用的工具。
  6. 连接 (Connect) 对话框中,输入所需值,例如名称、端点、参数和身份验证设置。
  7. 选择 连接 (Connect)

连接创建后,该工具即可供您的智能体使用。

连接本地 MCP 服务器工具

注册一个在本地机器上或自定义远程端点上运行的 MCP 服务器。当您希望在开发期间测试 MCP 服务器或连接到未发布到 Foundry 项目的服务器时,请使用此选项。

  1. 活动栏 (Activity Bar) 中选择 Foundry Toolkit
  2. 我的资源 (My Resources) 下,展开 本地资源 (Local Resources) > 工具 (Tools)
  3. 选择 工具 (Tools) 旁边的 + 图标以打开 工具目录 (Tool Catalog)
  4. 自定义 (Custom) 选项卡上,选择以下选项之一:
    • 选择 编辑 mcp.json (Edit mcp.json) 以在 mcp.json 中定义服务器。
    • 选择 配置 (stdio) (Configure (stdio)) 以运行本地命令。
    • 选择 配置 (HTTP 或 SSE) (Configure (HTTP or SSE)) 以连接到远程端点。
  5. 保存或完成配置。

保存配置后,该 MCP 服务器将作为可用工具出现。

将工具添加到智能体(Agent)

通过工具目录连接工具后,将其附加到智能体构建器中的特定智能体,以便智能体可以在运行时调用它们。

  1. 打开 我的资源 (My Resources) > 您的项目名称 > 提示词智能体 (Prompt Agents) 下的现有智能体构建器,或在 开发者工具 (Developer Tools) > 构建 (Build) > 创建智能体 (Create Agent) 下创建一个新智能体。
  2. 游乐场 (Playground) 选项卡上的 工具 (Tool) 部分中,选择 +
  3. 选择工具 (Select a tool) 对话框中,选择预配置工具、目录工具或自定义工具。
  4. 配置工具选项。
  5. 选择 添加工具 (Add Tool)

该工具现已附加到智能体,可在执行期间使用。

创建新工具箱并在托管智能体中使用它

在 Foundry 项目中构建自定义工具箱,将相关工具分组在单个兼容 MCP 的端点后面,然后搭建一个使用它的托管智能体。

  1. 活动栏 (Activity Bar) 中选择 Foundry Toolkit
  2. 我的资源 (My Resources) 下,展开 您的项目名称 > 工具 (Tools)
  3. 选择 + 添加工具箱 (+ Add Toolbox) 图标以创建新工具箱。
  4. 构建自定义工具箱 (Build a Custom Toolbox) 选项卡上,输入工具箱名称和描述,添加工具,然后选择 发布 (Publish)
  5. 返回 工具 (Tools) 页面,找到您的新工具箱,然后选择 搭建代码模板 (Scaffold code template) 以创建一个连接到该工具箱的托管智能体。

Screenshot showing the Build a Custom Toolbox page in Foundry Toolkit with fields for the toolbox name, description, and selected tools.

提示

附加工具箱,而不是将相同的工具逐一连接到多个智能体。当工具箱所有者更新工具箱时,使用的智能体会自动获取更改,无需单独编辑智能体。

复制工具箱端点

创建工具箱后,您可以从 Foundry Toolkit 复制其兼容 MCP 的端点。

  1. 活动栏 (Activity Bar) 中选择 Foundry Toolkit
  2. 我的资源 (My Resources) 下,展开 您的项目名称 > 工具 (Tools)
  3. 工具箱 (Toolboxes) 选项卡上,找到您的工具箱。
  4. 端点 URL (Endpoint URL) 列中,复制该端点。

Screenshot showing the Toolboxes tab in Foundry Toolkit with a toolbox entry, endpoint URL, and Scaffold code template action.

端点 URL 值是工具箱的使用者端点。任何支持 MCP 的智能体运行时都可以使用此端点连接到该工具箱。

生成使用工具箱的托管智能体示例

Foundry Toolkit 可以搭建一个可运行的托管智能体项目,该项目已连接到工具箱。生成的项目使用 Agent Framework 并公开响应协议,因此您可以从智能体构建器过渡到代码、进行本地调试并重新部署到 Microsoft Foundry。

  1. 活动栏 (Activity Bar) 中选择 Foundry Toolkit
  2. 我的资源 (My Resources) 下,展开 您的项目名称 > 工具 (Tools) 并打开您要使用的工具箱。
  3. 选择 搭建代码模板 (Scaffold code template)
  4. 命令面板 (Command Palette) 中,在提示时选择一个项目文件夹。

生成的项目包含托管智能体入口点、部署文件以及一个 README.md,其中包含该项目的具体设置、运行和部署步骤。

本地运行

按照生成的 README.md 安装依赖项、配置环境变量并登录 Azure。然后,通过以下方式之一启动智能体:

  • 在 VS Code 中按 F5 并选择 调试本地智能体 HTTP 服务器 (Debug Local Agent HTTP Server)
  • 从终端运行 python main.py
提示

当您需要交互式 UI 来发送消息、查看工具调用并使用断点调试智能体行为时,请结合 F5 工作流使用 智能体检查器 (Agent Inspector)

部署

按照生成的 README.md 进行特定于搭建的部署步骤。您可以通过以下任一方式部署项目:

  • 打开 命令面板 (Command Palette),运行 Microsoft Foundry: 部署托管智能体 (Deploy Hosted Agent),并按照提示操作。
  • 活动栏 (Activity Bar) 中,选择 Foundry Toolkit,选择 部署到 Microsoft Foundry (Deploy To Microsoft Foundry),并按照提示操作。
  • 打开 GitHub Copilot Chat 并要求它将托管智能体部署到 Microsoft Foundry。Copilot 使用 microsoft-foundry 技能来构建 Docker 镜像、推送它并注册智能体。

生成的项目将托管智能体设置存储在 agent.yamlagent.manifest.yaml 中。

注意

工具箱 MCP 请求需要 Foundry-Features: Toolboxes=V1Preview 请求头。生成的智能体会为您处理此问题。如果未配置 Application Insights 连接,您可能会看到启动警告。智能体将继续正常运行。

© . This site is unofficial and not affiliated with Microsoft.