使用说明
项目简介
本项目 'weaviate_mcp-server-weaviate' 是一个基于 Model Context Protocol (MCP) 构建的服务器,它利用 Weaviate 向量数据库作为后端,为大型语言模型 (LLM) 客户端提供知识库检索和记忆存储功能。通过预定义的工具 (Tools),LLM 可以调用该服务器来搜索知识库中的信息或存储和检索用户对话记忆。
主要功能点
- 知识库检索 (Search Knowledge Base): 允许 LLM 客户端通过自然语言查询在 Weaviate 知识库中搜索相关信息。
- 记忆存储 (Store Memory): 允许 LLM 客户端将重要的对话信息或用户指令存储到 Weaviate 数据库中作为记忆。
- 记忆检索 (Find Memories): 允许 LLM 客户端通过查询检索之前存储的记忆,以便在对话中回顾和利用过往信息。
- 工具集成 (Tools): 通过 MCP 协议的工具机制,向 LLM 客户端暴露清晰定义的功能接口,方便 LLM 调用。
- 标准 MCP 服务器: 遵循 MCP 协议规范,易于与支持 MCP 的 LLM 客户端集成。
安装步骤
- 安装 'uv': 确保已安装 'uv' 包管理器。如果未安装,请参考 uv 文档 进行安装。
- 克隆仓库: 使用 'git clone' 命令克隆 'weaviate_mcp-server-weaviate' 仓库到本地。
- 配置 Claude Desktop (或其他 MCP 客户端): 如果使用 Claude Desktop 作为 MCP 客户端,需要修改其配置文件 'claude_desktop_config.json' (路径见 Prerequisites 部分) 来注册和配置该 MCP 服务器。
服务器配置 (MCP 客户端配置)
以下 JSON 配置信息需要在 MCP 客户端 (例如 Claude Desktop) 的配置文件中指定,用于告知客户端如何启动和连接 'weaviate_mcp-server-weaviate' 服务器。请注意,以下配置是客户端配置,不是服务器端的配置文件。
{ "mcpServers": { "mcp-server-weaviate": { // 服务器名称,客户端用此名称引用 "command": "PYTHON_PATH", // Python 解释器路径,例如 /usr/bin/python3 或 python "args": [ // 启动服务器的命令行参数 "-m", "src.server", // 运行 src/server.py 模块 "--weaviate-url", "YOUR_WEAVIATE_URL", // Weaviate 服务器 URL,例如 http://localhost:8080 "--weaviate-api-key", "YOUR_WEAVIATE_API_KEY", // Weaviate API 密钥 "--search-collection-name", "YOUR_SEARCH_COLLECTION", // 用于知识库搜索的 Weaviate Collection 名称,例如 knowledge_base "--store-collection-name", "YOUR_STORE_COLLECTION", // 用于记忆存储的 Weaviate Collection 名称,例如 memories "--openai-api-key", "YOUR_OPENAI_API_KEY" // OpenAI API 密钥 (用于文本向量化,如果使用 Cohere 则不需要) ], "env": { "PYTHONPATH": "PATH_TO_MCP_SERVER_WEAVIATE_DIRECTORY" // 'mcp-server-weaviate' 仓库的绝对路径 } } } }
参数说明:
- 'PYTHON_PATH': 您系统中 Python 解释器的完整路径。
- 'YOUR_WEAVIATE_URL': 您部署的 Weaviate 向量数据库的 URL 地址。
- 'YOUR_WEAVIATE_API_KEY': 访问 Weaviate 数据库所需的 API 密钥。
- 'YOUR_SEARCH_COLLECTION': 在 Weaviate 中用于存储知识库数据的 Collection 名称。
- 'YOUR_STORE_COLLECTION': 在 Weaviate 中用于存储记忆数据的 Collection 名称。
- 'YOUR_OPENAI_API_KEY': OpenAI API 密钥,用于文本向量化,如果使用 Cohere API 密钥,则可以不填。
- 'PATH_TO_MCP_SERVER_WEAVIATE_DIRECTORY': 您克隆的 'mcp-server-weaviate' 仓库在您本地文件系统中的绝对路径。
重要提示:
- 请将 'YOUR_WEAVIATE_URL', 'YOUR_WEAVIATE_API_KEY', 'YOUR_SEARCH_COLLECTION', 'YOUR_STORE_COLLECTION', 'YOUR_OPENAI_API_KEY' 和 'PATH_TO_MCP_SERVER_WEAVIATE_DIRECTORY' 替换为您的实际配置信息。
- 您需要预先部署 Weaviate 向量数据库,并创建指定的 Collection ('YOUR_SEARCH_COLLECTION', 'YOUR_STORE_COLLECTION')。可以使用仓库中提供的 'create-weaviate-collections.py' 脚本来辅助创建 Collection。
- 确保您已安装项目依赖,虽然 README 中没有明确说明依赖安装步骤,但通常 Python 项目需要使用 'pip install -r requirements.txt' 安装依赖包 (如果仓库中存在 'requirements.txt' 文件)。
基本使用方法
-
启动 MCP 服务器 (通常由 MCP 客户端如 Claude Desktop 自动启动)。
-
在支持 MCP 协议的 LLM 客户端中配置并连接到 'mcp-server-weaviate' 服务器。
-
LLM 客户端可以通过调用以下工具来与服务器交互:
- 'weaviate-store-memory': 存储记忆。输入参数 'information' (string) 为要存储的记忆内容。
- 'weaviate-find-memories': 查找记忆。输入参数 'query' (string) 为查询关键词。
- 'weaviate-search-knowledge': 搜索知识库。输入参数 'query' (string) 为查询关键词。
LLM 客户端会根据用户指令和对话上下文,智能地选择合适的工具并传递参数,从而利用 Weaviate 的知识库和记忆功能。
信息
分类
数据库与文件