一个提供安全的MySQL数据库操作的模型上下文协议(MCP)服务器,适用于AI助手和其他MCP客户端。
mysql://database/info) - 数据库元数据和表列表mysql://table/{table_name}) - 详细的表模式信息npm install mysql-mcp-server
服务器可以通过环境变量进行配置:
| 变量 | 默认值 | 描述 |
|---|---|---|
MYSQL_HOST | localhost | MySQL服务器主机名 |
MYSQL_PORT | 3306 | MySQL服务器端口 |
MYSQL_USER | root | MySQL用户名 |
MYSQL_PASSWORD | (空) | MySQL密码 |
MYSQL_DB | mysql | 默认数据库名 |
MYSQL_TIMEZONE | +0_00 | MySQL时区 |
在你的Claude Desktop配置文件中添加:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"mysql": {
"command": "npx",
"args": ["mysql-mcp-server"],
"env": {
"MYSQL_HOST": "your-mysql-host",
"MYSQL_PORT": "3306",
"MYSQL_USER": "your-username",
"MYSQL_PASSWORD": "your-password",
"MYSQL_DB": "your-database"
}
}
}
}
对于其他MCP客户端,使用stdio传输方式启动服务器:
npx mysql-mcp-server
git clone https://github.com/your-username/mysql-mcp-server.git
cd mysql-mcp-server
npm install
cp .env.example .env
# 编辑.env文件以配置你的数据库设置
npm run build
# 构建服务器
npm run build
# 开发监视模式
npm run watch
# 使用MCP Inspector调试
npm run inspector
你可以使用MCP Inspector测试服务器:
npm run inspector
这将启动Inspector并提供一个URL,在浏览器中测试服务器。
一旦通过MCP客户端连接后,你可以:
列出所有表:
使用list_tables工具
获取表结构:
使用get_table_info,表名为"users"
查询数据:
使用execute_query,SQL语句为"SELECT * FROM users LIMIT 10"
插入数据:
使用insert_data,表名为"users",数据为{"name": "John", "email": "john@example.com"}
此服务器设计时考虑了安全性:
欢迎贡献!请随意提交Pull Request。
MIT许可证 - 详情见LICENSE文件。