Skip to content

Conversation

@giginet
Copy link

@giginet giginet commented Dec 4, 2025

There was a use case where we needed to disable ssl_verify in ChromaDB's HTTPClient.

Since the current MCP implementation doesn't allow passing arbitrary Settings and designing a CLI is difficult, we added the —no-ssl-verify option.
https://github.com/chroma-core/chroma/blob/main/chromadb/config.py#L152

giginet and others added 4 commits December 4, 2025 13:05
Add --ssl-verify flag and CHROMA_SSL_VERIFY environment variable to control SSL certificate verification for HTTP clients. This allows users to disable SSL verification when using self-signed certificates.

Changes:
- Add --ssl-verify argument to parser with default value of true
- Pass ssl_verify value to Settings via chroma_server_ssl_verify parameter
- Update README with ssl-verify usage examples and documentation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Extract duplicated boolean conversion logic from argument parser into a reusable is_truthy() function. This improves code maintainability and reduces duplication.

Changes:
- Add is_truthy(value: str) -> bool helper function
- Replace lambda expressions and inline conversions with is_truthy calls
- Apply to both --ssl and --ssl-verify argument definitions

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Change ssl-verify behavior to only pass chroma_server_ssl_verify to Settings when explicitly specified via command-line argument or environment variable. When not specified, the setting defaults to None and is not passed to Settings, allowing Chroma to use its own defaults.

Changes:
- Set ssl-verify default to None when CHROMA_SSL_VERIFY is not set
- Only add chroma_server_ssl_verify to settings_dict when ssl_verify is not None
- Simplify logic by removing complex conditional branching

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Replace --ssl-verify argument with --no-ssl-verify flag for simpler and more intuitive SSL certificate verification control. The flag only disables verification when explicitly specified, allowing Chroma to use its default behavior otherwise.

Changes:
- Replace --ssl-verify argument with --no-ssl-verify flag using action='store_true'
- Change environment variable from CHROMA_SSL_VERIFY to CHROMA_NO_SSL_VERIFY
- Only set chroma_server_ssl_verify=False when flag is present
- Update README examples and documentation to reflect new flag usage

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant