【Kiro 、Cursor、WindowSurf - mysql-mcp 配置指南】

Kiro 、Cursor、WindowSurf - mysql-mcp 配置指南

不仅Kiro 适用于 Cursor, Claude , WindowSurf 等大部分 IDE

下文以 Kiro 为例

一、MySQL 只读用户创建

1.1 登录 MySQL
复制代码
mysql -u root -p
1.2 创建只读用户(授予所有数据库只读权限)
复制代码
-- 创建用户 mcp_user,限制只能从指定 IP 连接(请将 '你的桌面IP' 替换为实际 IP)
CREATE USER 'mcp_user'@'你的桌面IP' IDENTIFIED BY '#123456';

-- 授予所有数据库的只读权限
GRANT SELECT, SHOW VIEW ON *.* TO 'mcp_user'@'你的桌面IP';

-- 授予查看所有数据库列表的权限(MCP 探索用)
GRANT SHOW DATABASES ON *.* TO 'mcp_user'@'你的桌面IP';

-- 刷新权限使生效
FLUSH PRIVILEGES;
1.3 验证用户权限

bash

复制代码
mysql -u mcp_user -p -h 数据库地址

输入密码 #123456 后,执行:

sql

复制代码
SHOW DATABASES;              -- 应能看到所有数据库列表
SELECT * FROM 某数据库.某表 LIMIT 10;  -- 应能查询数据
DELETE FROM 某数据库.某表 WHERE id=1;  -- 应报错拒绝
1.4 清理用户(如需删除)
复制代码
DROP USER 'mcp_user'@'你的桌面IP';

二、Kiro MCP 配置

2.1 前置准备(Windows)
  • 本文采用 designcomputer/mysql_mcp_server:这是另一个非常热门的选择,GitHub 星标数也高达 1.3k。它是一个纯 Python 实现的项目,遵循 MCP 标准,设置相对简单。 它的设计目标是简单、实用、安全。

https://github.com/designcomputer/mysql_mcp_server

bash 复制代码
# 安装 Python(确保 3.8+)
python --version

# 安装 uv 工具(PowerShell 执行)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

# 安装 mysql-mcp-server
pip install mysql-mcp-server
2.2 配置 Kiro 的 mcp.json

配置文件位置(二选一):

  • 项目级项目根目录/.kiro/settings/mcp.json
  • 用户级C:\Users\你的用户名\.kiro\settings\mcp.json

将以下内容填入 mcp.json

json 复制代码
{
  "mcpServers": {
    "mysql": {
      "command": "uvx",
      "args": [
        "mysql_mcp_server"
      ],
      "env": {
        "MYSQL_HOST": "你的云数据库域名或IP",
        "MYSQL_PORT": "3306",
        "MYSQL_USER": "mcp_user",
        "MYSQL_PASSWORD": "#123456",
        "MYSQL_SSL_MODE": "DISABLED",
        "MYSQL_SSH_ENABLE": "false",
        "MYSQL_CONNECT_TIMEOUT": "30"
      }
    }
  }
}

⚠️ 注意

  • MYSQL_HOST 替换为实际的数据库地址
  • 如果数据库不支持 SSL,可将 MYSQL_SSL_MODE 改为 DISABLED
  • 密码 #123456 含特殊字符,JSON 中直接放在双引号内即可,无需转义
2.3 环境变量替代方案(推荐,避免密码暴露)

如果不想在 mcp.json 中明文写入密码,可以改用环境变量:

json 复制代码
{
  "mcpServers": {
    "mysql": {
      "command": "uvx",
      "args": ["mysql_mcp_server"],
      "env": {
        "MYSQL_HOST": "你的数据库地址",
        "MYSQL_PORT": "3306",
        "MYSQL_USER": "mcp_user",
        "MYSQL_PASSWORD": "${env:MYSQL_PASSWORD}",
        "MYSQL_SSL_MODE": "REQUIRED"
      }
    }
  }
}

然后在 Windows 系统环境变量中新建 MYSQL_PASSWORD,值为 #123456

2.4. 如果不想用SSL模式

  1. mcp 配置 env

    json 复制代码
    "MYSQL_SSL_MODE": "DISABLED",
    
    "MYSQL_SSH_ENABLE": "false",
  2. mysql 用户密码插件改成传统的

sh 复制代码
ALTER USER 'mcp_user'@'*'  IDENTIFIED WITH mysql_native_password BY '#123456';

3. 效果示例