release-notes-v2.2.3.md•5.73 kB
# Release Notes - MCP Firebird v2.2.3
**Release Date:** January 16, 2025
**Version:** 2.2.3
**Tag:** v2.2.3
## 🎯 Overview
This release addresses a critical bug in the SSE (Server-Sent Events) transport implementation and includes comprehensive enhancements to improve stability and user experience. The main focus is resolving the JSON parsing issue that prevented proper communication between MCP clients and the Firebird server when using SSE transport.
## 🐛 Critical Bug Fixes
### SSE JSON Parsing Issue Resolved
- **Fixed**: Critical catch-22 bug where POST requests to `/messages` endpoint failed to parse JSON body correctly
- **Problem**: Neither `Content-Type: application/json` nor `Content-Type: text/plain` worked with SSE transport
- **Solution**: Added proper `express.json()` middleware to SSE router and implemented custom fallback parsing
- **Impact**: SSE transport now works reliably with all MCP clients
### Error Messages Improved
- **Before**: `Invalid message: [object Object]` (unhelpful)
- **After**: Detailed error messages with proper JSON-RPC error codes
- Enhanced logging for better debugging and troubleshooting
## ✨ New Features
### Comprehensive Test Suite
- **Added**: 9+ automated tests specifically for SSE JSON parsing scenarios
- **Coverage**: All edge cases including malformed JSON, different content types, and error conditions
- **Validation**: Ensures the bug fix works correctly and prevents regressions
### Enhanced Middleware Stack
- **JSON Parsing**: Proper `express.json()` middleware for SSE router
- **Text Fallback**: Custom middleware to parse JSON from `text/plain` content type
- **URL Encoding**: Support for form-encoded data
- **Error Handling**: Robust error handling with graceful fallbacks
### Improved Documentation
- **Added**: Detailed SSE JSON parsing fix documentation (`docs/sse-json-parsing-fix.md`)
- **Enhanced**: Troubleshooting guides with specific solutions
- **Updated**: README with version-specific information and upgrade instructions
## 🔧 Technical Improvements
### Server Architecture
- **Unified Server**: Enhanced unified server with automatic protocol detection
- **Session Management**: Robust session handling with automatic cleanup
- **Transport Layer**: Improved SSE transport implementation with better error handling
### Development Experience
- **TypeScript**: Fixed `isolatedModules` compatibility issues
- **Jest Configuration**: Updated test configuration to support both TypeScript and JavaScript
- **Build Process**: Streamlined build process with better error reporting
## 📊 Performance & Stability
### Enhanced Error Handling
- **Validation**: Better request body validation with informative error messages
- **Logging**: Detailed logging for debugging SSE transport issues
- **Recovery**: Graceful error recovery without server crashes
### Memory Management
- **Sessions**: Improved session cleanup and memory management
- **Connections**: Better connection handling and resource cleanup
- **Monitoring**: Enhanced monitoring capabilities for session health
## 🔄 Backward Compatibility
### Full Compatibility Maintained
- **No Breaking Changes**: All existing functionality preserved
- **Client Support**: Works with all existing MCP clients
- **API Stability**: No changes to public APIs or interfaces
### Migration Path
- **Automatic**: No manual migration required
- **Upgrade**: Simple `npm install mcp-firebird@2.2.3` upgrade
- **Fallback**: Maintains compatibility with older client implementations
## 📋 Installation & Upgrade
### New Installation
```bash
# Install stable version
npm install -g mcp-firebird
# Or specific version
npm install -g mcp-firebird@2.2.3
# Run the server
npx mcp-firebird --transport-type sse --database /path/to/database.fdb
```
### Upgrade from Previous Versions
```bash
# Upgrade to latest stable
npm update -g mcp-firebird
# Verify version
npx mcp-firebird --version
```
## 🧪 Testing & Validation
### Automated Testing
- **Unit Tests**: 9+ tests covering all SSE scenarios
- **Integration Tests**: End-to-end testing with real MCP clients
- **Regression Tests**: Ensures previous functionality remains intact
### Manual Testing
- **SSE Transport**: Verified with multiple MCP clients
- **Content Types**: Tested with both `application/json` and `text/plain`
- **Error Scenarios**: Validated error handling and recovery
## 📚 Documentation Updates
### New Documentation
- **SSE Fix Guide**: Comprehensive technical documentation of the fix
- **Troubleshooting**: Enhanced troubleshooting guides with specific solutions
- **Examples**: Updated examples with correct usage patterns
### Updated Guides
- **Installation**: Updated installation instructions
- **Configuration**: Enhanced configuration examples
- **Client Integration**: Improved client integration guides
## 🙏 Acknowledgments
This release addresses critical user feedback regarding SSE transport reliability. Special thanks to the community for reporting the JSON parsing issues and providing detailed reproduction steps.
## 🔗 Links
- **GitHub Release**: https://github.com/PuroDelphi/mcpFirebird/releases/tag/v2.2.3
- **NPM Package**: https://www.npmjs.com/package/mcp-firebird/v/2.2.3
- **Documentation**: https://github.com/PuroDelphi/mcpFirebird/blob/main/docs/sse-json-parsing-fix.md
- **Issues**: https://github.com/PuroDelphi/mcpFirebird/issues
## 📈 What's Next
The next development cycle (v2.4.0-alpha.0) is already underway with focus on:
- Additional transport improvements
- Enhanced security features
- Performance optimizations
- Extended database functionality
---
**Full Changelog**: https://github.com/PuroDelphi/mcpFirebird/compare/v2.2.2...v2.2.3