mcpField
M
MySQL MCP Server

MySQL MCP Server

本地服务
github.com/blanplan-ai数据库079 周前更新

关于 MySQL MCP Server

MySQL MCP Server 是面向 MCP 客户端的 MySQL 数据库连接服务,支持查询及受权限控制的数据修改,并可通过环境变量配置。

主要功能

  1. 01连接 MySQL 数据库
  2. 02执行 SELECT、SHOW、DESCRIBE 查询
  3. 03执行 INSERT、UPDATE、DELETE 操作
  4. 04按操作配置写入权限
  5. 05环境变量配置与文件日志

适用场景

  1. 01让 MCP 客户端查询 MySQL 数据
  2. 02按需允许客户端修改数据库记录

MCP 相关

通过 MCP 协议和 stdio 与客户端通信,并提供 mysql_query 和 mysql_execute 工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MySQL MCP 服务

基于 go-mcp 构建的 MySQL 数据库连接服务,通过标准输入/输出与客户端通信,允许执行 SQL 查询和数据操作。

功能

  • 通过 MCP 协议与客户端通信
  • 支持连接到 MySQL 数据库
  • 支持查询操作(SELECT、SHOW、DESCRIBE)
  • 支持数据操作(INSERT/UPDATE/DELETE)
  • 权限控制(可配置是否允许 INSERT、UPDATE、DELETE 操作)
  • 支持通过环境变量灵活配置
  • 调试模式支持将详细日志输出到文件

安装

方法 1:直接安装(推荐)

使用 Go 的 install 命令直接从 GitHub 安装:

go install github.com/blanplan-ai/ai2mysql-mcp-server/cmd/ai2mysql-mcp-server@latest
方法 2:手动构建
# Clone the repository
git clone https://github.com/blanplan-ai/ai2mysql-mcp-server.git
cd ai2mysql-mcp-server

# Build the server
go build -o ai2mysql-mcp-server ./cmd/ai2mysql-mcp-server

配置

此服务使用环境变量进行配置。

环境变量

可设置以下环境变量来配置服务:

环境变量描述默认值
MYSQL_HOSTMySQL 主机地址127.0.0.1
MYSQL_PORTMySQL 端口号3306
MYSQL_USERMySQL 用户名root
MYSQL_PASSMySQL 密码password
DEFAULT_DATABASE默认数据库名称test
ALLOW_INSERT是否允许 INSERT 操作false
ALLOW_UPDATE是否允许 UPDATE 操作false
ALLOW_DELETE是否允许 DELETE 操作false
IS_DEV启用开发模式并输出详细日志false
LOG_PATH日志文件路径(仅在开发模式下生效)/tmp/ai2mysql.log
JSON 配置示例

下面是一个 JSON 配置示例,可用于设置环境变量:

{
  "MYSQL_HOST": "127.0.0.1",
  "MYSQL_PORT": "3306",
  "MYSQL_USER": "root",
  "MYSQL_PASS": "password",
  "DEFAULT_DATABASE": "test",
  "ALLOW_INSERT": "false",
  "ALLOW_UPDATE": "false",
  "ALLOW_DELETE": "false",
  "IS_DEV": "false",
  "LOG_PATH": "/tmp/ai2mysql.log"
}

配置说明:

  • 所有布尔类型的配置项均使用字符串 "true" 或 "false"
  • 在生产环境中,建议禁用 IS_DEV,以防止敏感信息泄露
  • 建议根据实际需求限制 INSERT/UPDATE/DELETE 权限
  • 密码等敏感信息应通过环境变量配置

使用方法

启动服务

安装后运行服务:

# Run with default settings
ai2mysql-mcp-server

# Run with environment variables
MYSQL_HOST=127.0.0.1 MYSQL_USER=root MYSQL_PASS=password ai2mysql-mcp-server

# Enable development mode
IS_DEV=true ai2mysql-mcp-server

启用开发模式后,详细日志将输出到配置的日志文件(默认:/tmp/ai2mysql.log),其中包括完整的请求、响应和错误信息。

与 Cursor 搭配使用

此服务专为支持 MCP 协议的客户端设计,例如 Cursor。

在 Cursor 中,可通过以下配置启用 MySQL MCP 服务:

{
  "mcpServers": {
    "mysql-mcp-server": {
      "command": "ai2mysql-mcp-server",
      "args": [],
      "env": {
        "MYSQL_HOST": "127.0.0.1",
        "MYSQL_PORT": "3306",
        "MYSQL_USER": "root",
        "MYSQL_PASS": "password",
        "DEFAULT_DATABASE": "test",   // Default database, optional
        "ALLOW_INSERT": "false",      // Allow insert operations, optional
        "ALLOW_UPDATE": "false",      // Allow update operations, optional
        "ALLOW_DELETE": "false",      // Allow delete operations, optional
        "IS_DEV": "false"             // Enable development mode, optional
      }
    }
  }
}

添加配置后,可使用以下工具:

  1. mysql_query:执行 SQL 查询操作

    • 参数:sql - SQL 查询语句(SELECT、SHOW、DESCRIBE)
  2. mysql_execute:执行 SQL 数据操作

    • 参数:sql - SQL 数据操作语句(INSERT/UPDATE/DELETE)

开发

项目结构
ai2mysql-mcp-server/
└── cmd/
    └── ai2mysql-mcp-server/  # Server entry
        └── main.go          # Main program
依赖项

调试与故障排除

调试模式

设置环境变量 IS_DEV=true 以启用调试模式:

IS_DEV=true ai2mysql-mcp-server

在调试模式下,服务会将详细日志输出到指定的日志文件,包括:

  • 所有收到的请求和发送的响应
  • 详细的 SQL 查询和执行信息
  • 错误和异常情况
  • 性能相关信息(例如查询执行时间)
常见问题

如果在 Cursor 中遇到问题:

  1. 工具未显示:检查 Cursor 配置文件中的命令路径是否正确,确保可执行文件存在且具有执行权限
  2. 连接失败:检查数据库连接信息是否正确,使用调试模式查看详细错误消息
  3. 权限问题:默认仅允许查询操作,检查是否需要启用插入/更新/删除权限

许可证

MIT License

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。