使用说明
MCP MySQL/MariaDB数据库服务器
一个功能齐全的模型上下文协议(MCP)服务器,为MySQL和MariaDB数据库提供全面的操作。
🌟 特性
🗃️ 多数据库支持
- 同时连接到多个数据库 -在单个MCP服务器中管理多个MySQL/MariaDB实例
- 灵活的连接命名 -支持自定义连接名称(
main,test,analytics,prod等等) - 默认连接设置 -指定要使用的默认数据库连接
- 向后兼容性 -现有的单数据库配置无需修改即可工作
🌐 多种运输方式
- stdio模式 -标准输入/输出,适用于本地Claude Desktop
- HTTP模式 -用于外部和远程访问的HTTP/SSE服务器
- 两种模式 -同时提供stdio和HTTP连接
🔒 企业级安全
- SQL注入保护 -自动检测并阻止危险的SQL操作
- 连接池管理 -高效管理数据库连接资源
- SSL/TLS支持 -安全的数据库连接加密
- CORS 控制 -可配置的跨源请求设置
- API密钥验证 -HTTP端点的可选安全性
🛠️ 综合工具集
execute_query-执行SQL查询和更新list_tables-列出数据库中的所有表describe_table-查看表结构和列信息test_connection-测试特定的数据库连接list_connections-列出所有可用的数据库连接get_connection_info-检索详细的连接信息test_all_connections-批量测试所有数据库连接
🚀 快速开始
1.安装依赖项
# Install Node.js dependencies
npm install
# Build the project
npm run build
2.配置数据库
创建一个 .env 文件:
单数据库配置(向后兼容)
# Basic Database Settings
DB_HOST=localhost
DB_PORT=3306
DB_USER=your_username
DB_PASSWORD=your_password
DB_NAME=your_database
DB_SSL=false
# Connection Pool Settings
DB_CONNECTION_LIMIT=10
DB_TIMEOUT=60000
# MCP Server Settings
MCP_TRANSPORT_MODE=stdio
多数据库配置(推荐)
# Define connection list
DB_CONNECTIONS=main,test,analytics
DEFAULT_DB=main
# Main Database Connection
DB_MAIN_HOST=localhost
DB_MAIN_PORT=3306
DB_MAIN_USER=main_user
DB_MAIN_PASSWORD="complex@pass#123"
DB_MAIN_NAME=main_database
DB_MAIN_SSL=false
# Test Database Connection
DB_TEST_HOST=test-server.com
DB_TEST_PORT=3306
DB_TEST_USER=test_user
DB_TEST_PASSWORD="test$pass@456"
DB_TEST_NAME=test_database
DB_TEST_SSL=true
# Analytics Database Connection
DB_ANALYTICS_HOST=analytics.company.com
DB_ANALYTICS_PORT=3306
DB_ANALYTICS_USER=analytics_user
DB_ANALYTICS_PASSWORD="analytics#789$"
DB_ANALYTICS_NAME=analytics_db
DB_ANALYTICS_SSL=true
# Connection Pool Settings
DB_CONNECTION_LIMIT=10
DB_TIMEOUT=60000