Chroma MCP Server
Chroma MCP servers enable AI models to interact with the Chroma embedding database for vector search, collection management, and document operations.
Overview
The Chroma MCP Server connects AI models to Chroma, the open-source embedding database for building Python or JavaScript LLM apps with memory. It provides standardized tools to create and manage collections, add/query documents via vector search and full-text search, and filter by metadata. Embedding throughput is often the real bottleneck at scale β Manticore Search's ONNX work shows how much headroom there is.
Created by:
Developed by Chroma
Key Features
Flexible Client Types
Ephemeral, persistent (file-based), HTTP for self-hosted, and Cloud client
Collection Management
Create, modify, delete; list with pagination; HNSW configuration
Document Operations
Add, query, get, update, delete; metadata filtering and full text search
Embedding Functions
Supports default, Cohere, OpenAI, Jina, VoyageAI, Roboflow; persists per-collection
Available Tools
Quick Reference
| Tool | Purpose | Category |
|---|---|---|
chroma_list_collections | List collections with pagination | Discovery |
chroma_create_collection | Create a new collection | Schema |
chroma_modify_collection | Update name or metadata | Schema |
chroma_delete_collection | Delete a collection | Schema |
chroma_add_documents | Insert documents with metadata/IDs | Write |
chroma_query_documents | Semantic query with filters | Read |
chroma_get_documents | Retrieve by IDs/filters | Read |
chroma_update_documents | Update content/metadata/embeddings | Write |
chroma_delete_documents | Remove documents | Write |
Detailed Usage
chroma_list_collectionsβΆ
List all collections with optional pagination parameters.
use_mcp_tool({
server_name: "chroma",
tool_name: "chroma_list_collections",
arguments: {
offset: 0,
limit: 20
}
});
chroma_create_collectionβΆ
Create a collection with optional metadata and HNSW configuration.
use_mcp_tool({
server_name: "chroma",
tool_name: "chroma_create_collection",
arguments: {
name: "my_collection",
metadata: { project: "docs" },
hnsw: { m: 16, efConstruction: 200 }
}
});
chroma_add_documentsβΆ
Add documents with optional metadata and custom IDs.
use_mcp_tool({
server_name: "chroma",
tool_name: "chroma_add_documents",
arguments: {
collection: "my_collection",
ids: ["doc-1", "doc-2"],
documents: [
"First document text",
"Second document text"
],
metadatas: [
{ source: "notes" },
{ source: "manual" }
]
}
});
chroma_query_documentsβΆ
Query documents using semantic search with advanced metadata filtering.
use_mcp_tool({
server_name: "chroma",
tool_name: "chroma_query_documents",
arguments: {
collection: "my_collection",
query_texts: ["pagination implementation"],
n_results: 5,
where: { source: "manual" }
}
});
chroma_get_documentsβΆ
Retrieve documents by IDs or metadata filters with pagination.
use_mcp_tool({
server_name: "chroma",
tool_name: "chroma_get_documents",
arguments: {
collection: "my_collection",
ids: ["doc-1"],
offset: 0,
limit: 10
}
});
Installation
{
"mcpServers": {
"chroma": {
"command": "uvx",
"args": [
"chroma-mcp",
"--client-type",
"ephemeral"
]
}
}
}
Persistent / Cloud / HTTP:
Configure clients via arguments:
Persistent: "args": ["chroma-mcp", "--client-type", "persistent", "--data-dir", "/path/to/data"]
Cloud: "args": ["chroma-mcp", "--client-type", "cloud", "--tenant", "your-tenant", "--database", "your-db", "--api-key", "your-api-key"]
HTTP: "args": ["chroma-mcp", "--client-type", "http", "--host", "your-host", "--port", "your-port", "--custom-auth-credentials", "your-credentials", "--ssl", "true"]
Embedding Function API Keys:
When using external embedding providers (Cohere, OpenAI, Jina, VoyageAI, Roboflow), set the corresponding API key environment variables per provider. Embedding function persistence requires Chroma v1.0.0+.
For secure local setup, pass --dotenv-path to load keys from a custom .env file.
Example: "args": ["chroma-mcp", "--dotenv-path", "/custom/path/.env"]
Sources
Related Articles & Guides
Airtable MCP Server
Airtable MCP servers enable AI models to interact with Airtable bases, providing capabilities for base management, record operations, field configuration, and structured data automation.
ClickHouse MCP Server
ClickHouse MCP servers enable AI models to interact with ClickHouse databases, providing capabilities for high-performance analytical queries, data warehousing, and real-time analytics.
ArangoDB MCP Server
ArangoDB MCP servers enable AI models to interact with ArangoDB databases, providing capabilities for document operations, graph queries, AQL queries, and multi-model data management.