MySQL连接器
启用与MySQL数据库的安全交互,允许AI助手通过受控接口列出表、读取数据和执行SQL查询。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"mysql": {
"args": [
"-m",
"src.mysql_mcp_server.server"
],
"command": "python",
"env": {
"MYSQL_DATABASE": "your_database",
"MYSQL_HOST": "localhost",
"MYSQL_PASSWORD": "your_password",
"MYSQL_PORT": "3306",
"MYSQL_USER": "your_username"
}
}
}
}
该服务需要配置环境变量:MYSQL_DATABASE、MYSQL_HOST、MYSQL_PASSWORD、MYSQL_PORT、MYSQL_USER
服务介绍
MySQL MCP 服务器
一个模型上下文协议(MCP)服务器,能够安全地与MySQL数据库进行交互。该服务器允许AI助手通过受控接口列出表、读取数据和执行SQL查询,从而使数据库的探索和分析更加安全和有结构。
功能
- 将可用的MySQL表作为资源列出
- 读取表内容
- 执行带有适当错误处理的SQL查询
- 通过环境变量实现安全的数据库访问
- 全面的日志记录
配置
设置以下环境变量:
MYSQL_HOST=localhost # Database host
MYSQL_PORT=3306 # Optional: Database port (defaults to 3306 if not specified)
MYSQL_USER=your_username
MYSQL_PASSWORD=your_password
MYSQL_DATABASE=your_database
使用
与Claude Desktop一起使用
在您的claude_desktop_config.json中添加以下内容:
{
"mcpServers": {
"mysql": {
"command": "python",
"args": [
"-m",
"src.mysql_mcp_server.server"
],
"env": {
"MYSQL_HOST": "localhost",
"MYSQL_PORT": "3306",
"MYSQL_USER": "your_username",
"MYSQL_PASSWORD": "your_password",
"MYSQL_DATABASE": "your_database"
}
}
}
}
作为独立服务器
# Clone the repository
git clone https://github.com/designcomputer/mysql_mcp_server.git
cd mysql_mcp_server
# Install dependencies
pip install -r requirements.txt
# Run the server
python -m src.mysql_mcp_server.server
开发
# Clone the repository
git clone https://github.com/designcomputer/mysql_mcp_server.git
cd mysql_mcp_server
# Create virtual environment
python -m venv py-mcp-mysql_venv
source py-mcp-mysql_venv/bin/activate # or `py-mcp-mysql_venv\Scripts\activate` on Windows
# Install development dependencies
pip install -r requirements-dev.txt
# Run tests
pytest
安全考虑
- 永不提交环境变量或凭证
- 使用具有最小必需权限的数据库用户
- 考虑为生产使用实现查询白名单
- 监控并记录所有数据库操作
安全最佳实践
此MCP服务器需要数据库访问才能运行。为了安全起见:
- 创建一个具有最小权限的专用MySQL用户
- 永不使用root凭证或管理员账户
- 限制数据库访问到仅必要的操作
- 启用日志记录用于审计目的
- 定期审查数据库访问的安全性
请参阅MySQL安全配置指南以获取关于以下方面的详细说明:
- 创建受限的MySQL用户
- 设置适当的权限
- 监控数据库访问
- 安全最佳实践
⚠️ 重要:在配置数据库访问时,始终遵循最小权限原则。
许可证
MIT许可证 - 详情请参阅LICENSE文件。
贡献
- 分叉仓库
- 创建你的特性分支 (
git checkout -b feature/amazing-feature) - 提交你的更改 (
git commit -m 'Add some amazing feature') - 推送到分支 (
git push origin feature/amazing-feature) - 打开一个拉取请求