工具可以帮助用户可以扩展 LLM 的能力,在 Dify 平台上创建更强大的 AI 应用。分为以下四种工具类型:

  • 插件(Plugins) - 对开发者更加友好,可扩展性更强的第三方服务扩展模块。详细说明请参考插件简介
  • 自定义工具(Custom Tools) - 用户可以导入自定义的 API 工具(OpenAPI 格式)。开发说明请参考快速接入工具
  • Workflow as Tool - 将 Dify 内构建好的工作流应用转为工具并在应用中调用。
  • MCP 服务器(HTTP) - 支持 HTTP 协议的 MCP 服务器。

添加工具节点

添加节点时,选择右侧的 “工具” tab 页。

配置工具节点

配置工具节点通常包含以下步骤:

  1. 授权工具:选择需要的工具类型,完成必要的授权配置
  2. 设置输入输出参数:配置工具所需的输入数据和输出格式

工具节点可以连接其它节点,通过变量处理和传递数据。

常规工具配置

对于插件、自定义工具和工作流工具,配置过程相对简单。系统会提供直观的配置界面,开发者只需按照页面指引设置输入参数和输出变量即可。这些工具通常有预定义的参数结构,配置起来比较直观。

MCP 工具

MCP 工具由于支持更复杂的数据结构,在配置上有一些特殊之处。当 MCP 工具的某个功能支持复杂数据类型(如对象、数组)时,系统会提供专门的配置界面来帮助处理这些复杂结构。

数据结构配置功能:

  • 结构查看器:可以直观地查看参数的数据结构要求
  • JSON 输入框:支持直接输入JSON格式的复杂数据
  • 类型验证:确保输入的数据格式符合工具要求

该功能可以与结构化输出配合使用。确保 LLM 能够返回格式规范、结构稳定的数据后,MCP 工具就能够基于这些数据执行精准的任务操作。

MCP 工具使用建议:

流程控制场景:适合执行特定的、明确定义的任务。您需要准确配置输入参数,工具会按照预设逻辑执行操作。

Agent 场景:如果你的任务比较复杂,需要 MCP 工具中的多个功能协同完成,建议在 Agent 应用类型中使用 MCP 工具。Agent 应用将自动发现和选择 MCP 工具内的合适功能,根据任务需要动态调用不同的操作。

高级功能

错误重试

针对节点发生的部分异常情况,通常情况下再次重试运行节点即可解决。开启错误重试功能后,节点将在发生错误的时候按照预设策略进行自动重试。你可以调整最大重试次数和每次重试间隔以设置重试策略。

  • 最大重试次数为 10 次
  • 最大重试间隔时间为 5000 ms

错误重试配置

异常处理

工具节点处理信息时有可能会遇到异常情况,导致流程中断。应用开发者可以参考以下步骤配置异常分支,在节点出现异常时启用应对方案,而避免中断整个流程。

  1. 在工具节点启用 “异常处理”
  2. 选择异常处理方案并进行配置

异常处理配置

需了解更多应对异常的处理办法,请参考异常处理

将工作流应用发布为工具

Workflow 类型应用支持发布为工具,便于被其它工作流内的节点所应用。

发布应用时需填写工具的名称和详细的输入参数。建议开发者仔细填写每个配置项,确保工具能够被其他工作流或 Agent 应用正确调用。