SuperAPI AI 工具集

go-mcp-mysql

go-mcp-mysql 是一个基于 Model Context Protocol(MCP)的 MySQL 交互服务器,使用 Go 语言编写,无需 Node.js 或 Python 环境即可运行。它提供对 MySQL 数据库和表的 CRUD 操作工具,并支持可配置的只读模式,防止意外的写操作。用户还可以通过 --with-explain-check 标志让服务器在执行查询前使用 EXPLAIN 语句检查查询计划。该项目目前仍在开发中,可能尚未准备好用于生产环境。

访问官网

工具介绍

go-mcp-mysql 是一个零负担、开箱即用的 Model Context Protocol(MCP)服务器,用于与 MySQL 交互和自动化。它使用 Go 语言编写,不需要 Node.js 或 Python 环境。

用途

该服务器为 MCP 客户端(如 AI 助手)提供操作 MySQL 数据库的工具,支持对数据库和表进行 CRUD 操作,并可通过只读模式防止意外的写操作。

主要能力

  • 提供 list_database、list_table、desc_table 等工具用于查看数据库和表结构。
  • 提供 create_table、alter_table、read_query、write_query、update_query、delete_query 等工具用于执行 SQL 操作。
  • 支持只读模式:添加 --read-only 标志后,仅 list、read_ 和 desc_ 开头的工具可用。
  • 支持查询计划检查:默认情况下,CRUD 查询会先执行 EXPLAIN ? 语句检查查询计划是否符合预期;添加 --with-explain-check 标志可禁用此行为。

使用方式

  1. 获取最新发布版本,将其放入 $PATH 或易于访问的位置。
  2. 如果已安装 Go,也可以从源码构建。
  3. 配置方式有两种:方法 A 使用命令行参数;方法 B 使用带自定义选项的 DSN。具体请参考 MySQL DSN 文档。
  4. 如果二进制文件不在 $PATH 中,需要将 go-mcp-mysql 替换为二进制文件的完整路径。
  5. 添加 --read-only 标志启用只读模式,添加后需刷新/重启 MCP 服务器。
  6. 添加 --with-explain-check 标志禁用默认的 EXPLAIN 检查。

适用场景

适用于需要通过 MCP 协议让 AI 助手或自动化工具安全地查询和操作 MySQL 数据库的场景,尤其适合希望避免意外写操作的环境。

限制

该项目目前仍在开发中,可能尚未准备好用于生产环境。