Chroma Embedding Database
chroma-core
Create collections and run semantic, full-text, and metadata search over the Chroma embedding database via the official Chroma MCP server.
- Installs
- 563
- Namespace
- chromadb
- Version
- >=0.2.0 <0.3.0
- Last attach
- reviewed1 months ago
Add to your mcp.json
{
"mcpServers": {
"chromadb": {
"command": "uvx",
"args": [
"chroma-mcp"
]
}
}
}Attach in a FrootAI play (fai-manifest)
mcp_scope:
attached:
- chromadbAuthentication
default ephemeral/persistent clients need no auth; for Chroma Cloud set CHROMA_CLIENT_TYPE=cloud with CHROMA_API_KEY + CHROMA_TENANT + CHROMA_DATABASE.
No credentials required.
Environment variables
| Variable | Required | Auth mode | Description |
|---|---|---|---|
| CHROMA_CLIENT_TYPE | no | any | Client backend: ephemeral (in-memory, default), persistent (file-based), http (self-hosted), or cloud (Chroma Cloud). |
| CHROMA_DATA_DIR | no | any | Directory for the persistent client's on-disk storage. |
| CHROMA_API_KEY | no | api-key | API key for Chroma Cloud (api.trychroma.com). Pass via env, never inline in args (doctrine #6). |
| CHROMA_TENANT | no | any | Chroma Cloud tenant id (cloud client). |
| CHROMA_DATABASE | no | any | Chroma Cloud database name (cloud client). |
| CHROMA_HOST | no | any | Host of a self-hosted Chroma instance (http client). |
| CHROMA_PORT | no | any | Port of a self-hosted Chroma instance (http client). |
Sample tools
chromadb.chroma_list_collectionsList all collections with pagination support.
chromadb.chroma_create_collectionCreate a new collection with optional HNSW configuration.
chromadb.chroma_add_documentsAdd documents with optional metadata and custom IDs.
chromadb.chroma_query_documentsQuery documents using semantic search with advanced filtering.
chromadb.chroma_get_documentsRetrieve documents by IDs or filters with pagination.
chromadb.chroma_delete_collectionDelete a collection and all of its documents.
chromadb.chroma_delete_documentsDelete specific documents from a collection.
Used in recipes
FAI cookbook recipes that attach chromadb.
Destructive-action audit
2 destructive tools — confirm per call
Each runs only when the trust policy allows it; under allowDestructive: false they prompt per call.
- chromadb.chroma_delete_collection
- chromadb.chroma_delete_documents
Destructive-action audit (X2.18): chroma_delete_collection and chroma_delete_documents are destructive (declared in destructive_tools) and confirm per call under the verified-publisher policy; chroma_modify_collection / chroma_update_documents mutate in place but are not delete-class.
Known limitations
- Runs via `uvx chroma-mcp`, so the host needs uv / Python available on PATH; the package is fetched and installed on first launch.
- A client type must be chosen: ephemeral is in-memory and lost on exit; persistent needs CHROMA_DATA_DIR; self-hosted http needs CHROMA_HOST/CHROMA_PORT; Chroma Cloud needs a CHROMA_API_KEY credential plus CHROMA_TENANT + CHROMA_DATABASE.
- Each collection persists its embedding function (default local model, or external cohere/openai/jina/voyageai providers requiring a CHROMA_<PROVIDER>_API_KEY); collections created on Chroma <=0.6.3 do not persist the embedding function.
Spec contributors
Maintainers who landed commits onmcp-specs/chromadb.json.
- pspsbali
Freshness
When this spec was last reviewed by a maintainer and last machine-validated against the live server.
- Spec last reviewed
- 1 months ago(2026-06-25)
- Auto-validated
- never