💥 v8.0.0 - ChromaDB Backend Removal (BREAKING CHANGE)
⚠️ BREAKING CHANGE: The ChromaDB backend has been completely removed from the codebase.
🎯 TL;DR
- ChromaDB backend removed - 2,841 lines of code deleted
- Migration required for ChromaDB users - See guide below
- No action needed for SQLite-vec, Cloudflare, or Hybrid users
- Performance boost - Eliminated ~2GB PyTorch dependency
- Legacy branch available - Full code preserved for reference
❌ What's Removed
ChromaDB Backend Complete Removal
- Deleted: 2,841 lines of ChromaDB-related code
- Core files removed:
src/mcp_memory_service/storage/chroma.py(1,501 lines)src/mcp_memory_service/storage/chroma_enhanced.py(176 lines)tests/unit/test_chroma.pytests/chromadb/test_chromadb_types.py
- Dependencies eliminated:
chromadboptional dependency group- ~2GB PyTorch + sentence-transformers burden
📦 Migration & Legacy Support
ChromaDB Legacy Branch
- Branch: chromadb-legacy
- Tag:
chromadb-legacy-final - Status: Frozen/Archived (no active maintenance)
- Purpose: Historical reference and migration support
Migration Resources
- Migration Guide: docs/guides/chromadb-migration.md
- Migration Script:
scripts/migration/legacy/migrate_chroma_to_sqlite.py(in legacy branch) - Tracking Issue: #148
✅ Supported Storage Backends (v8.0.0+)
| Backend | Status | Use Case | Performance |
|---|---|---|---|
| Hybrid | ⭐ RECOMMENDED | Production, multi-device | 5ms (SQLite) + cloud sync |
| SQLite-vec | ✅ Supported | Development, single-device | 5ms read/write |
| Cloudflare | ✅ Supported | Cloud-native, serverless | Network dependent |
| HTTP Client | ✅ Supported | Distributed, multi-client | Network dependent |
| ChromaDB | ❌ REMOVED | N/A | See legacy branch |
📊 Impact & Rationale
Why Remove ChromaDB?
- Performance: ChromaDB 15ms vs SQLite-vec 5ms (3x slower)
- Dependencies: ~2GB PyTorch download eliminated
- Maintenance: 2,841 lines removed reduces complexity
- Better Alternatives: Hybrid backend provides superior performance with cloud sync
For Existing ChromaDB Users
- ✅ No immediate action required - Continue using v7.x releases
- ✅ Upgrade path available - Migration guide provided
- ✅ Legacy branch preserved - Full code available for reference
- ✅ Support timeline: v7.x remains available (no new features)
🚀 Upgrade Instructions
For ChromaDB Users (REQUIRED MIGRATION)
1. Backup your data:
```bash
Switch to legacy branch for migration tools
git checkout chromadb-legacy
python scripts/migration/migrate_chroma_to_sqlite.py --backup ~/chromadb_backup.json
```
2. Switch backend (RECOMMENDED: Hybrid):
```bash
Recommended: Hybrid backend (best of both worlds)
export MCP_MEMORY_STORAGE_BACKEND=hybrid
Configure Cloudflare credentials for cloud sync
export CLOUDFLARE_API_TOKEN="your-token"
export CLOUDFLARE_ACCOUNT_ID="your-account"
export CLOUDFLARE_D1_DATABASE_ID="your-d1-id"
export CLOUDFLARE_VECTORIZE_INDEX="mcp-memory-index"
```
Alternatives:
```bash
SQLite-vec (local-only)
export MCP_MEMORY_STORAGE_BACKEND=sqlite_vec
Cloudflare (cloud-only)
export MCP_MEMORY_STORAGE_BACKEND=cloudflare
```
3. Update to v8.0.0:
```bash
git checkout main
git pull origin main
python install.py --storage-backend hybrid
```
4. Validate migration:
```bash
python scripts/validation/validate_configuration_complete.py
```
For Non-ChromaDB Users (No Action Required)
✅ Seamless upgrade - No breaking changes for SQLite-vec, Cloudflare, or Hybrid users
✅ Reduced footprint - Enjoy lighter dependencies and simplified codebase
✅ Same features - All memory operations work identically
📚 Documentation
- Migration Guide: docs/guides/chromadb-migration.md
- Architecture Updates: docs/architecture.md
- Storage Backends Guide: docs/guides/STORAGE_BACKENDS.md
🔧 Technical Changes
Code Removed
- ChromaDB storage backend implementations
- ChromaDB-specific tests and fixtures
- ChromaDB configuration handling in factory
- ChromaDB deprecation warnings in server.py
Error Handling
- Using
MCP_MEMORY_STORAGE_BACKEND=chromanow raises clearValueError - Error messages include links to migration guide and legacy branch
- Fallback logic removed - only valid backends accepted
Dependencies
- Removed
chromadb>=0.5.0from optional dependencies - Updated
fulldependency group to exclude chromadb - No impact on core dependencies
🔗 Resources
- Issue #148: ChromaDB Deprecation Plan
- Legacy Branch: chromadb-legacy
- Legacy Tag:
chromadb-legacy-final - Migration Guide: docs/guides/chromadb-migration.md
📝 Full Changelog
See CHANGELOG.md for complete details.
Questions? Open an issue or check the migration guide.