local-only server
The server can only run on the client’s local machine because it depends on local resources.
Chroma MCP 服务器
模型上下文协议 (MCP) 服务器实现,通过 Chroma 提供矢量数据库功能。该服务器支持语义文档搜索、元数据过滤以及具有持久存储的文档管理。
要求
- Python 3.8+
- Chroma 0.4.0+
- MCP SDK 0.1.0+
成分
资源
服务器通过Chroma的矢量数据库提供文档存储和检索:
- 存储包含内容和元数据的文档
- 将数据保存在
src/chroma/data
目录中 - 支持语义相似性搜索
工具
服务器实现 CRUD 操作和搜索功能:
文档管理
create_document
:创建新文档- 必需:
document_id
、content
- 可选:
metadata
(键值对) - 返回:成功确认
- 错误:已存在,输入无效
- 必需:
read_document
:通过 ID 检索文档- 必填:
document_id
- 返回:文档内容和元数据
- 错误:未找到
- 必填:
update_document
:更新现有文档- 必需:
document_id
、content
- 可选:
metadata
- 返回:成功确认
- 错误:未找到,输入无效
- 必需:
delete_document
:删除文档- 必填:
document_id
- 返回:成功确认
- 错误:未找到
- 必填:
list_documents
:列出所有文档- 可选:
limit
、offset
- 返回:包含内容和元数据的文档列表
- 可选:
搜索行动
search_similar
:查找语义相似的文档- 必填:
query
- 可选:
num_results
、metadata_filter
、content_filter
- 返回:具有距离分数的相似文档的排序列表
- 错误:过滤器无效
- 必填:
特征
- 语义搜索:使用 Chroma 的嵌入查找基于含义的文档
- 元数据过滤:按元数据字段过滤搜索结果
- 内容过滤:基于文档内容的附加过滤
- 持久存储:服务器重启后数据仍保留在本地目录中
- 错误处理:全面的错误处理,清晰的消息
- 重试逻辑:瞬时故障自动重试
安装
- 安装依赖项:
Copy
配置
克劳德桌面
将服务器配置添加到您的 Claude Desktop 配置中:
Windows: C:\Users\<username>\AppData\Roaming\Claude\claude_desktop_config.json
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Copy
数据存储
服务器将数据存储在:
- Windows:
src/chroma/data
- MacOS/Linux:
src/chroma/data
用法
- 启动服务器:
Copy
- 使用 MCP 工具与服务器交互:
Copy
错误处理
服务器针对常见场景提供了清晰的错误消息:
Document already exists [id=X]
Document not found [id=X]
Invalid input: Missing document_id or content
Invalid filter
Operation failed: [details]
发展
测试
- 运行 MCP Inspector 进行交互式测试:
Copy
- 使用检查器的 Web 界面可以执行以下操作:
- 测试 CRUD 操作
- 验证搜索功能
- 检查错误处理
- 监控服务器日志
建筑
- 更新依赖项:
Copy
- 构建包:
Copy
贡献
欢迎贡献!请阅读我们的贡献指南,了解详情:
- 代码风格
- 测试要求
- 拉取请求流程
执照
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。
This server cannot be installed
模型上下文协议服务器通过 Chroma 提供矢量数据库功能,实现语义文档搜索、元数据过滤和具有持久存储的文档管理。
- Requirements
- Components
- Features
- Installation
- Configuration
- Usage
- Error Handling
- Development
- Contributing
- License