针对MySQL数据库操作的MCP(Model Context Protocol)工具实现,为AI模型提供数据库操作能力。
- 推荐使用本地模型使用这个工具,防止出现不必要的数据泄露风险
- MySQL数据库连接管理
- 表结构查询
- 数据增删改查操作
- 错误处理和连接状态管理
- MCP协议支持,可与AI模型集成
npm install将以下配置添加到你的MCP客户端配置文件中:
{
  "mcpServers": {
    "mysql-mcp-tool": {
      "command": "npx",
      "args": ["mysql-mcp-tool", "server"],
      "env": {
        "MYSQL_HOST": "localhost",
        "MYSQL_USER": "root",
        "MYSQL_PASSWORD": "",
        "MYSQL_DATABASE": "test"
      }
    }
  }
}# 查询表
mysql-mcp-tool tables
# 查看表结构
mysql-mcp-tool schema users
# 执行SQL
mysql-mcp-tool query "SELECT * FROM users WHERE id = ?" -p '["1"]'
# 启动MCP服务器
mysql-mcp-tool server -h localhost -u root -p password -d mydbimport MySQLMCPTool from './index.js';
const tool = new MySQLMCPTool({
  host: 'localhost',
  user: 'root',
  password: '',
  database: 'test'
});
await tool.connect();
const result = await tool.select('users', { id: 1 });
await tool.disconnect();- connect()- 连接数据库
- disconnect()- 断开连接
- executeQuery(sql, params)- 执行SQL查询
- getTables()- 获取所有表
- getTableSchema(tableName)- 获取表结构
- select(tableName, where, limit)- 查询数据
- insert(tableName, data)- 插入数据
- update(tableName, data, where)- 更新数据
- delete(tableName, where)- 删除数据
该工具提供以下MCP工具:
- 
mysql_query - 执行MySQL查询 - 参数:sql(必需),params(可选)
 
- 
mysql_tables - 获取所有表 - 参数:无
 
- 
mysql_schema - 获取表结构 - 参数:table(必需)
 
- 
mysql_insert - ⚠️ 警告:插入数据 - 使用者自负责任- 参数:table(必需),data(必需)
 
- 
mysql_update - ⚠️ 警告:更新数据 - 使用者自负责任- 参数:table(必需),data(必需),where(可选)
 
- 
mysql_delete - ⚠️ 警告:删除数据 - 使用者自负责任- 参数:table(必需),where(可选)
 
# 安装依赖
npm install
# 运行测试
npm test
# 启动开发模式
npm start- mysql2: MySQL数据库驱动
- commander: 命令行参数解析
- Node.js ES模块支持
MIT