home / mcp / chroma mcp server

Chroma MCP Server

MCP Server for ChromaDB integration into Cursor with MCP compatible AI models

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "djm81-chroma_mcp_server": {
      "command": "chroma-mcp-server",
      "args": [
        "--client-type",
        "ephemeral"
      ],
      "env": {
        "LOG_LEVEL": "INFO",
        "MCP_LOG_LEVEL": "INFO",
        "CHROMA_LOG_DIR": "/var/log/chroma",
        "CHROMA_DATA_DIR": "./my_data",
        "CHROMA_CLIENT_TYPE": "ephemeral",
        "MCP_SERVER_LOG_LEVEL": "INFO"
      }
    }
  }
}

Chroma MCP Server provides a persistent, searchable working memory that connects Chroma to the Model Context Protocol (MCP). You can automatically index code changes, log conversations with rich context, and retrieve relevant information across sessions, all while integrating with your IDE workflows.

How to use

Start the server in a local, single-machine environment or with persistent storage to retain data across restarts. You can run a lightweight in-memory instance for testing or enable persistent storage to keep your working memory across sessions.

How to install

Prerequisites: Ensure you have Python and pip installed on your system.

Install the MCP server package with Python’s package manager.

pip install chroma-mcp-server
```

```bash
pip install "chroma-mcp-server[full]"

Configuration and usage notes

Choose between in-memory and persistent data storage when starting the server. In-memory mode does not retain data after a restart, while persistent mode stores data to disk.

Cursor integration lets you customize how the MCP server is invoked within your project. You can configure environment variables to control client type, data directory, and logging levels.

Configuration snippets

{
  "mcpServers": {
    "chroma_ephemeral": {
      "type": "stdio",
      "name": "chroma",
      "command": "chroma-mcp-server",
      "args": [
        "--client-type",
        "ephemeral"
      ],
      "env": [
        {"name": "CHROMA_CLIENT_TYPE", "value": "ephemeral"}
      ]
    },
    "chroma_persistent": {
      "type": "stdio",
      "name": "chroma",
      "command": "chroma-mcp-server",
      "args": [
        "--client-type",
        "persistent",
        "--data-dir",
        "./my_data"
      ],
      "env": [
        {"name": "CHROMA_CLIENT_TYPE", "value": "persistent"},
        {"name": "CHROMA_DATA_DIR", "value": "./my_data"}
      ]
    }
  }
}

Security and maintenance notes

Use persistent storage only in trusted environments. Regularly monitor log output and ensure your data directories are secured with appropriate permissions.

Troubleshooting

If the server fails to start, check for missing data directories or insufficient permissions. Review the log output for hints about configuration issues and ensure the correct client type is used in the startup arguments.

Tools and capabilities

The MCP server exposes working memory tools to capture and retrieve development context, embed and manage functions, and automate learning promotions based on testing workflows.

Available tools

Working Memory Tools

Commands to capture and retrieve development context within MCP, enabling systematic memory of code, chats, and decisions.

Embedding Function Management

Tools to update and manage the metadata for embedding functions used by MCP collections.

Collection Setup Command

Utility to create and configure multiple MCP collections with consistent settings.

Auto-Promote Workflow

Automates learning promotions from validated changes and high-confidence entries.

Automated Test Workflow

Captures test failures, monitors fixes, and promotes validated learnings automatically.