Chroma MCP Server
Official MCP server from Chroma: create vector collections, store documents, and query them with semantic search, locally or in Chroma Cloud.
- Skill Road
- Chroma MCP Server
Categories
Description
The Chroma MCP Server gives AI assistants such as Claude Code, Codex, or Cursor a memory based on the Chroma vector database. With it, the assistant can create collections, store documents with metadata, and later find them again through semantic search, full-text search, or metadata filters. The server is maintained by the Chroma team itself in the repository chroma-core/chroma-mcp and is licensed under Apache 2.0.
What is the Chroma MCP Server?
Chroma stores texts as embeddings, that is, as numerical vectors that express closeness in meaning. This lets you find passages not just through exact keywords but through what they mean. The MCP server makes these functions usable for language models: it runs as a small Python program that the MCP client starts over STDIO and forwards the model's calls to a Chroma instance. According to the README there are four client types: ephemeral in memory, persistent in a local data directory, over HTTP to a self-hosted instance, or to Chroma Cloud.
Which tools are available?
The README lists twelve tools. For managing collections there are chroma_list_collections, chroma_create_collection, chroma_peek_collection, chroma_get_collection_info, chroma_get_collection_count, chroma_modify_collection, and chroma_delete_collection. For the documents themselves there are chroma_add_documents, chroma_query_documents, chroma_get_documents, chroma_update_documents, and chroma_delete_documents. When creating a collection you can choose HNSW parameters for the search and an embedding function; according to the documentation, default, cohere, openai, jina, voyageai, and roboflow are supported.
What is it particularly useful for?
The greatest benefit lies in knowledge bases and long-term memory. If you store project notes, documentation, or earlier decisions in Chroma, you can ask the assistant about them in later sessions without copying everything into the context again. It is also handy for prototyping retrieval-augmented generation (RAG) applications, because collections and queries can be tried out in conversation before you turn them into code. Unlike a plain file index, Chroma keeps metadata and the embedding function per collection, so later queries stay consistent.
Setup
Setup runs through uvx: in the MCP client you register the command uvx with the argument chroma-mcp. Without further options an ephemeral client starts. With --client-type persistent and --data-dir you define a lasting data directory. For Chroma Cloud you pass tenant, database, and API key, and for your own instance host, port, and credentials. Alternatively, everything can be configured through environment variables or a .env file. API keys for external embedding functions follow the pattern CHROMA_COHERE_API_KEY.
Security and privacy
With chroma_delete_collection and chroma_delete_documents the assistant can remove data permanently. For first experiments use the ephemeral client or a test directory. Keys in the arguments of the client configuration are acceptable on your own machine, but a .env file with restricted permissions is better. Documents processed by an external embedding service leave your machine. And whatever the assistant retrieves from Chroma enters the model's context and therefore reaches the model provider.
Costs
The server is open source. Chroma itself can be run free of charge. For Chroma Cloud, the official pricing page lists a free Starter plan with starting credit, usage-based billing by storage, write, and query operations, as well as Team and Enterprise plans; see Chroma's pricing page for details.
Who is the Chroma MCP Server for?
It is worthwhile for developers who want to give their assistant a searchable memory or quickly try out RAG ideas. If you use a different vector database, you need its own server. Also note: the repository was last updated in September 2025; the feature set is compact, and ongoing expansion is not currently evident.
Requirements
The Python tool uv (for uvx) and an MCP client with STDIO support, such as Claude Code, Codex, Cursor, or Claude Desktop. For Chroma Cloud, an account with tenant, database, and API key.
Installation instructions
With the Chroma MCP Server, an AI assistant creates vector collections and searches them semantically. This guide leads from installation to the first query.
Step 1: Check the prerequisites
You need the Python tool uv so that the uvx command is available, and an MCP client with STDIO support, such as Claude Code, Codex, Cursor, or Claude Desktop. For Chroma Cloud you also need tenant, database name, and API key.
Step 2: Register the server
In your client, register a STDIO server with the command uvx and the argument chroma-mcp. Without further options an ephemeral client starts whose data disappears when it ends. That is ideal for trying things out.
Choose a client type
For lasting data, add the arguments --client-type persistent and --data-dir with an absolute path. For Chroma Cloud use --client-type cloud with --tenant, --database, and --api-key, and for your own instance --client-type http with host, port, and credentials. Alternatively, set environment variables such as CHROMA_CLIENT_TYPE or a .env file that you include with --dotenv-path.
Pick an embedding function
When creating a collection the assistant chooses an embedding function, such as default, openai, or cohere. For external services, store the key as CHROMA_OPENAI_API_KEY or CHROMA_COHERE_API_KEY. The choice is saved in the collection and reused in later queries.
Step 3: Test a first query
Ask the assistant to create a collection, store three text passages, and then ask a question in its own words. Use chroma_peek_collection to check what was actually stored.
Work safely
Delete tools remove data permanently. Confirm such calls one by one and begin with test data. Do not put secrets into collections that go to external embedding services.
uvx chroma-mcp
Authentication
None locally; for Chroma Cloud an API key, tenant, and database; for self-hosted instances custom credentials. Passed as an argument or environment variable.
Required access permissions
Reading, creating, changing, and deleting collections and documents in the configured Chroma instance.
Transmitted or stored data
The server runs locally. Documents and query results enter the AI client context; with external embedding functions, texts are sent to the respective service, and with Chroma Cloud to Chroma servers.
Security risks
Delete tools remove collections and documents permanently; API keys can sit in the client configuration; sensitive content can reach embedding services or the model provider.
License and costs
- License
- Apache-2.0
- Cost
- free
The server is open source (Apache-2.0). Costs arise at most for Chroma Cloud: a free Starter plan, usage-based billing, and Team and Enterprise plans according to Chroma's official pricing page.
Alternatives
Not recorded yet.
At a glance
- Provider
- Chroma
- Status
- Official server
- Deployment
- Local
- Current version
- Not recorded yet.
- GitHub stars
- 599
- Last reviewed
- 15.10.2026
Repository and documentation
Categories
Supported clients
Related guides
Guides and background related to this entry.
Set up Airbyte Agent MCP
Set up Airbyte Agent MCP: connect the hosted server in Claude Code, Cursor, or Claude Desktop, sign in connectors, and run first read-only queries.
23.10.2026
Setting up Laravel Boost
Install Laravel Boost in a Laravel application and connect it to Claude Code, Cursor, or Codex.
29.09.2026
Setting up the Financial Statements Skill: Analyze balance sheets via AI
The Financial Statements Skill calculates ratios from statements. This guide explains input quality, review, and limits.
18.09.2026
Work with spreadsheets using the Spreadsheet Skill
Spreadsheet Skill guide for safely editing workbooks, preserving formulas, handling sensitive data, and choosing openpyxl or XlsxWriter.
10.09.2026