chroma_create_collectionLABSCO SUMMARY
Not a note store — a record of what was discussed, what changed, and whether the fix held.
The distinctive move is the validation loop: a chat is logged with the diff and tool sequence it produced, test results are logged separately, and a lesson is only promoted into derived learnings once there is evidence behind it. That is what stops a memory store from filling with confident guesses. The setup cost is real — this expects hooks and companion commands wired into your workflow, not just a server in your client config. Start with persistent storage; the ephemeral mode is for trying it out and loses everything on restart.
What it is
A Python server over ChromaDB that gives an assistant persistent collections to write into and query: past conversations, indexed code, test results and the lessons promoted out of them.
What you get
- Collections managed directly: chroma_create_collection, chroma_list_collections, chroma_get_collection, chroma_peek_collection, chroma_rename_collection and chroma_delete_collection
- Documents added with or without your own IDs and metadata, through the chroma_add_document family
- chroma_query_documents for semantic search, with where-filter and document-filter variants when metadata should narrow the result
- chroma_get_documents_by_ids and chroma_get_all_documents for direct retrieval
- chroma_log_chat, which records an interaction with the code diff, tool sequence and a confidence score attached
- chroma_find_similar_thoughts, over recorded reasoning sessions rather than finished text
- Standing collections created for you at startup — chat_history_v1, codebase_v1, derived_learnings_v1, test_results_v1, thinking_sessions_v1 and validation_evidence_v1
- Semantic code chunking on function and class boundaries rather than fixed sizes
- Bidirectional links between a discussion and the code change it produced
- Companion commands for the workflow around it: record-thought, log-chat, analyze-chat, promote-learning, review-promote, log-test and validate-evidence
Requirements
Installed from PyPI as chroma-mcp-server, with a full extra that pulls in the embedding models. Choose the storage mode explicitly: ephemeral keeps everything in memory and loses it on restart, persistent writes to a data directory you name through CHROMA_DATA_DIR. No external account — Chroma runs locally.
Setup effort
One command plus a key — pip install chroma-mcp-server, then supply credentials
USE CASES
Getting back the context of a session from last week
Search the chat history collection for the discussion, and follow the link to the code change it produced.
Asking about code that has already been indexed
Semantic search over chunks split on function and class boundaries, so results are whole units rather than fragments.
Keeping only the lessons that proved out
Promote a derived learning once the test evidence supports it, instead of storing every plausible conclusion.
Storing decisions you want the assistant to remember
Write them into a collection of your own with metadata you can filter on later.
Narrowing a search that returns too much
Add a metadata where-filter or a document filter rather than raising the result count and reading through it.
27 tools
Listed in project docs. Your client may show a different list.
chroma_list_collectionschroma_get_collectionchroma_rename_collectionchroma_delete_collectionchroma_peek_collectionchroma_add_documentchroma_add_document_with_idchroma_add_document_with_metadatachroma_add_document_with_id_and_metadatachroma_query_documentschroma_query_documents_with_where_filterchroma_query_documents_with_document_filterchroma_get_documents_by_idschroma_get_documents_with_where_filterchroma_get_documents_with_document_filterchroma_get_all_documentschroma_update_document_contentchroma_update_document_metadatachroma_delete_document_by_idchroma_delete_documents_by_where_filterchroma_delete_documents_by_document_filterchroma_sequential_thinkingchroma_find_similar_thoughtschroma_get_session_summarychroma_find_similar_sessionschroma_log_chatBEFORE YOU INSTALL
What to know first
Tools you get
27 tools named in the project's documentation.
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
Server setup
pip install chroma-mcp-serverMCP Clients
Cursor
{
"mcpServers": {
"chroma": {
"command": "uvx",
"args": [
"chroma-mcp-server"
],
"env": {
"CHROMA_CLIENT_TYPE": "persistent",
"CHROMA_DATA_DIR": "<YOUR_CHROMA_DATA_DIR>"
}
}
}
}