Skip to main content
Glama

Chroma MCP Server

by djm81
CHANGELOG.md20.9 kB
# Changelog The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [0.2.28] - 2025-05-30 **Fixed:** - Fixed ONNX model CPU execution issues by ensuring `CHROMA_CPU_EXECUTION_PROVIDER` is properly handled for `default`/`fast` embedding functions. ## [0.2.27] - 2025-05-30 **Added:** - The Chroma MCP Server now automatically creates essential ChromaDB collections (e.g., `codebase_v1`, `chat_history_v1`, `derived_learnings_v1`, `thinking_sessions_v1`, `validation_evidence_v1`, `test_results_v1`) upon startup if they are not already present. This simplifies initial setup and ensures the server is ready for use without manual collection creation. ## [0.2.26] - 2025-05-29 **Fixed:** - Ensured `chroma-mcp-client` (and thereby the pytest plugin) correctly respects CPU execution settings for embedding models. `CHROMA_CPU_EXECUTION_PROVIDER` environment variable is now properly handled for ONNX models (`default`/`fast` embedding functions), defaulting to CPU unless explicitly set to `false`. `TOKENIZERS_PARALLELISM` is now defaulted to `false` for the `accurate` (SentenceTransformer) model when CPU execution is implied or the variable is not set, to prevent issues on systems without GPU/parallel processing capabilities. ## [0.2.25] - 2025-05-22 **Added:** - Improved `docs/integration/pytest_plugin_usage.md` with clearer instructions on dependency setup (`chroma-mcp-server[client]`), environment activation, and plugin verification steps (`pip list`, `pytest --trace-config`) for external projects. - Enhanced `pytest_plugin_usage.md` with more detailed examples for running `pytest --auto-capture-workflow` directly and via various `hatch run` scenarios. **Changed:** - Updated `scripts/test.sh` to use `hatch run chroma-mcp-client <command>` instead of `hatch run python -m chroma_mcp_client.cli <command>` for all client CLI calls. - Refined the `log-quality-check` command in `src/chroma_mcp_client/cli.py` to correctly handle coverage data separately and use the appropriate evidence creation and storage functions. - Simplified Mermaid diagrams (Figures 3, 4, 5) in `docs/getting_started_second_brain.md` by adjusting labels to ensure compatibility with `mmdc` for SVG generation. - Updated `docs/getting_started_second_brain.md` to include generated SVGs for Figures 1-6 and updated the corresponding Mermaid source code within the document to match the simplified versions used for SVG generation. **Fixed:** - Resolved multiple `TypeError` and `AttributeError` issues in `src/chroma_mcp_client/cli.py` and `tests/chroma_mcp_client/test_cli.py` related to the `log-quality-check` command. This included correcting function calls, parameter passing, mock setups, imports, and patch targets for `create_code_quality_evidence`, `store_validation_evidence`, and `collect_validation_evidence`. - Addressed `ValueError` during metadata storage in `store_validation_evidence` by serializing complex list fields (e.g., `code_quality_improvements`, `test_transitions`, `runtime_errors`) to JSON and storing `evidence_types` as a CSV string. - Fixed `AttributeError: 'ValidationEvidence' object has no attribute 'id'` by adding a default `id` field to the `ValidationEvidence` schema and removing explicit `id` assignment in `collect_validation_evidence`. - Resolved `AttributeError: 'ValidationEvidence' object has no attribute 'threshold'` by removing an incorrect reference in `store_validation_evidence`. - Corrected a test assertion in `tests/chroma_mcp_client/validation/test_evidence_collector.py` to expect a CSV string for `evidence_types`. - Ensured the `--auto-capture-workflow` functions correctly with both `scripts/test.sh` and `hatch test --cover -v`. ## [0.2.24] - 2025-05-21 **Added:** - Made the `--auto-capture-workflow` pytest plugin for test transition tracking distributable with the `chroma-mcp-server` package. - Created comprehensive `README.md` overviews for documentation subfolders: `docs/integration/`, `docs/logging/`, `docs/automation/`, `docs/rules/`, `docs/scripts/`, and `docs/usage/`. - Added new documentation page `docs/integration/pytest_plugin_usage.md` explaining how to use the newly distributable pytest plugin. **Changed:** - Updated the main project `README.md` and `docs/README.md` to include links to new documentation subfolder overviews and reordered existing links for better relevance. - Updated `docs/refactoring/local_rag_pipeline_plan_v4.md` and `docs/refactoring/shell_script_migration_plan.md` to reflect the integration of the `--auto-capture-workflow` pytest plugin. - Pinned `transformers` dependency to `~=4.41.0` in `pyproject.toml`. - Set `TOKENIZERS_PARALLELISM=false` for the `hatch-test` environment in `pyproject.toml` to resolve parallelism issues with tokenizers. **Fixed:** - Resolved `NameError: name 'Replicate' is not defined` that occurred during test runs by pinning the `transformers` dependency and disabling tokenizer parallelism. - Ensured the pytest plugin, specified via the `pytest11` entry point in `pyproject.toml`, is correctly loaded and recognized by `pytest` when tests are run via `hatch test`. **Removed:** - Removed `develop.py` script for interactive Hatch shell development, as it's being replaced by `hatch shell` ## [0.2.23] - 2025-05-21 **Security:** - Fixed potential PyPI token exposure in `src/chroma_mcp/dev_scripts/publish.py` by improving the sanitization logic in the `run_command` function. The function now explicitly redacts the argument following a `-p` flag before logging the command. ## [0.2.22] - 2025-05-21 **Fixed:** - Corrected `coverage.xml` output path in GitHub Actions workflow (`.github/workflows/tests.yml`) for proper Codecov integration. - Ensured `publish.py` handles `getpass` failures gracefully in non-interactive environments (e.g., CI). **Changed:** - Enhanced `publish.py` with an `--upload-retries` argument and verbose output for `twine` on retry attempts. - Updated `release.py` to include `--upload-retries` and to check if a version already exists on PyPI/TestPyPI before attempting to publish, skipping redundant uploads. - Updated documentation (including `docs/rules/testing-and-build-guide.md`, `docs/refactoring/shell_script_migration_plan.md`) to reflect deprecation of `build.sh`, `publish.sh`, `release.sh` and promote Python-based equivalents. ## [0.2.21] - 2025-05-21 **Changed:** - Removed `develop.py` script for interactive Hatch shell development, as it's being replaced by `hatch shell` - Updated Developer Guide to note deprecation of `curl` and `jq` in v0.3.0 ## [0.2.20] - 2025-05-21 **Added:** - Introduced a guided release process in `src/chroma_mcp/dev_scripts/release.py` with interactive flags (`--yes`, `--skip-testpypi`, `--test-only`, `--skip-tests`, `--skip-build`) and automated TestPyPI and Production publication via `hatch run publish-mcp`. - Implemented enhanced changelog insertion logic in `release.py` to insert new entries before existing ones. **Changed:** - Updated `TestWorkflowManager.setup_git_hooks` in `src/chroma_mcp_client/validation/test_workflow.py` to use `hatch test --cover -v` for pre-push, `hatch run chroma-mcp-client index` for post-commit indexing, and `chroma-mcp-client check-test-transitions` for transition checks. ## [0.2.19] - 2025-05-21 **Added:** - Extracted `get_project_root()` into a dedicated `project_root.py` module under `src/chroma_mcp/dev_scripts/`, and updated `build.py`, `develop.py`, `release.py`, and `publish.py` to import from it for cleaner dependencies. - Completed migration of development scripts by removing the deprecated `test.py` and adding comprehensive unit tests for `build.py`, `develop.py`, `release.py`, and `publish.py` in `tests/scripts/`. **Changed:** - Updated unit tests under `tests/scripts/` to align with the new `get_project_root()` implementation and consolidated test execution via `hatch test`. ## [0.2.18] - 2025-05-17 **Added:** - Added test artifacts organization with dedicated `logs/tests/` directory structure for JUnit XML reports, coverage data, and workflow tracking files. - Added automatic cleanup of test artifacts after successful processing to reduce clutter. - Updated coverage configuration in pyproject.toml to store `.coverage` file and HTML reports in the `logs/tests/coverage/` directory. - Implemented automatic log rotation to remove log files older than the specified retention period (default 7 days). - Restored Git integration documentation in getting_started.md and developer_guide.md with instructions for automatic codebase indexing using Git hooks. **Fixed:** - Fixed critical bug in TestWorkflowManager's `cleanup_processed_artifacts` method to properly clean up test artifacts. - Enhanced cleanup logic to only remove files that have been successfully processed. - Added safety checks to prevent accidental removal of important data. ## [0.2.17] - 2025-05-17 **Added:** - Added `chroma-mcp-client` command as a replacement for `chroma-client` for better naming consistency. **Changed:** - Deprecated `chroma-client` command in favor of `chroma-mcp-client`. The old command will be removed in version 0.3.0. - Updated all documentation and scripts across the repository to use `chroma-mcp-client` instead of `chroma-client`. - Implemented backward compatibility wrapper in `deprecated_cli.py` that shows a warning when using the old command. - Modified GitHub Actions workflow to use the new test artifact locations. All notable changes to the Chroma MCP Server will be documented in this file. ## [0.2.16] - 2025-05-17 **Fixed:** - Fixed critical bug in TestWorkflowManager's `setup_git_hooks` method to properly preserve existing hooks - Enhanced hook preservation logic to maintain both indexing and test transition functionality - Improved detection and handling of various hook configurations (empty, partial, complete) - Added comprehensive tests for different hook preservation scenarios - Ensured custom hook content is preserved when updating existing hooks ## [0.2.15] - 2025-05-17 **Added:** - Implemented robust Git hook preservation in `setup-test-workflow` to maintain existing functionality - Enhanced TestWorkflowManager to detect and append to existing post-commit hooks - Added automatic correlation between test transitions and chat history - Improved bidirectional linking between test results, code changes, and discussions - Added comprehensive documentation for the test-driven learning workflow setup - Enhanced CLI integration with workflow management commands ## [0.2.14] - 2025-05-17 **Added:** - Implemented test-driven learning flow with structured test result capture - Added JUnit XML integration for automatic test result processing - Created `test_results_v1` collection with schema for tracking test execution outcomes - Implemented bidirectional linking between test results, code chunks, and discussions - Added validation evidence framework with scoring system for quality measurement - Developed `log-test-results` CLI command for capturing test transitions - Enhanced `analyze-chat-history` to incorporate validation scores - Added failure-to-success transition tracking for concrete learning validation - Implemented automated test-driven learning workflow with TestWorkflowManager - Added `setup-test-workflow` command to automatically create Git hooks for test tracking - Added `check-test-transitions` command to detect and promote successful test transitions - Enhanced `test.sh` script with `--auto-capture-workflow` flag for seamless integration - Created comprehensive unit tests for the new test workflow functionality - Enhanced "Second Brain" documentation with comprehensive diagrams and explanations - Improved Mermaid diagrams with consistent styling and color schema across all documentation - Added detailed documentation for sequential thinking process and tools - Enhanced documentation for bidirectional linking between code and chat history - Added comprehensive explanation of test-driven learning workflow - Created detailed `automated_test_workflow.md` guide for the new functionality **Improved:** - Enhanced `test.sh` script to generate structured test results for analysis - Updated promotion workflow to prioritize learnings with test validation evidence - Refined learning validation with weighted scoring for different evidence types - Standardized all Mermaid diagrams to use dark theme and consistent color coding - Better visualization of the three key learning flows in the Second Brain ecosystem - More detailed explanations of knowledge capture mechanisms ## [0.2.10] - 2025-05-15 **Changed:** - Updated license to MIT with Commons Clause extension to prevent direct competition - License now explicitly disallows selling Chroma MCP Server itself, offering it as a hosted service, or creating competing products based on Chroma MCP Server - Added clarification in README.md about allowed and disallowed uses of the software ## [0.2.9] - 2025-05-14 **Added:** - Comprehensive tool_usage_format.md documentation for standardized tool usage format - Enhanced test script with ability to specify test paths and Python versions - Improved MCP test flow documentation with updated tool parameters - Cross-references between log-chat.md and tool_usage_format.md **Fixed:** - Standardized tool_usage parameter format in auto_log_chat functionality - Enhanced auto_log_chat_impl.py for backwards compatibility - Updated IDE configuration files (.cursorrules, .windsurfrules, .github/.copilot-instructions.md) for consistency - Added reminder to manually reload MCP server in IDE after installation ## [0.2.8] - 2025-05-13 **Added:** - Enhanced interactive promotion workflow with auto-promote mode - Smart defaults for all fields in promotion process - Low confidence warnings for quality control - Improved bidirectional linking code selection - Testing and build guide for better development workflow - Documentation updates for new features **Fixed:** - More robust logging system for MCP server - Test suite improvements and refactoring - Enhanced error handling in promotion workflow ## [0.2.6] - 2025-05-12 **Added:** - Memory integration with sequential thinking architecture - Improved integration with derived learnings module ## [0.2.4] - 2025-05-12 **Added:** - Enhanced developer documentation for testing workflow - Improved error handling for chat history analysis ## [0.2.3] - 2025-05-12 **Fixed:** - Test stability improvements for client library - Fixed logging configuration issues ## [0.2.2] - 2025-05-11 **Added:** - Additional embeddings support for different model types - Improved session handling for sequential thinking ## [0.2.1] - 2025-05-10 **Fixed:** - Documentation improvements for new features - Fixed version dependencies for Python 3.10-3.12 compatibility ## [0.2.0] - 2025-05-09 **Added:** - Restructured documentation for better navigation - Improved embedding function handling in indexer - Enhanced logging setup with better configuration - Derived learnings promotion workflow - Memory integration tools for sequential thinking - More comprehensive test coverage **Fixed:** - Fixed client-side logging configuration - Test suite stability improvements ## [0.1.119] - 2025-05-07 **Added:** - RAG plan v4 implementation - Improved Mermaid diagram documentation - Enhanced thinking tools for cognitive architecture ## [0.1.116] - 2025-05-06 **Fixed:** - Improved verbosity flag handling in CLI - Fixed command-line interface documentation ## [0.1.115] - 2025-05-05 **Added:** - Enhanced working memory modules with sequential thinking integration - Improved context management for thinking tools ## [0.1.114] - 2025-05-05 **Added:** - Updated Chroma to version 1.x - Enhanced working memory capabilities - Automated chat logging feature with rich context - RAG chat history analysis tools - Second brain concept documentation - Improved CLI verbosity controls **Fixed:** - Release script for PyPI publishing - CLI log level consistency with environment variables - Post-commit path warnings ## [0.1.113] - 2025-05-04 **Added:** - Improved auto-chat logging feature with bidirectional linking - Entity extraction and linking for related concepts ## [0.1.112] - 2025-05-04 **Fixed:** - Fixed CLI log level handling to respect environment variables - Removed forced DEBUG level in indexing module ## [0.1.111] - 2025-05-03 **Added:** - Enhanced thinking tools for sequential reasoning - Fixed MCP CLI integration with new tools ## [0.1.109] - 2025-05-02 **Fixed:** - Improved test coverage to meet 80% target - Fixed post-commit hook reliability ## [0.1.106] - 2025-05-01 **Added:** - Improved thinking tools support with better embedding models - Enhanced sequential thinking architecture ## [0.1.105] - 2025-04-30 **Added:** - Client library for Chroma interactions with improved testing - Fixed test suite for Python 3.12 compatibility ## [0.1.102] - 2025-04-24 **Added:** - Support for Smithery integration and local execution - Updated RAG implementation plan for better performance ## [0.1.101] - 2025-04-23 **Added:** - Prepared local RAG implementation for embedding support - Improved documentation with architectural diagrams ## [0.1.100] - 2025-04-22 **Added:** - Added Windsurf rules support for AI assistants - Refactored AI rules for better maintainability ## [0.1.99] - 2025-04-18 **Added:** - Updated ChromaDB to version 1.x compatibility - Adjusted code and tests for new API structure ## [0.1.98] - 2025-04-14 **Added:** - Improved similar thoughts workflow - Fixed embedding issues in thinking tools - Added support for external embedding APIs ## [0.1.84] - 2025-04-13 **Fixed:** - Removed Optional[T] from tool arguments for compatibility - Improved refactoring plan with clearer architecture ## [0.1.82] - 2025-04-12 **Fixed:** - Increased test coverage and stability - Refactored types to avoid MCP client compatibility issues ## [0.1.65] - 2025-04-11 **Added:** - Enhanced debug logging for tool requests - Fixed peek_collection functionality ## [0.1.64] - 2025-04-11 **Changed:** - Major refactoring for better compatibility with Cursor and GitHub CoPilot - Fixed failing tools and improved error handling ## [0.1.60] - 2025-04-09 **Fixed:** - Fixed collection creation and metadata handling - Added proper docstrings for all functions ## [0.1.54] - 2025-04-09 **Changed:** - Refactored MCP to align to SDK standards - Improved metadata method handling and return values ## [0.1.45] - 2025-04-08 **Fixed:** - Fixed GitHub Actions workflow for testing - Added XML export for code coverage reporting ## [0.1.44] - 2025-04-07 **Added:** - Improved test coverage to 78% - Fixed MCP handling for stdio communications ## [0.1.43] - 2025-04-06 **Changed:** - Cleaned up duplicate handlers - Improved scripts and documentation - Simplified README format - Fixed tools to avoid Optional/Union types ## [0.1.40] - 2025-04-05 **Fixed:** - Fixed release script for PyPI publishing - Improved build process for testing with test.pypi.org ## [0.1.37] - 2025-04-04 **Fixed:** - Fixed coverage reporting for sub-folder tests - Added --clean parameter for test script ## [0.1.36] - 2025-04-01 **Changed:** - Refactored build, test and publish process - Enhanced Hatch usage for consistent builds ## [0.1.31] - 2025-03-31 **Added:** - Refactored for PyPI publishing using Hatch build system - Improved documentation for installation ## [0.1.30] - 2025-03-30 **Added:** - Package build preparation - Simplified installation with uv(x) ## [0.1.25] - 2025-03-29 **Fixed:** - Updated email addresses and documentation - Improved README with correct test run badge ## [0.1.17] - 2025-03-29 **Added:** - Enhanced collection management tools - Improved documentation structure ## [0.1.15] - 2025-03-29 **Added:** - Document query capabilities - Improved test coverage ## [0.1.13] - 2025-03-29 **Added:** - Enhanced sequential thinking tools - Better error handling ## [0.1.12] - 2025-03-29 **Added:** - Improved collection management - Better testing infrastructure ## [0.1.4] - 2025-03-29 **Added:** - Basic testing structure - Improved documentation ## [0.1.3] - 2025-04-30 **Added:** - Client library for Chroma interactions - Thinking tools for sequential reasoning - First stable release with complete test suite - Basic client commands for ChromaDB operations - Development and usage documentation **Changed:** - Improved MCP tool structure - Enhanced error handling and reporting - Better test coverage ## [0.0.1] - 2025-03-29 **Added:** - Initial release of Chroma MCP Server - Collection management tools - Document operation tools - Sequential thinking tools - Comprehensive test suite - Documentation

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/djm81/chroma_mcp_server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server