Skip to main content
Glama

MCP Memory Service

migration-log.md4.69 kB
# FastAPI MCP Server Migration Log ## Architecture Decision Record **Date**: 2025-08-03 **Branch**: `feature/fastapi-mcp-native-v4` **Version**: 4.0.0-alpha.1 ### Decision: Migrate from Node.js Bridge to Native FastAPI MCP Server **Problem**: Node.js HTTP-to-MCP bridge has SSL handshake issues with self-signed certificates, preventing reliable remote memory service access. **Solution**: Replace Node.js bridge with native FastAPI MCP server using official MCP Python SDK. ### Technical Findings 1. **Node.js SSL Issues**: - Node.js HTTPS client fails SSL handshake with self-signed certificates - Issue persists despite custom HTTPS agents and disabled certificate validation - Workaround: Slash commands using curl work, but direct MCP tools fail 2. **FastAPI MCP Benefits**: - Native MCP protocol support via FastMCP framework - Python SSL stack handles self-signed certificates more reliably - Eliminates bridging complexity and failure points - Direct integration with existing storage backends ### Implementation Status #### ✅ Completed (Commit: 5709be1) - [x] Created feature branch `feature/fastapi-mcp-native-v4` - [x] Updated GitHub issues #71 and #72 with migration plan - [x] Implemented basic FastAPI MCP server structure - [x] Added 5 core memory operations: store, retrieve, search_by_tag, delete, health - [x] Version bump to 4.0.0-alpha.1 - [x] Added new script entry point: `mcp-memory-server` #### ✅ Migration Completed (Commit: c0a0a45) - [x] Dual-service architecture deployed successfully - [x] FastMCP server (port 8000) + HTTP dashboard (port 8080) - [x] SSL issues completely resolved - [x] Production deployment to memory.local verified - [x] Standard MCP client compatibility confirmed - [x] Documentation and deployment scripts completed #### 🚧 Known Limitations - **Claude Code SSE Compatibility**: Claude Code's SSE client has specific requirements incompatible with FastMCP implementation - **Workaround**: Claude Code users can use HTTP dashboard or alternative MCP clients - **Impact**: Core migration objectives achieved; this is a client-specific limitation #### 📋 Future Development 1. **Claude Code Compatibility**: Investigate custom SSE client implementation 2. **Tool Expansion**: Add remaining 17 memory operations as needed 3. **Performance Optimization**: Monitor and optimize dual-service performance 4. **Client Library**: Develop Python/JavaScript MCP client libraries 5. **Documentation**: Expand client compatibility matrix ### Dashboard Tools Exclusion **Decision**: Exclude 8 dashboard-specific tools from FastAPI MCP server. **Rationale**: - HTTP dashboard at https://github.com/doobidoo/mcp-memory-dashboard provides superior web interface - MCP server should focus on Claude Code integration, not duplicate dashboard functionality - Clear separation of concerns: MCP for Claude Code, HTTP for administration **Excluded Tools**: - dashboard_check_health, dashboard_recall_memory, dashboard_retrieve_memory - dashboard_search_by_tag, dashboard_get_stats, dashboard_optimize_db - dashboard_create_backup, dashboard_delete_memory ### Architecture Comparison | Aspect | Node.js Bridge | FastAPI MCP | |--------|----------------|-------------| | Protocol | HTTP→MCP translation | Native MCP | | SSL Handling | Node.js HTTPS (problematic) | Python SSL (reliable) | | Complexity | 3 layers (Claude→Bridge→HTTP→Memory) | 2 layers (Claude→MCP Server) | | Maintenance | Multiple codebases | Unified Python | | Remote Access | SSL issues | Direct support | | Mobile Support | Limited by bridge | Full MCP compatibility | ### Success Metrics - [x] ~~All MCP tools function correctly with Claude Code~~ **Standard MCP clients work; Claude Code has SSE compatibility issue** - [x] SSL/HTTPS connectivity works without workarounds - [x] Performance equals or exceeds Node.js bridge - [x] Remote access works from multiple clients - [x] Easy deployment without local bridge requirements ### Project Completion Summary **Status**: ✅ **MIGRATION SUCCESSFUL** **Date Completed**: August 3, 2025 **Final Commit**: c0a0a45 **Deployment Status**: Production-ready dual-service architecture The FastAPI MCP migration has successfully achieved its primary objectives: 1. **SSL Issues Eliminated**: Node.js SSL handshake problems completely resolved 2. **Architecture Simplified**: Removed complex bridging layers 3. **Standard Compliance**: Full MCP protocol compatibility with standard clients 4. **Production Ready**: Deployed and tested dual-service architecture **Note**: Claude Code SSE client compatibility remains a separate issue to be addressed in future development.

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/doobidoo/mcp-memory-service'

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