mcpField
M
MySQL

MySQL

本地服务
github.com/pengcunfu数据库431 周前更新

关于 MySQL

MySQL 是用于交互和操作 MySQL 数据库的独立 MCP 服务,适合希望无需 Node.js 或 Python 运行环境即可使用数据库工具的用户。它支持 CRUD 和结构操作,并可启用只读模式与 EXPLAIN 检查。

主要功能

  1. 01无需 Node.js 或 Python 的独立可执行文件
  2. 02读取和修改数据库记录
  3. 03创建、修改、描述和删除表
  4. 04通过只读模式限制工具
  5. 05可选使用 EXPLAIN 检查查询

适用场景

  1. 01对 MySQL 执行 SELECT 查询
  2. 02通过工具管理数据库表
  3. 03以只读方式检查数据库
  4. 04在 CRUD 操作前检查查询计划

MCP 相关

它向 MCP 客户端提供 MySQL 数据库和表操作工具,包括查询与结构管理。

配置

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

暂未收录安装方式

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

代码仓库

工具

还没有获取到工具列表

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

详细介绍

来自项目 README

mysql-mcp-server

Trust Score License Go Report Card GitHub release

零负担、开箱即用的 MySQL MCP 服务器

简体中文


特性

  • 零依赖:无需 Node.js 或 Python 环境,单一可执行文件
  • 安全可靠:支持只读模式,防止意外写入操作
  • 查询优化:可选的 EXPLAIN 检查,优化查询性能
  • 完整 CRUD:支持数据库和表的完整生命周期管理
  • 高性能:基于 Go 语言开发,性能卓越
  • 易于使用:支持命令行参数和 DSN 两种配置方式

注意:本项目正在积极开发中,建议在生产环境使用前进行充分测试。

安装

方式一:下载预编译二进制文件

从 Releases 页面 下载适合您操作系统的最新版本,并将其放入 $PATH 或您可以轻松访问的位置。

方式二:从源码构建

如果您已安装 Go 1.21 或更高版本:

go install -v github.com/pengcunfu/mysql-mcp-server@latest

快速开始

配置方式 A:使用命令行参数
{
  "mcpServers": {
    "mysql": {
      "command": "mysql-mcp-server",
      "args": [
        "--host", "localhost",
        "--user", "root",
        "--pass", "password",
        "--port", "3306",
        "--db", "mydb"
      ]
    }
  }
}
配置方式 B:使用 DSN 连接字符串
{
  "mcpServers": {
    "mysql": {
      "command": "mysql-mcp-server",
      "args": [
        "--dsn", "username:password@tcp(localhost:3306)/mydb?parseTime=true&loc=Local"
      ]
    }
  }
}

提示:更多 MySQL DSN 配置选项请参考 MySQL DSN 文档。

使用绝对路径

如果二进制文件不在 $PATH 中,需要使用完整路径。例如,Windows 用户可以这样配置:

{
  "mcpServers": {
    "mysql": {
      "command": "C:\\Users\\<username>\\Downloads\\mysql-mcp-server.exe",
      "args": ["--host", "localhost", "--user", "root", "--pass", "password"]
    }
  }
}

配置选项

命令行参数
标志说明默认值
--hostMySQL 主机名localhost
--userMySQL 用户名root
--passMySQL 密码-
--portMySQL 端口3306
--db数据库名-
--dsn自定义 DSN(优先使用)-
--read-only启用只读模式false
--with-explain-check执行前使用 EXPLAIN 检查查询计划false
可选标志
标志说明
--read-only启用只读模式,仅允许 list、read_ 和 desc_ 开头的工具,防止数据修改
--with-explain-check在执行 CRUD 查询前使用 EXPLAIN 检查查询计划,帮助优化性能

注意:修改标志后需要重启 MCP 服务器才能生效

可用工具

数据库模式管理
list_table

列出数据库服务器中的所有表。

  • 参数:无
  • 返回:表的名称列表
create_table

在数据库服务器中创建新表。

  • 参数:
    • query:CREATE TABLE SQL 语句
  • 返回:受影响的行数
alter_table

修改现有表结构,不支持删除表或列。

  • 参数:
    • query:ALTER TABLE SQL 语句
  • 返回:受影响的行数
desc_table

查看表结构详情。

  • 参数:
    • name:表名
  • 返回:表的结构信息(CREATE TABLE 语句)
drop_table

删除数据库服务器中的表。

  • 参数:
    • name:表名
  • 返回:执行结果
数据操作
read_query

执行只读 SQL 查询(SELECT)。

  • 参数:
    • query:SELECT SQL 语句
  • 返回:查询结果集(CSV 格式)
write_query

执行写入 SQL 查询(INSERT)。

  • 参数:
    • query:INSERT SQL 语句
  • 返回:受影响的行数和最后插入的 ID
update_query

执行更新 SQL 查询(UPDATE)。

  • 参数:
    • query:UPDATE SQL 语句
  • 返回:受影响的行数
delete_query

执行删除 SQL 查询(DELETE)。

  • 参数:
    • query:DELETE SQL 语句
  • 返回:受影响的行数

贡献

欢迎贡献!如果您有任何想法、建议或发现了 bug,请:

  1. Fork 本仓库
  2. 创建您的特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交您的更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 开启一个 Pull Request

许可证

本项目采用 Apache License 2.0 许可证。

相关链接

作者

pengcunfu


如果这个项目对您有帮助,请给它一个 star!

评论

支持 Markdown

第一次接触 MCP?

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

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