Labsco
MCP SERVER

Chroma MCP Server

by djm81

A working memory for AI-assisted development — chat history, code and test results indexed in Chroma and searchable later.

Agent Memory
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