dify-mcp-client

dify-mcp-client

site icon
2025.04.11 94
PythonMCP 客户端Dify 插件开发效率
dify-mcp-client 是一个作为 Agent Strategy Plugin 的 MCP 客户端,用于连接 MCP 服务器并将工具、资源和提示列表转换为 Dify 工具。它允许选定的 LLM 查看这些工具的名称、描述和参数类型,并通过 ReAct 循环(Reason → Act → Observe)调用这些工具。该插件支持多 SSE 服务器连接,并提供了配置 GUI 输入字段的功能。
View on GitHub

Overview

基本能力

产品定位

dify-mcp-client 是一个 MCP 客户端插件,用于在 Dify 平台上连接 MCP 服务器,扩展 LLM 的工具调用能力。

核心功能

  • 将 MCP 服务器的工具、资源和提示列表转换为 Dify 工具。
  • 支持多 SSE 服务器连接。
  • 提供配置 GUI 输入字段,方便用户配置 MCP 服务器连接信息。
  • 支持 ReAct 循环(Reason → Act → Observe)调用工具。

适用场景

  • 在 Dify 平台上扩展 LLM 的工具调用能力。
  • 需要连接多个 MCP 服务器的场景。
  • 开发者在 Dify 平台上开发自定义插件时使用。

工具列表

  • mcpReAct.py: 主插件文件,包含 MCP 客户端功能。
  • mcpReAct.yaml: 插件配置文件,定义 GUI 输入字段。
  • mcp-proxy: 用于将 stdio MCP 服务器转换为 SSE MCP 服务器的工具。

常见问题解答

问题: 安装插件时遇到 plugin verification has been enabled, and the plugin you want to install has a bad signature 错误。 解决方案: 在 /docker/.env 配置文件中添加 FORCE_VERIFYING_SIGNATURE=false,然后重启 Dify 服务。

使用教程

使用依赖

  • Python 3.12+
  • Node.js(用于 mcp-proxy)

安装教程

  1. 从 GitHub 安装插件:
  2. 在 Dify 的 PLUGINS 页面,输入以下 GitHub 仓库名称: https://github.com/3dify-project/dify-mcp-client/
  3. 从 .difypkg 文件安装插件:
  4. 从 Releases 页面下载合适的 .difypkg 文件。
  5. 在 Dify 的 PLUGINS 页面,选择 "Install from Local Package File"。

调试方式

  1. 启动插件: bash python -m main
  2. 打包插件: bash dify plugin package ./ROOT_OF_YOUR_PROJECT

配置示例

{
    "mcpServers": {
        "name_of_server1": {
            "url": "http://host.docker.internal:8080/sse"
        },
        "name_of_server2": {
            "url": "http://host.docker.internal:8008/sse"
        }
    }
}

许可证

该项目遵循 Apache-2.0 开源许可条款,请参阅 Apache-2.0 了解完整条款。