使用说明
项目简介
'dify_service MCP server' 是一个基于 Model Context Protocol (MCP) 构建的后端服务,旨在将 Dify 知识库集成到支持 MCP 协议的 LLM 客户端(如 Claude)中。通过此服务器,LLM 客户端可以利用 'query-knowledge' 工具查询 Dify 知识库,并获取知识库资源的相关信息,从而增强 LLM 的上下文理解和知识检索能力。
主要功能点
- 知识库查询工具 (query-knowledge): 允许 LLM 客户端通过发送查询请求到 Dify API,从而检索 Dify 知识库中的信息。
- 知识库资源访问 (dify://knowledge): 提供对 Dify 知识库的资源描述,告知 LLM 客户端该服务器可以访问 Dify 知识库。
- 标准 MCP 服务器实现: 遵循 MCP 协议规范,能够与任何兼容 MCP 协议的客户端进行通信。
安装步骤
- 克隆仓库:
git clone https://github.com/youqingkui/dify_service.git cd dify_service - 安装依赖:
uv sync - 配置环境变量:
- 在项目根目录下创建 '.env' 文件。
- 在 '.env' 文件中设置 Dify API 密钥和 API Base URL (可选,默认为 'https://api.dify.ai/v1'):
DIFY_API_KEY=YOUR_DIFY_API_KEY # 替换为你的 Dify API 密钥 DIFY_API_BASE=https://api.dify.ai/v1 # 可选,如果你的 Dify API Base URL 不是默认值,请修改
服务器配置 (MCP 客户端配置)
要将 'dify_service MCP server' 集成到 MCP 客户端(例如 Claude),你需要在客户端的配置文件中添加以下服务器配置信息。以下是 JSON 格式的配置示例,你需要根据你的 MCP 客户端的要求进行配置。
{ "mcpServers": { "dify_service": { // 服务器名称,可以自定义 "command": "uv", // 运行服务器的命令,这里使用 uv (uv 是一个快速的 Python 包安装器和运行器,你需要确保已安装 uv 并添加到环境变量) "args": [ "--directory", "/path/to/dify_service", // 替换为你的 dify_service 仓库的绝对路径 "run", "dify_service" // 运行 dify_service 包中的 main 函数 ] } } }
配置参数说明:
- '"dify_service"': 服务器名称,在客户端配置中用于标识该服务器,可以自定义。
- '"command": "uv"': 指定用于启动服务器的命令为 'uv'。请确保你的环境中已安装 'uv' 并可以通过命令行访问。如果使用其他方式运行,请相应修改此命令。
- '"args"': 启动服务器的参数列表。
- '"--directory"': 指定服务器代码所在的目录,这里需要替换为你的 'dify_service' 仓库的实际绝对路径。
- '"run"': 'uv run' 命令的子命令,用于运行指定的 Python 包。
- '"dify_service"': 指定要运行的 Python 包名称,这里指向 'dify_service' 包,uv 将会执行 'dify_service' 包中的 'main' 函数启动服务器。
Claude 客户端配置示例:
如果你使用 Claude 桌面客户端,你需要修改 'claude_desktop_config.json' 文件,该文件通常位于:
- MacOS: '~/Library/Application\ Support/Claude/claude_desktop_config.json'
- Windows: '%APPDATA%/Claude/claude_desktop_config.json'
将上述 JSON 配置添加到 'claude_desktop_config.json' 文件中的 '"mcpServers"' 字段中。
基本使用方法
- 启动服务器:
在终端中,进入 'dify_service' 仓库目录,运行以下命令启动服务器:
服务器成功启动后,将会在终端输出日志信息。uv run dify_service - 配置 MCP 客户端: 根据你的 MCP 客户端类型,按照上述“服务器配置”部分进行配置,确保客户端能够连接到 'dify_service MCP server'。
- 在 MCP 客户端中使用: 在支持 MCP 协议的 LLM 客户端中,你现在可以使用 'query-knowledge' 工具来查询 Dify 知识库。具体的调用方式取决于你的 MCP 客户端的界面和交互方式。通常,你可以在提示词中指示 LLM 使用 'query-knowledge' 工具,并提供查询关键词。
例如,在 Claude 中,你可以在对话中这样指示: '请使用 query-knowledge 工具查询关于 "人工智能发展趋势" 的信息。'
客户端会将这个请求发送到 'dify_service MCP server',服务器会调用 Dify API 进行知识库查询,并将结果返回给客户端,最终呈现给用户。
注意事项
- 确保你已经安装了 'uv',并且添加到系统的环境变量中,或者将上述配置文件中的 'command' 修改为你实际使用的 Python 运行命令。
- 替换配置中的 '/path/to/dify_service' 为你本地仓库的实际路径。
- 首次运行前,请务必配置正确的 Dify API 密钥。
信息
分类
AI与计算