mcpField
🧠
🧠 mcp.chroma

🧠 mcp.chroma

本地服务
github.com/volteditor数据库181 周前更新

关于 🧠 mcp.chroma

🧠 mcp.chroma 是用于通过 MCP 操作 ChromaDB 的服务,面向需要管理向量集合和文档的用户。它支持多种 ChromaDB 客户端类型,并提供集合与文档操作工具。

主要功能

  1. 01创建、列出和修改集合
  2. 02添加、查询和检索文档
  3. 03更新和删除文档
  4. 04支持四种 ChromaDB 客户端类型
  5. 05处理会话中的思路

适用场景

  1. 01管理向量数据库中的集合
  2. 02添加文档并检索相似内容
  3. 03查看或更新已存储文档

MCP 相关

该 MCP 服务向 MCP 客户端提供 ChromaDB 集合和文档管理工具,以及思路处理工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

🧠 mcp.chroma

用于向量嵌入、集合和文档管理的 ChromaDB MCP 服务。

Rust MCP ChromaDB

📋 概述

此 MCP 服务为使用 ChromaDB 提供接口。ChromaDB 是一个向量数据库,用于存储嵌入。它通过 MCP(模型-控制器-协议)接口提供的一组工具,支持对集合和文档执行操作。

✨ 功能

  • 📊 集合管理(创建、列出、修改、删除)
  • 📄 文档操作(添加、查询、获取、更新、删除)
  • 🧠 用于会话管理的思维处理
  • 🔌 多种客户端类型(HTTP、Cloud、Persistent、Ephemeral)

🚀 安装

克隆代码仓库并使用 Cargo 构建:

git clone https://github.com/yourusername/mcp-chroma.git
cd mcp-chroma
cargo build --release

🛠️ 使用方法

设置环境

在项目目录中创建 .chroma_env 文件,并填入配置参数:

CHROMA_CLIENT_TYPE=ephemeral
CHROMA_HOST=localhost
CHROMA_PORT=8000
运行服务
# Run with default configuration
./mcp-chroma

# Run with specific client type
./mcp-chroma --client-type http --host localhost --port 8000

# Run with persistent storage
./mcp-chroma --client-type persistent --data-dir ./chroma_data
可用的客户端类型
  1. Ephemeral:内存客户端(默认)
  2. Persistent:支持持久化的本地存储客户端
  3. HTTP:通过 HTTP 连接的远程客户端
  4. Cloud:托管云客户端

⚙️ 配置选项

选项环境变量描述默认值
--client-typeCHROMA_CLIENT_TYPE客户端类型(ephemeral、persistent、http、cloud)ephemeral
--data-dirCHROMA_DATA_DIR持久化存储目录None
--hostCHROMA_HOSTHTTP 客户端的主机None
--portCHROMA_PORTHTTP 客户端的端口None
--sslCHROMA_SSL对 HTTP 客户端使用 SSLtrue
--tenantCHROMA_TENANTCloud 客户端的租户None
--databaseCHROMA_DATABASECloud 客户端的数据库None
--api-keyCHROMA_API_KEYCloud 客户端的 API 密钥None
--dotenv-pathCHROMA_DOTENV_PATH.env 文件路径.chroma_env

🧰 工具

集合工具
  • chroma_list_collections:列出所有集合
  • chroma_create_collection:创建新集合
  • chroma_peek_collection:预览集合中的文档
  • chroma_get_collection_info:获取集合的元数据
  • chroma_get_collection_count:统计集合中的文档数
  • chroma_modify_collection:更新集合属性
  • chroma_delete_collection:删除集合
文档工具
  • chroma_add_documents:向集合添加文档
  • chroma_query_documents:搜索相似文档
  • chroma_get_documents:从集合中检索文档
  • chroma_update_documents:更新现有文档
  • chroma_delete_documents:从集合中删除文档
思维处理
  • process_thought:处理进行中会话里的思维

📝 示例

创建集合
{
  "collection_name": "my_documents",
  "metadata": {
    "description": "A collection of example documents"
  }
}
查询文档
{
  "collection_name": "my_documents",
  "query_texts": ["What are the benefits of vector databases?"],
  "n_results": 3
}

🔧 与 Claude 集成

你可以通过设置如下配置,将 MCP-Chroma 与 Claude 配合使用:

{
  "mcpServers": {
    "chroma": {
      "command": "mcp-chroma",
      "args": [
        "--client-type",
        "http",
        "--host",
        "localhost",
        "--port",
        "8000"
      ],
      "env": {
        "CHROMA_API_KEY": "<YOUR_API_KEY>"
      }
    }
  }
}

🖥️ 与 Cursor 集成

要将 MCP-Chroma 与 Cursor 配合使用,请将以下内容添加到 .vscode/mcp.json 文件中:

{
  "mcp": {
    "inputs": [
      {
        "type": "promptString",
        "id": "chroma_api_key",
        "description": "ChromaDB API Key",
        "password": true
      }
    ],
    "servers": {
      "chroma": {
        "command": "mcp-chroma",
        "args": [
          "--client-type",
          "http",
          "--host",
          "localhost",
          "--port",
          "8000"
        ],
        "env": {
          "CHROMA_API_KEY": "${input:chroma_api_key}"
        }
      }
    }
  }
}

📄 许可证

MIT 许可证

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。