Chroma MCP Server
A Model Context Protocol (MCP) server implementation that provides vector database capabilities through Chroma.
Overview
Chroma MCP Server is a Model Context Protocol (MCP) server implementation that provides vector database capabilities through Chroma, enabling semantic document search, metadata filtering, and document management with persistent storage.
To use Chroma MCP Server, start the server using the command uv run chroma and interact with it using MCP tools to create, read, update, and delete documents or to perform semantic searches.
- Semantic Search: Find documents based on meaning using Chroma's embeddings. - Metadata Filtering: Filter search results by metadata fields. - Content Filtering: Additional filtering based on document content. - Persistent Storage: Data persists in local directory between server restarts. - Comprehensive Error Handling: Clear messages for common errors. - Automatic Retry Logic: For transient failures.
- Managing academic papers and research documents.
- Implementing a semantic search engine for document retrieval.
- Storing and filtering documents based on metadata for various applications.
Add to your AI client
Use these steps to connect Chroma MCP Server in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.
Cursor
Add this to your .cursor/mcp.json file in your project root, then restart Cursor.
.cursor/mcp.json
{
"mcpServers": {
"chroma-privetin": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-chroma-privetin"
]
}
}
}Claude Desktop
Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
{
"mcpServers": {
"chroma-privetin": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-chroma-privetin"
]
}
}
}Claude Code
Add this to your project's .mcp.json file. Claude Code will detect it automatically.
.mcp.json (project root)
{
"mcpServers": {
"chroma-privetin": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-chroma-privetin"
]
}
}
}VS Code (Copilot)
Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.
.vscode/mcp.json
{
"servers": {
"chroma-privetin": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-chroma-privetin"
]
}
}
}Windsurf
Add this to your Windsurf MCP config file, then restart Windsurf.
~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"chroma-privetin": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-chroma-privetin"
]
}
}
}Cline
Open Cline settings, navigate to MCP Servers, and add this server configuration.
Cline MCP Settings (via UI)
{
"mcpServers": {
"chroma-privetin": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-chroma-privetin"
]
}
}
}FAQ
What programming language is required to run Chroma MCP Server?
Python 3.8+ is required to run the server.
Can I use Chroma MCP Server for large datasets?
Yes, it is designed to handle document storage and retrieval efficiently.
Is there a way to test the server's functionality?
Yes, you can use the MCP Inspector for interactive testing of CRUD operations and search functionality.7:["$","div",null,{"className":"container mx-auto flex flex-col gap-4","children":["$L26","$L27",["$","$L28",null,{"currentProject":{"id":1188,"uuid":"ba686563-457f-489f-96a1-7fbff9e4eacb","name":"chroma","title":"Chroma MCP Server","description":"A Model Context Protocol (MCP) server implementation that provides vector database capabilities through Chroma.","avatar_url":"https://avatars.githubusercontent.com/u/81558906?v=4","created_at":"2025-01-28T02:37:05.953Z","updated_at":"2025-02-23T07:20:33.000Z","status":"created","author_name":"privetin","author_avatar_url":"https://avatars.githubusercontent.com/u/81558906?v=4","tags":"chroma,vector-database,MCP-server","category":"research-and-data","is_featured":false,"sort":1,"url":"https://github.com/privetin/chroma","target":"_self","content":"$29","summary":"$2a","img_url":null,"type":null,"metadata":null,"user_uuid":null,"tools":null,"sse_url":null,"sse_provider":null,"sse_params":null,"is_official":false,"server_command":null,"server_params":null,"server_config":null,"allow_call":false,"is_innovation":false,"is_dxt":false,"dxt_manifest":null,"dxt_file_url":null,"is_audit":false},"randomProjects":[],"currentServerKey":"$undefined"}]]}]