Releases: benborla/mcp-server-mysql
MySQL MCP Release v2.0.7
The following are the additional and changes in the MCP.
From: @echarrod
Add connection pool keep-alive settings
Configuration Options Added
- waitForConnections: true - Queue connection requests when pool is full instead of immediately erroring
- queueLimit: 100 (default, configurable) - Limits queued requests to prevent unbounded memory growth
- enableKeepAlive: true - Enable TCP keep-alive packets
- keepAliveInitialDelay: 0 - Start keep-alive checks immediately
- connectTimeout: 10000ms (default, configurable) - 10 second connection timeout for better UX
Environment Variables
- MYSQL_QUEUE_LIMIT - Override default queue limit (default: 100)
- MYSQL_CONNECT_TIMEOUT - Override connect timeout in milliseconds (default: 10000)
Use Cases
This addresses connection stability issues when:
- Running long-lived MCP server instances
- Connecting through proxies with idle connection timeouts
- Database servers behind load balancers or connection pools
- Network conditions with intermittent connectivity
From @echarrod
Add MySQL connection string support
Core Implementation
Connection String Parser (src/utils/index.ts):
- Parses MySQL CLI-format connection strings
- Supports short flags (-h, -P, -u, -p, -S) and long options (--host, --port, etc.)
- Handles quoted values and complex passwords
- Validates port numbers (1-65535 range, NaN checks)
Configuration Integration (src/config/index.ts):
- Added MYSQL_CONNECTION_STRING environment variable support
- Connection string takes precedence over individual env vars
- Maintains backward compatibility with existing configurations
- Fixed password fallback consistency in authPlugins
Documentation
- Updated README.md with connection string option (positioned as alternative, not primary method)
- Added examples and security notes about not storing in version control
- Updated .env.dist with connection string example
From @bulgariamitko
Correct package attribution and genericize all examples
Key Changes Fixed
🔧 Package Attribution Correction
- Restored original package name from @bulgariamitko/mcp-server-mysql-write to @benborla29/mcp-server-mysql
- Removed personal GitHub username references
- Restored original author attribution to Ben Borla
Genericized All Examples
- Project Names: Replaced personal project names (nima, izdavam, nufc, studia) with generic examples (project-a, project-b, project-c, project-d)
- Server Names: Replaced personal servers (gold.superhosting.bg, nufc.bg) with example.com variants
- Database Names: Replaced personal database names (izdavamc_, pwr0iwww_) with generic db_* format
- File Paths: Replaced personal file paths with generic placeholders
MySQL MCP Release v2.0.5
Thanks to @crewsycrews
- Upgraded @modelcontextprotocol/sdk to a higher version for streamableHttp transport support.
- Added expess dependency so we could run an http server.
- Followed this docs to implement Remote mode.
- Added readme section on how to setup Remote MCP
- Some formatting changes are there(sorry, I can't fight against my IDE to not doing it).
- Fixed ListResourcesRequestSchema handler to properly return the resources list from the DB
- Fixed CallToolRequestSchema handler to return errors so that agents could understand the issues with the queries(if there are any).
MySQL MCP Release v2.0.3
What's New
- Added performance tracking for write and read-only queries (Thank you @paradisecy )
- beneficial to see the query time in the agent response, beneficial on query optimization tasks
- Updated README.MD, added instruction on how to use it on Claude Code (Thank you @elvismdev )
MySQL MCP Release v2.0.0
Major New Features 🎉
Multi-DB Permission
- Added support for managing multiple databases through a single MCP server instance
- Detailed documentation available in MULTI-DB
- Special thanks to @saarthak-gupta-architect for this contribution
- Features include:
- Dynamic database switching
- Cross-database operations
- Schema-specific permissions
- Safe multi-DB mode with optional write protection
Improvements 🔧
Enhanced Logging System
- Added optional logging system controlled by
ENABLE_LOGGINGenvironment variable - Log levels: info and error
- Improved debugging capabilities while maintaining clean output when needed
- Set
ENABLE_LOGGING=1to enable logging, leave unset or set to any other value to disable
Query Handling Improvements
- Standardized query case handling to prevent column case sensitivity issues
- All SQL queries are now automatically converted to lowercase before execution
- Improved reliability when working with different MySQL configurations
- Better handling of case-sensitive identifiers
Breaking Changes ⚠️
- Query handling now consistently uses lowercase, which might affect case-sensitive database configurations
- Logging output format has changed - applications parsing server output may need updates
- Multi-DB support introduces new configuration options that might require updates to existing deployment scripts
Migration Guide 🔄
-
Update Environment Variables:
# Optional: Enable logging ENABLE_LOGGING=1 # For Multi-DB support (optional) MULTI_DB_WRITE_MODE=true # Enable write operations in multi-DB mode
-
Review any case-sensitive database operations in your queries
-
Update any scripts that parse server output to handle the new logging format
-
Check
README-MULTI-DB.mdfor multi-database setup instructions if needed
Contributors 👥
Special thanks to:
- @saarthak-gupta-architect - Multi-DB Support
- @boyzoid - logging
MySQL MCP Release v.1.0.14
Enhanced Test Environment Support
- Added automatic database selection for test environments
- Improved test detection with better support for Vitest
- Added conditional process termination to prevent tests from exiting prematurely
Fixed Database Connection Issues
- Resolved "No database selected" error during integration tests
- Fixed authentication problems by providing consistent default credentials
- Enhanced error handling in test database setup for more resilient behavior
Improved Debugging and Troubleshooting
- Added comprehensive debug logging for database configuration in test mode
- Improved error messages to aid in troubleshooting
- Implemented better inline comments for test-specific configurations
Breaking Changes
None. This release maintains backward compatibility with previous versions.
Known Issues
No major known issues in this release.
Contributors
- Ben Borla (@benborla)
- Lucas Jeeves (@luca-jeeves)
Links
MySQL MCP Release v.1.0.13
Added
- Complete write operations support through Smithery configuration
- Added environment variables for database write operations (
ALLOW_INSERT_OPERATION,ALLOW_UPDATE_OPERATION,ALLOW_DELETE_OPERATION) - New configuration options in Smithery schema for controlling write permissions
- Improved documentation for write operations configuration
- Support for enabling/disabling specific SQL operations via environment variables
- Enhanced error handling for unauthorized write operations
- SSL/TLS configuration options (Thank you @luca-jeeves )
Changed
- Updated Smithery configuration to include write operation settings
- Improved Smithery integration with clear security defaults
- Enhanced documentation with detailed configuration examples
- Restructured README with clearer installation instructions
- Better error reporting for database connection issues
- Improved transaction handling for write operations
Fixed
- Fixed error handling for database connection failures
- Improved error messages for unauthorized operations
- Better handling of MySQL 8.0+ authentication methods
Security
- All write operations (INSERT, UPDATE, DELETE) disabled by default
- Added clear documentation about security implications of enabling write operations
- Improved transaction isolation for write operations
- Enhanced error reporting that doesn't expose sensitive information
Documentation
- Updated README with comprehensive Smithery configuration instructions
- Added detailed examples for enabling specific write operations
- Improved troubleshooting section with common issues and solutions
- Better explanation of required MySQL permissions for different operation types
- Added clear security recommendations for production deployments
Release v1.0.8
Added support for Smithery
Added docker support
Release v1.0.7
updated readme
Release v1.0.5
updated package.json
Release v1.0.4
updated readme