Go Mcp Mysql

Go Mcp Mysql

🚀 零负担、即用型模型上下文协议(MCP)MySQL服务器

本项目是一个零负担、即用型的模型上下文协议(MCP)服务器,专门用于与 MySQL 进行交互和自动化操作。无需 Node.js 或 Python 环境,该服务器提供了一系列工具,可对 MySQL 数据库和表执行 CRUD 操作,同时还具备只读模式,能有效防止意外的写入操作。此外,您还可以通过添加 --with-explain-check 标志,在执行查询前使用 EXPLAIN 语句来检查查询计划。不过需要注意的是,这是一个正在开发中的项目,可能尚未适合投入生产环境使用。

🚀 快速开始

本部分将为您介绍如何安装和使用这个 MCP MySQL 服务器。

📦 安装指南

您可以通过以下两种方式安装本项目:

  1. 下载最新发布版本,并将其放置在您的 $PATH 中,或者放在一个您方便访问的位置。
  2. 如果您已经安装了 Go,也可以从源代码进行构建:
go install -v github.com/Zhwt/go-mcp-mysql@latest

💻 使用示例

方法 A:使用命令行参数

{
"mcpServers": {
"mysql": {
"command": "go-mcp-mysql",
"args": [
"--host", "localhost",
"--user", "root",
"--pass", "password",
"--port", "3306",
"--db", "mydb"
]
}
}
}

方法 B:使用带自定义选项的 DSN

{
"mcpServers": {
"mysql": {
"command": "go-mcp-mysql",
"args": [
"--dsn", "username:password@tcp(localhost:3306)/mydb?parseTime=true&loc=Local"
]
}
}
}

请参阅MySQL DSN以获取更多详细信息。

注意:如果您将二进制文件放在不在 $PATH 中的位置,需要用完整路径替换 go-mcp-mysql。例如,如果您将二进制文件放在下载文件夹中,则可以使用以下路径:

{
"mcpServers": {
"mysql": {
"command": "C:\\Users\\\\Downloads\\go-mcp-mysql.exe",
"args": [
...
]
}
}
}

可选标志

  • 只读模式:添加 --read-only 标志以启用只读模式。在此模式下,仅允许以 listread_desc_ 开头的工具使用。请确保在添加此标志后刷新/重新启动。
  • 检查查询计划:启用检查查询计划功能,方法是在执行查询之前使用 EXPLAIN 语句:
# 检查单条查询
go-mcp-mysql --dsn "root:password@tcp(localhost:3306)/test" --with-explain -sql "SELECT * FROM user"

# 启用检查所有查询
export GMCP_CHECK_QUERY=true

🛠️ 工具介绍

Schema Tools

mysql-backup

  • 功能:备份指定数据库的所有表结构。
  • 参数
    • --src-dsn:源数据库连接字符串(必填)。
    • --dest-filename:输出文件名,格式为 {db}_{table}.sql(可选,默认为 stdout)。
  • 示例
mysql-backup --src-dsn "root:password@tcp(localhost:3306)/test"

Data Tools

mysql-import

  • 功能:将 SQL 文件导入到指定数据库。
  • 参数
    • --dsn:数据库连接字符串(必填)。
    • --filename:输入文件路径(必填)。
  • 示例
mysql-import --dsn "root:password@tcp(localhost:3306)/test" --filename user.sql

mysql-export

  • 功能:将指定数据库的所有表导出为 SQL 文件。
  • 参数
    • --src-dsn:源数据库连接字符串(必填)。
    • --dest-filename:输出文件名,格式为 {db}_{table}.sql(可选,默认为 stdout)。
  • 示例
mysql-export --src-dsn "root:password@tcp(localhost:3306)/test"

📄 许可证

该项目采用 MIT 许可证。

  • 0 关注
  • 0 收藏,8 浏览
  • system 提出于 2025-09-23 15:09

相似服务问题