允许AI助手通过受控接口列出表、读取数据和执行SQL查询,使数据库的探索和分析更加安全和有结构。
databases
3.1w 查看 · 2026-07-07 更新
简介
允许AI助手通过受控接口列出表、读取数据和执行SQL查询,使数据库的探索和分析更加安全和有结构。
简介
允许AI助手通过受控接口列出表、读取数据和执行SQL查询,使数据库的探索和分析更加安全和有结构。
MySQL MCP 服务器
一个模型上下文协议(MCP)服务器,能够安全地与 MySQL 数据库进行交互。此服务器允许 AI 助手通过受控接口列出表、读取数据和执行 SQL 查询,从而使数据库的探索和分析更加安全且结构化。
特性
- 将可用的 MySQL 表作为资源列出
- 读取表内容
- 执行带有适当错误处理的 SQL 查询
- 通过环境变量实现安全的数据库访问
- 全面的日志记录
安装
手动安装
pip install mysql-mcp-server
通过 Smithery 安装
要通过 Smithery 自动为 Claude Desktop 安装 MySQL 服务器:
npx -y @smithery/cli install mysql-mcp-server --client claude
配置
设置以下环境变量:
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": "uv", "args": [ "--directory", "path/to/mysql_mcp_server", "run", "mysql_mcp_server" ], "env": { "MYSQL_HOST": "localhost", "MYSQL_PORT": "3306", "MYSQL_USER": "your_username", "MYSQL_PASSWORD": "your_password", "MYSQL_DATABASE": "your_database" } } } }
作为独立服务器运行
# Install dependencies pip install -r requirements.txt # Run the server python -m mysql_mcp_server
开发
# Clone the repository git clone https://github.com/yourusername/mysql_mcp_server.git cd mysql_mcp_server # Create virtual environment python -m venv venv source venv/bin/activate # or `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) - 发起拉取请求
工具列表
- execute_sql: Execute an SQL query on the MySQL server
服务配置
[{'mcpServers': {'mysql': {'args': ['--directory', 'path/to/mysql_mcp_server', 'run', 'mysql_mcp_server'], 'command': 'uv', 'env': {'MYSQL_DATABASE': 'your_database', 'MYSQL_HOST': 'localhost', 'MYSQL_PASSWORD': 'your_password', 'MYSQL_PORT': '3306', 'MYSQL_USER': 'your_username'}}}}]
来源
- 来源:github
- 链接:https://github.com/designcomputer/mysql_mcp_server