Skip to main content
Glama

Chroma MCP Server

by djm81
client_rename_plan.md3.86 kB
# Client Rename Plan: chroma-client → chroma-mcp-client ## Rationale This document outlines the plan to rename the CLI executable from `chroma-client` to `chroma-mcp-client` for the following reasons: 1. **Naming Consistency:** The server is named `chroma-mcp-server`, so the client should follow the same naming pattern 2. **Disambiguation:** Avoids confusion with potential official Chroma client tools 3. **Product Identity:** Clearly associates the client with our specific MCP implementation ## Implementation Plan ### Phase 1: Setup Backward Compatibility - [x] **Update Entry Points in pyproject.toml:** ```toml [project.scripts] # Keep the old entry point temporarily chroma-client = "chroma_mcp_client.deprecated_cli:main" # Add the new entry point chroma-mcp-client = "chroma_mcp_client.cli:main" ``` - [x] **Create Deprecated CLI Wrapper:** - [x] Create `src/chroma_mcp_client/deprecated_cli.py` with deprecation warning - [x] Implement a simple wrapper that calls the main CLI module with a warning - [x] Add unit test for the deprecated CLI wrapper ### Phase 2: Documentation Updates - [x] **Update Key Documentation:** - [x] Update README.md with new command name - [x] Add deprecation notice to CHANGELOG.md - [x] Update docs where old cli is used - [x] **Create Migration Guide:** - [x] Document in a dedicated migration.md or section in docs/usage/client_commands.md - [x] Include examples of replacing old commands with new ones ### Phase 3: Incremental Codebase Updates - [x] **Update Internal Script References:** - [x] Modify scripts in `scripts/` directory that call `chroma-client` - [x] Update any tests that reference `chroma-client` - [x] **Update Documentation References:** - [x] Scan and update references in `docs/` directory - [x] Update examples in documentation - [x] **Update local_rag_pipeline_plan_v4.md:** - [x] Add references to client renaming - [x] Update examples that use the client command ### Phase 4: Testing - [x] **Unit Tests:** - [x] Ensure all unit tests pass with both command names - [x] Add specific tests for the deprecated CLI module - [x] **Integration Tests:** - [x] Verify both commands work with identical functionality - [x] Test that the deprecation warning appears - [x] **Manual Testing:** - [x] Test both commands with common use cases ### Phase 5: Future Planning - [x] **Plan for Removal of Backward Compatibility:** - [x] Document timeline for removing the old entry point (e.g., in version 0.3.0) - [x] Plan for announcement and communication ## Backward Compatibility Strategy 1. **Temporary Dual Entry Points:** Maintain both `chroma-client` and `chroma-mcp-client` in the 0.2.x releases 2. **Deprecation Warning:** Show deprecation warning when using `chroma-client` 3. **Removal Timeline:** Plan to remove `chroma-client` in the 0.3.0 release 4. **Documentation:** Clearly communicate the change in documentation and release notes ## Implementation Notes ### Deprecation Warning Example ```python import sys import warnings from . import cli def main(): warnings.warn( "The 'chroma-client' command is deprecated and will be removed in version 0.3.0. " "Please use 'chroma-mcp-client' instead.", DeprecationWarning, stacklevel=2 ) return cli.main() if __name__ == "__main__": sys.exit(main()) ``` ### Documentation Note Example ```markdown **Note:** Starting from version 0.2.x, the `chroma-client` command is deprecated and will be removed in version 0.3.0. Please use `chroma-mcp-client` instead, which provides identical functionality with a more consistent naming scheme. ``` ## References and Related Documents - [Local RAG Pipeline Plan V4](./local_rag_pipeline_plan_v4.md) - [MCP SDK Compliance V2](./refactor_plan_mcp_sdk_compliance_v2.md)

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