MCP.so
Sign In

Chroma MCP Server

@chroma-core

Basic information

Category

Databases

License

Apache-2.0

Transports

stdio

Author

chroma-core

About Chroma MCP Server

A Model Context Protocol (MCP) server implementation that provides database capabilities for Chroma

Chroma MCP Server config

Add this server to your MCP-compatible client using the configuration below.

{
  "mcpServers": {
    "chroma": {
      "command": "uvx",
      "args": [
        "chroma-mcp"
      ]
    }
  }
}

Chroma MCP Server tools

Tool list not available yet

This listing does not currently have a tool list to display. This does not mean the server has no tools; check its documentation for supported capabilities.

Fetch the live tool list by running this server in a temporary sandbox using the button above.

Overview

What is Chroma MCP Server?

Chroma MCP Server is an MCP server that provides data retrieval capabilities powered by Chroma, the open-source embedding database. It enables AI models to create collections over generated data and user inputs, and retrieve data using vector search, full text search, metadata filtering, and more. It is designed for developers building LLM apps that need memory and context.

How to use Chroma MCP Server?

The server can be used with Claude Desktop by adding it to claude_desktop_config.json using uvx with arguments specifying the client type (ephemeral, persistent, HTTP for self-hosted, or cloud). Configuration can also be done via environment variables. Example: {"chroma": {"command": "uvx", "args": ["chroma-mcp", "--client-type", "persistent", "--data-dir", "/path/to/data"]}}.

Key features of Chroma MCP Server

  • Flexible client types: ephemeral, persistent, HTTP, and cloud.
  • Create, modify, delete collections with optional HNSW configuration.
  • Add documents with metadata and custom IDs.
  • Query documents using semantic search with advanced filtering.
  • Full text search and metadata filtering capabilities.
  • Supports multiple embedding functions (default, cohere, openai, jina, voyageai, roboflow).

Use cases of Chroma MCP Server

  • Adding memory to LLM context windows.
  • Building shared knowledge bases for AI assistants.
  • Performing semantic search over document collections.
  • Managing and querying vector embeddings with metadata filters.

Frequently asked questions

1

What client types are supported?

The server supports ephemeral (in-memory for testing), persistent (file-based storage), HTTP (for self-hosted Chroma instances), and cloud (for Chroma Cloud, automatically connecting to api.trychroma.com).

2

How do I configure embedding functions?

Embedding functions are selected when creating a collection. Supported functions: default, cohere, openai, jina, voyageai, roboflow. For external APIs, set the environment variable `CHROMA_<API>_API_KEY` (e.g., `CHROMA_COHERE_API_KEY`). Embedding function persistence is supported from Chroma v1.0.0 onward; collections created with ≤0.6.3 do not persist the function.

3

How do I connect to Chroma Cloud?

Use `--client-type cloud` along with `--tenant`, `--database`, and `--api-key` arguments in the server configuration. Alternatively, set `CHROMA_TENANT`, `CHROMA_DATABASE`, and `CHROMA_API_KEY` environment variables. The cloud client automatically connects via SSL to api.trychroma.com.

4

What environment variables can I use?

Common variables: `CHROMA_CLIENT_TYPE`, `CHROMA_DATA_DIR` (persistent), `CHROMA_TENANT`, `CHROMA_DATABASE`, `CHROMA_API_KEY` (cloud), `CHROMA_HOST`, `CHROMA_PORT`, `CHROMA_CUSTOM_AUTH_CREDENTIALS`, `CHROMA_SSL` (HTTP). The server loads from a `.env` file (default `.chroma_env`) or system environment variables. Command-line arguments take precedence.

5

Is there a limit on data storage or collection size?

The README does not specify explicit limits. Persistent and cloud clients store data according to their backend (file system or Chroma Cloud), while ephemeral is in-memory and lost on restart.

Comments

More Databases MCP servers