This directory contains organized utility scripts for maintaining, managing, and operating the MCP Memory Service. Scripts are categorized by function for easy navigation and maintenance.
scripts/
├── backup/ # Backup and restore operations
├── database/ # Database analysis and health monitoring
├── development/ # Development tools and debugging utilities
├── installation/ # Setup and installation scripts
├── linux/ # Linux service management shortcuts (v7.5.1+)
├── maintenance/ # Database cleanup and repair operations
├── migration/ # Data migration and schema updates
├── server/ # Server runtime and operational scripts
├── service/ # Service management and deployment
├── sync/ # Backend synchronization utilities
├── testing/ # Test scripts and validation
├── utils/ # General utility scripts and wrappers
├── validation/ # Configuration and system validation
├── run/ # Runtime execution scripts
├── archive/ # Deprecated scripts (kept for reference)
└── README.md # This file
# Service Management
./service/memory_service_manager.sh status # Check service status
./service/memory_service_manager.sh start-cloudflare # Start with Cloudflare backend
# Backend Synchronization
./sync/claude_sync_commands.py status # Check sync status
./sync/claude_sync_commands.py backup # Backup Cloudflare → SQLite
./sync/claude_sync_commands.py sync # Bidirectional sync
./sync/sync_now.py --verbose # Manual on-demand hybrid sync (v7.5.1+)
# Configuration Validation
./validation/validate_configuration_complete.py # Comprehensive config validation
./validation/diagnose_backend_config.py # Cloudflare backend diagnostics
./validation/verify_environment.py # Check environment setup
# Database Health
./database/simple_timestamp_check.py # Quick health check
./database/db_health_check.py # Comprehensive health analysisEssential for managing dual-backend setups and data synchronization.
| Script | Purpose | Quick Usage |
|---|---|---|
sync_memory_backends.py |
Core bidirectional sync engine | python sync/sync_memory_backends.py --status |
claude_sync_commands.py |
User-friendly sync wrapper | python sync/claude_sync_commands.py backup |
sync_now.py |
Manual on-demand hybrid sync (v7.5.1+) | python sync/sync_now.py --verbose |
export_memories.py |
Export memories to JSON | python sync/export_memories.py |
import_memories.py |
Import memories from JSON | python sync/import_memories.py data.json |
Key Features:
- ✅ Bidirectional Cloudflare ↔ SQLite synchronization
- ✅ Intelligent deduplication using content hashing
- ✅ Dry-run mode for safe testing
- ✅ Comprehensive status reporting
Located in sync/litestream/ - Git-like staging workflow for syncing to central SQLite-vec HTTP API server.
| Script | Purpose | Quick Usage |
|---|---|---|
memory_sync.sh |
Main sync orchestrator (stash → pull → apply → push) | ./sync/litestream/memory_sync.sh sync |
push_to_remote.sh |
Push staged changes to remote API | ./sync/litestream/push_to_remote.sh |
pull_remote_changes.sh |
Pull latest from remote | ./sync/litestream/pull_remote_changes.sh |
stash_local_changes.sh |
Stash local changes to staging | ./sync/litestream/stash_local_changes.sh |
apply_local_changes.sh |
Apply staged changes locally | ./sync/litestream/apply_local_changes.sh |
setup_local_litestream.sh |
Initialize local Litestream setup | ./sync/litestream/setup_local_litestream.sh |
setup_remote_litestream.sh |
Setup remote API server | ./sync/litestream/setup_remote_litestream.sh |
Key Features:
- ✅ Git-like staging database workflow
- ✅ Conflict detection and resolution
- ✅ Multi-device local network synchronization
- ✅ Sync to central HTTP API (e.g.,
https://narrowbox.local:8443/api/memories) - ✅ macOS launchd service for automatic replication
Note: Litestream sync (local network) is separate from Cloudflare hybrid sync (cloud backend)
Linux service management for production deployments.
| Script | Purpose | Quick Usage |
|---|---|---|
memory_service_manager.sh |
Complete service lifecycle management | ./service/memory_service_manager.sh start-cloudflare |
service_control.sh |
Basic service control operations | ./service/service_control.sh restart |
service_utils.py |
Service utility functions | Used by other service scripts |
deploy_dual_services.sh |
Deploy dual-backend architecture | ./service/deploy_dual_services.sh |
update_service.sh |
Update running service | ./service/update_service.sh |
Key Features:
- ✅ Dual-backend configuration management
- ✅ Environment file handling (.env, .env.sqlite)
- ✅ Service health monitoring
- ✅ Integrated sync operations
Ensure proper setup and configuration.
| Script | Purpose | Quick Usage |
|---|---|---|
validate_configuration_complete.py |
Comprehensive config validation | python validation/validate_configuration_complete.py |
diagnose_backend_config.py |
Cloudflare backend diagnostics | python validation/diagnose_backend_config.py |
validate_memories.py |
Memory data validation | python validation/validate_memories.py |
validate_migration.py |
Migration validation | python validation/validate_migration.py |
verify_environment.py |
Environment setup checker | python validation/verify_environment.py |
verify_pytorch_windows.py |
PyTorch Windows validation | python validation/verify_pytorch_windows.py |
verify_torch.py |
PyTorch installation check | python validation/verify_torch.py |
check_documentation_links.py |
Documentation link validator | python validation/check_documentation_links.py |
Key Features:
- ✅ Claude Code global configuration validation
- ✅ Cloudflare credentials verification
- ✅ Environment conflict detection
- ✅ Comprehensive error reporting with solutions
Monitor and analyze database health and performance.
| Script | Purpose | Quick Usage |
|---|---|---|
simple_timestamp_check.py |
Quick timestamp health check | python database/simple_timestamp_check.py |
db_health_check.py |
Comprehensive health analysis | python database/db_health_check.py |
analyze_sqlite_vec_db.py |
Detailed SQLite-vec analysis | python database/analyze_sqlite_vec_db.py |
check_sqlite_vec_status.py |
SQLite-vec status checker | python database/check_sqlite_vec_status.py |
Exit Codes (for CI/CD):
0- Excellent/Good health1- Warning status2- Critical issues3- Analysis failed
Scripts for maintaining database integrity and performance.
| Script | Purpose | Quick Usage |
|---|---|---|
find_duplicates.py |
Find and remove duplicate memories | python maintenance/find_duplicates.py --execute |
cleanup_corrupted_encoding.py |
Fix corrupted emoji encoding | python maintenance/cleanup_corrupted_encoding.py --execute |
repair_memories.py |
Repair corrupted memory entries | python maintenance/repair_memories.py |
cleanup_memories.py |
General memory cleanup | python maintenance/cleanup_memories.py |
repair_sqlite_vec_embeddings.py |
Fix embedding inconsistencies | python maintenance/repair_sqlite_vec_embeddings.py |
repair_zero_embeddings.py |
Fix zero/null embeddings | python maintenance/repair_zero_embeddings.py |
Safety Features:
- ✅ Dry-run mode available for all scripts
- ✅ Comprehensive backup recommendations
- ✅ Detailed reporting of changes
Data protection and recovery operations.
| Script | Purpose | Quick Usage |
|---|---|---|
backup_memories.py |
Create memory backups | python backup/backup_memories.py |
restore_memories.py |
Restore from backups | python backup/restore_memories.py backup.json |
backup_sqlite_vec.sh |
SQLite-vec database backup | ./backup/backup_sqlite_vec.sh |
export_distributable_memories.sh |
Create distributable exports | ./backup/export_distributable_memories.sh |
Handle database migrations and data transformations.
| Script | Purpose | Quick Usage |
|---|---|---|
migrate_to_cloudflare.py |
Migrate to Cloudflare backend | python migration/migrate_to_cloudflare.py |
migrate_chroma_to_sqlite.py |
ChromaDB → SQLite migration | python migration/migrate_chroma_to_sqlite.py |
migrate_sqlite_vec_embeddings.py |
Update embedding format | python migration/migrate_sqlite_vec_embeddings.py |
migrate_timestamps.py |
Fix timestamp issues | python migration/migrate_timestamps.py |
cleanup_mcp_timestamps.py |
Clean timestamp proliferation | python migration/cleanup_mcp_timestamps.py |
verify_mcp_timestamps.py |
Verify timestamp consistency | python migration/verify_mcp_timestamps.py |
Platform-specific installation and setup scripts.
| Script | Purpose | Quick Usage |
|---|---|---|
install.py |
Platform-aware installer with backend selection | python installation/install.py --storage-backend hybrid |
install_linux_service.py |
Linux service installation | python installation/install_linux_service.py |
install_macos_service.py |
macOS service setup | python installation/install_macos_service.py |
install_windows_service.py |
Windows service installation | python installation/install_windows_service.py |
install_uv.py |
UV package manager installation | python installation/install_uv.py |
setup_cloudflare_resources.py |
Cloudflare resource setup | python installation/setup_cloudflare_resources.py |
setup_claude_mcp.sh |
Claude MCP configuration | ./installation/setup_claude_mcp.sh |
setup_backup_cron.sh |
Automated backup scheduling | ./installation/setup_backup_cron.sh |
Quick service management wrappers for Linux systemd deployments (v7.5.1+).
| Script | Purpose | Quick Usage |
|---|---|---|
service_status.sh |
Check systemd service status | ./linux/service_status.sh |
start_service.sh |
Start mcp-memory service | ./linux/start_service.sh |
stop_service.sh |
Stop mcp-memory service | ./linux/stop_service.sh |
view_logs.sh |
View service logs | ./linux/view_logs.sh |
uninstall_service.sh |
Remove systemd service | ./linux/uninstall_service.sh |
Key Features:
- ✅ Simple wrappers for systemd service management
- ✅ User-level service control (~/.config/systemd/user/)
- ✅ Quick status and log viewing
- ✅ Clean uninstall capabilities
Scripts for running and managing the memory server.
| Script | Purpose | Quick Usage |
|---|---|---|
run_memory_server.py |
Start memory server | python server/run_memory_server.py |
run_http_server.py |
Start HTTP API server | python server/run_http_server.py |
check_server_health.py |
Health check endpoint | python server/check_server_health.py |
memory_offline.py |
Offline memory operations | python server/memory_offline.py |
preload_models.py |
Pre-load ML models | python server/preload_models.py |
Comprehensive testing and validation scripts.
| Script | Purpose | Quick Usage |
|---|---|---|
run_complete_test.py |
Complete system test | python testing/run_complete_test.py |
test_memory_api.py |
API functionality tests | python testing/test_memory_api.py |
test_cloudflare_backend.py |
Cloudflare backend tests | python testing/test_cloudflare_backend.py |
test_sqlite_vec_embeddings.py |
Embedding system tests | python testing/test_sqlite_vec_embeddings.py |
simple_test.py |
Basic functionality test | python testing/simple_test.py |
Helper scripts and utility functions.
| Script | Purpose | Quick Usage |
|---|---|---|
claude_commands_utils.py |
Claude command utilities | Used by Claude Code hooks |
query_memories.py |
Direct memory querying | python utils/query_memories.py "search term" |
memory_wrapper_uv.py |
UV package manager wrapper | Used by other scripts |
generate_personalized_claude_md.sh |
Generate custom CLAUDE.md | ./utils/generate_personalized_claude_md.sh |
Tools for developers and debugging.
| Script | Purpose | Quick Usage |
|---|---|---|
setup-git-merge-drivers.sh |
Configure git merge drivers | ./development/setup-git-merge-drivers.sh |
fix_mdns.sh |
Fix mDNS issues | ./development/fix_mdns.sh |
uv-lock-merge.sh |
Handle UV lock file merges | ./development/uv-lock-merge.sh |
find_orphaned_files.py |
Find orphaned database files | python development/find_orphaned_files.py |
# 1. Validate environment
python validation/verify_environment.py
# 2. Install appropriate service
python installation/install_linux_service.py
# 3. Validate configuration
python validation/validate_config.py
# 4. Start service
./service/memory_service_manager.sh start-cloudflare# Check overall health
./service/memory_service_manager.sh status
python database/simple_timestamp_check.py
# Sync backends
python sync/claude_sync_commands.py sync
# Backup
python sync/claude_sync_commands.py backup# Validate configuration
python validation/validate_config.py
# Check database health
python database/db_health_check.py
# Fix common issues
python maintenance/find_duplicates.py --execute
python maintenance/cleanup_corrupted_encoding.py --execute# Before migration - backup
python backup/backup_memories.py
# Migrate to new backend
python migration/migrate_to_cloudflare.py
# Verify migration
python validation/validate_memories.py- Always backup first:
python backup/backup_memories.py - Use dry-run mode: Most scripts support
--dry-runor similar - Test with small datasets when possible
- Check database health:
python database/simple_timestamp_check.py
- Validation scripts first (check environment)
- Backup before any data modifications
- Maintenance operations (cleanup, repair)
- Verification after changes
- Service restart if needed
This scripts directory integrates with:
- CLAUDE.md: Essential commands for Claude Code users
- AGENTS.md: Agent development and release process
- Wiki: Detailed setup and troubleshooting guides
- GitHub Actions: CI/CD pipeline integration
When adding new scripts:
- Choose appropriate category based on primary function
- Follow naming conventions:
snake_case.pyorkebab-case.sh - Include proper documentation in script headers
- Add safety mechanisms for data-modifying operations
- Update this README with script description
- Test with multiple backends (SQLite-vec, Cloudflare)
- Configuration issues: Run
python validation/validate_config.py - Database problems: Run
python database/db_health_check.py - Documentation links: Run
python validation/check_documentation_links.py - General health: Run
./service/memory_service_manager.sh status
For complex issues, check the project wiki or create an issue with the output from relevant diagnostic scripts.