使用说明
项目简介
'mcp.chroma' 是一个 MCP (Model Context Protocol) 服务器,它将 ChromaDB 向量数据库的功能通过 MCP 协议暴露给大语言模型 (LLM) 客户端。借助此服务器,LLM 可以利用 ChromaDB 存储和检索向量嵌入,进行文档管理和相似性搜索等操作,从而增强 LLM 的上下文处理能力。
主要功能点
- 集合管理:支持创建、列出、修改和删除 ChromaDB 集合。
- 文档操作:支持向 ChromaDB 集合中添加、查询、获取、更新和删除文档。
- 会话管理:内置简单的会话处理机制。
- 多种客户端类型:支持多种 ChromaDB 客户端连接方式,包括内存模式、本地持久化、HTTP 远程连接和云服务连接。
安装步骤
-
克隆仓库
git clone https://github.com/volteditor/mcp.chroma.git cd mcp.chroma -
构建服务器
确保已安装 Rust 和 Cargo 环境。执行以下命令进行编译:
cargo build --release编译成功后,可执行文件 'mcp-chroma' 将位于 'target/release' 目录下。
服务器配置
MCP 客户端需要配置服务器的启动命令和参数才能连接到 'mcp.chroma' 服务器。以下是不同场景下的服务器配置示例(JSON 格式):
基本配置 (Ephemeral 客户端 - 内存模式,无需额外 ChromaDB 服务):
{ "servers": { "chroma": { "command": "./target/release/mcp-chroma", "args": [] } } }
HTTP 客户端配置 (连接到远程 ChromaDB 服务):
如果你的 ChromaDB 服务运行在远程服务器或 Docker 容器中,可以使用 HTTP 客户端模式连接。
首先,确保 ChromaDB 服务已启动并监听在指定的主机和端口。然后,在 MCP 客户端配置中指定 'mcp-chroma' 服务器的启动命令和参数,包括客户端类型、主机和端口等信息。
{ "servers": { "chroma": { "command": "./target/release/mcp-chroma", "args": [ "--client-type", "http", "--host", "localhost", // 替换为你的 ChromaDB 服务主机地址 "--port", "8000" // 替换为你的 ChromaDB 服务端口 ] } } }
Persistent 客户端配置 (本地持久化存储):
使用本地持久化存储,数据将保存在指定目录。
{ "servers": { "chroma": { "command": "./target/release/mcp-chroma", "args": [ "--client-type", "persistent", "--data-dir", "./chroma_data" // 指定数据存储目录 ] } } }
Cloud 客户端配置 (连接到 Chroma Cloud 服务):
如果使用 Chroma Cloud 服务,需要配置租户 (tenant)、数据库 (database) 和 API 密钥。
{ "servers": { "chroma": { "command": "./target/release/mcp-chroma", "args": [ "--client-type", "cloud", "--tenant", "<YOUR_TENANT_ID>", // 替换为你的 Chroma Cloud 租户 ID "--database", "<YOUR_DATABASE_NAME>" // 替换为你的 Chroma Cloud 数据库名称 ], "env": { "CHROMA_API_KEY": "<YOUR_API_KEY>" // 替换为你的 Chroma Cloud API 密钥 } } } }
环境变量配置:
除了命令行参数,'mcp-chroma' 还支持通过环境变量进行配置。你可以创建 '.chroma_env' 文件,并在其中设置配置参数,例如:
CHROMA_CLIENT_TYPE=http CHROMA_HOST=localhost CHROMA_PORT=8000
基本使用方法
-
启动 MCP 服务器
根据你的配置需求,选择合适的启动命令运行 'mcp-chroma' 服务器。例如,使用默认配置(Ephemeral 客户端):
./target/release/mcp-chroma -
配置 MCP 客户端
在你的 MCP 客户端(例如 Claude, Cursor 等)中,根据上述 “服务器配置” 部分的说明,配置 'mcp-chroma' 服务器的连接信息。
-
使用工具
配置完成后,MCP 客户端将能够发现 'mcp.chroma' 服务器提供的工具。你可以通过客户端界面或指令调用这些工具,例如:
- 'chroma_list_collections': 列出所有集合
- 'chroma_create_collection': 创建新的集合
- 'chroma_add_documents': 向集合中添加文档
- 'chroma_query_documents': 查询集合中的文档
- ... 等等 (更多工具请参考仓库 'README.md' 文档)
具体工具的使用方法和参数,请参考仓库 'README.md' 文档中 “🧰 Tools” 和 “📝 Examples” 部分的说明。
信息
分类
数据库与文件