Gene Library Courses Download Pricing Contact Sign in
chroma logo
databases Official Website

Chroma MCP Server – Vector Memory Database

Chroma's official MCP server gives AI applications database capabilities backed by Chroma, the open-source embedding database. Use it to create and manage collections, add and update documents, retrieve records, and query knowledge with semantic search, full-text search, and metadata filtering.

#vector-database#semantic-search#memory

Overview

Chroma MCP is the official Model Context Protocol server for self-hosting AI
access to Chroma. It lets MCP-compatible clients use Chroma as a memory and
retrieval layer, giving agents a structured way to store generated context,
user-provided documents, project notes, and other searchable knowledge.

What the MCP server enables

The server provides collection and document tools backed by Chroma. An AI agent
can:

  • Create, list, inspect, modify, and delete collections.
  • Configure HNSW parameters and choose embedding functions when creating
    collections.
  • Add documents with metadata, custom IDs, and embeddings.
  • Query documents with semantic search and advanced filtering.
  • Retrieve documents by IDs or metadata filters.
  • Peek at sample documents and inspect collection counts.
  • Update document content, metadata, or embeddings.
  • Delete specific documents from a collection.
  • Use full-text search, metadata filtering, and document-content filtering.

Chroma MCP supports several client modes. Ephemeral mode is useful for testing,
persistent mode stores data in a local directory, HTTP mode connects to a
self-hosted Chroma instance, and cloud mode connects to Chroma Cloud at
api.trychroma.com.

When to use it

Use Chroma MCP when an AI agent needs persistent or temporary retrieval memory.
Practical examples include building a local knowledge base, indexing project
notes, storing conversational memory for an assistant, testing retrieval
behavior during RAG development, connecting to a self-hosted Chroma deployment,
or giving a coding agent searchable context over generated and user-provided
documents.

Connection and authentication

The official command is uvx chroma-mcp. Without extra options it starts an
ephemeral client for testing and development. Persistent mode adds
--client-type persistent --data-dir <path>. Chroma Cloud mode uses
--client-type cloud --tenant <tenant> --database <database> --api-key <key>.
HTTP mode uses --client-type http with host, port, SSL, and custom-auth
options for a self-hosted Chroma instance.

The server also supports environment-variable configuration. Common variables
include CHROMA_CLIENT_TYPE, CHROMA_DATA_DIR, CHROMA_TENANT,
CHROMA_DATABASE, CHROMA_API_KEY, CHROMA_HOST, CHROMA_PORT,
CHROMA_CUSTOM_AUTH_CREDENTIALS, CHROMA_SSL, and CHROMA_DOTENV_PATH.

Key considerations

Chroma MCP can delete collections and documents, so write and delete operations
should be reviewed when using shared or production data. For local development,
ephemeral mode does not persist data. Persistent mode stores data on the local
filesystem and requires a stable data directory. Cloud and HTTP modes require
network access and credentials for the target Chroma instance. External
embedding functions such as OpenAI, Cohere, Jina, Voyage AI, or Roboflow need
provider-specific API keys using the documented CHROMA_<PROVIDER>_API_KEY
naming convention, preferably loaded from a secured dotenv path.

Supported Transports

stdio

Command: uvx

Args:

  • chroma-mcp

stdio

Command: uvx

Args:

  • chroma-mcp
  • --client-type
  • persistent
  • --data-dir
  • ${CHROMA_DATA_DIR}

stdio

Command: uvx

Args:

  • chroma-mcp
  • --client-type
  • cloud
  • --tenant
  • ${CHROMA_TENANT}
  • --database
  • ${CHROMA_DATABASE}
  • --api-key
  • ${CHROMA_API_KEY}

stdio

Command: uvx

Args:

  • chroma-mcp
  • --client-type
  • http
  • --host
  • ${CHROMA_HOST}
  • --port
  • ${CHROMA_PORT}
  • --ssl
  • ${CHROMA_SSL}
  • --custom-auth-credentials
  • ${CHROMA_CUSTOM_AUTH_CREDENTIALS}

Frequently Asked Questions

When should an AI agent use the Chroma MCP server?
Use it when an agent needs memory or retrieval backed by Chroma, such as storing project context, creating searchable knowledge bases, testing RAG behavior, querying documents semantically, or connecting to a self-hosted or cloud Chroma database.
What does the Chroma MCP server add to an AI agent's capabilities?
It gives the agent Chroma-backed database tools for creating collections, adding and updating documents, retrieving records, and searching with semantic search, full-text search, metadata filters, and document-content filters.
What can an AI agent access or manage through Chroma MCP?
The agent can manage Chroma collections and documents, including creating, listing, inspecting, modifying, and deleting collections, adding and updating documents, retrieving documents, peeking at samples, counting records, and querying stored content.
How is authentication configured for the Chroma MCP server?
Ephemeral and local persistent modes do not require Chroma Cloud credentials. Chroma Cloud mode uses CHROMA_TENANT, CHROMA_DATABASE, and CHROMA_API_KEY. HTTP mode can use CHROMA_CUSTOM_AUTH_CREDENTIALS for a self-hosted Chroma instance, and external embedding providers require CHROMA_<PROVIDER>_API_KEY variables.
Which transport should be used for the Chroma MCP server?
Use local stdio with `uvx chroma-mcp`. Choose ephemeral mode for temporary testing, persistent mode for local durable storage, cloud mode for Chroma Cloud, and HTTP mode for a self-hosted Chroma server.