README
🚀 MySQL 查询 MCP 服务器
MySQL Query MCP 服务器遵循 MCP 协议,借助该项目,AI 助手可与 MySQL 数据库进行交互。此工具支持执行只读 SQL 查询、获取数据库信息以及列出配置的环境。
🚀 快速开始
MySQL Query MCP 服务器能让 AI 助手与 MySQL 数据库交互,支持执行只读 SQL 查询、获取数据库信息和列出配置环境。以下是快速启动步骤:
# 克隆仓库
git clone git@github.com:devakone/mysql-query-mcp-server.git
cd mysql-query-mcp-server
# 安装依赖项
npm install
# 启动服务器
node index.js
✨ 主要特性
- 遵循 MCP 协议,实现 AI 助手与 MySQL 数据库的交互。
- 支持执行只读 SQL 查询、获取数据库信息并列出配置的环境。
- 仅允许只读查询(SELECT、SHOW、DESCRIBE),保障数据库安全。
- 每个环境都有自己的隔离连接池。
- 支持生产环境的 SSL 连接。
- 具备查询超时机制,防止长时间运行的操作。
📦 安装指南
快速安装
- 克隆仓库:
git clone git@github.com:devakone/mysql-query-mcp-server.git
cd mysql-query-mcp-server
- 安装依赖项:
npm install
- 启动服务器:
node index.js
详细安装步骤
先决条件
- Node.js(版本 16.x 或更高)
- npm(版本 5.x 或更高)
安装依赖项
运行以下命令以安装项目所需的所有依赖项:
npm install
启动服务器
启动 MySQL Query MCP 服务器:
node index.js
📚 详细文档
配置指南
创建配置文件
在项目根目录下创建一个 config.json 文件,并添加以下内容:
{
"environments": {
"local": {
"host": "localhost",
"port": 3306,
"user": "root",
"password": "password"
},
"development": {
"host": "127.0.0.1",
"port": 3306,
"user": "dev",
"password": "devpass"
},
"staging": {
"host": "mysql-staging.example.com",
"port": 3306,
"user": "staging",
"password": "stagepass"
},
"production": {
"host": "mysql-production.example.com",
"port": 3306,
"user": "prod",
"password": "prodpass"
}
}
}
配置选项
| 属性 | 详情 |
|------|------|
| environments | 定义不同的数据库环境 |
| 每个环境的 host | 数据库主机地址 |
| 每个环境的 port | 数据库端口 |
| 每个环境的 user | 连接的用户名 |
| 每个环境的 password | 用户密码 |
使用指南
环境变量
在项目根目录下创建一个 .env 文件,并添加以下内容:
DEBUG=true
设置为 true 可以启用调试模式,输出更多日志信息。
命令行工具
工具概述
MySQL Query MCP 服务器提供了三个主要命令行工具:
1. query
执行只读 SQL 查询:
-- 示例查询:使用 query 工具运行以下查询
SELECT * FROM customers WHERE signup_date > '2023-01-01' LIMIT 10;
支持的查询类型(严格限制):
- SELECT 语句
- SHOW 命令
- DESCRIBE/DESC 表
2. info
获取数据库详细信息:
- 服务器版本
- 连接状态
- 数据库变量
- 进程列表
- 可用数据库
3. environments
列出配置的所有环境:
使用 environments 工具显示我们有哪些数据库环境可用。
安全注意事项
⚠️ 重要提示
考虑使用专用网络和身份验证来保护数据库。
项目贡献
欢迎贡献! 如果您有任何问题或建议,请在 Issues 中提交。
开发指南
如何运行测试
- 安装依赖项:
npm install
- 运行测试:
npm test
如何添加新功能
- 在
config.json中定义新的环境。 - 修改代码以支持新的数据库类型或功能。
📄 许可证
本项目遵循 MIT 许可证。
Scan to join WeChat group