Back to MCP directory
publicPublicdnsLocal runtime

mysql-mcp

MySQL MCP Server是一个集成MySQL数据库的MCP服务器实现,为LLM提供安全的数据库访问能力,支持读写操作和安全控制。

article

README

🚀 MySQL MCP 服务器

这是一个集成了 MySQL 数据库的 MCP 服务器实现,能够为大语言模型(LLM)提供安全可靠的数据库访问能力,保障数据交互的稳定与安全。

🚀 快速开始

本服务器为大语言模型提供了安全的数据库访问途径,可通过简单的配置与 Dive Desktop 配合使用,也能手动启动。

✨ 主要特性

读取操作

  • 可执行只读 SELECT 查询,精准获取所需数据。
  • 能列出所有数据库表,方便了解数据库结构。
  • 支持查看表结构,清晰掌握表的字段信息。
  • 可显示模式信息,辅助进行数据库管理。

写入操作

  • 执行 INSERT/UPDATE/DELETE 操作,且带有事务支持,确保数据操作的一致性。
  • 使用参数化查询,有效保障数据安全,防止 SQL 注入。
  • 返回受影响行数和插入 ID,方便对操作结果进行跟踪。

安全性

  • SELECT 查询采用只读事务模式,防止数据被意外修改。
  • 对查询长度和结果集大小进行限制,避免资源过度占用。
  • 具备性能监控和日志记录功能,便于排查问题和优化性能。
  • 支持自动事务处理,提高数据操作的稳定性。

📦 安装指南

使用以下命令进行全局安装:

npm install -g @kevinwatt/mysql-mcp

💻 使用示例

基础用法

让您的大语言模型执行以下指令:

"显示数据库中所有表格"
"描述 users 表的结构"
"查询所有活跃用户"
"向 orders 表插入一条新记录"

与 Dive Desktop 配合使用

  1. 在 Dive Desktop 中点击 "+ 添加 MCP 服务器"。
  2. 复制并粘贴以下配置:
{
  "mcpServers": {
    "mysql": {
      "command": "npx",
      "args": [
        "-y",
        "@kevinwatt/mysql-mcp"
      ],
      "env": {
        "MYSQL_HOST": "127.0.0.1",
        "MYSQL_PORT": "3306",
        "MYSQL_USER": "root",
        "MYSQL_PASS": "",
        "MYSQL_DB": "your_database"
      }
    }
  }
}
  1. 点击"保存"以安装 MCP 服务器。

手动启动

若有需要,可使用以下命令手动启动服务器:

npx @kevinwatt/mysql-mcp

📚 详细文档

工具文档

| 工具名称 | 功能描述 | 输入参数 | 限制条件 | | ---- | ---- | ---- | ---- | | mysql_query | 执行只读 SELECT 查询 | sql (字符串):要执行的 SELECT SQL 查询 | 最大查询长度:4096 字符;最大结果行数:1000;查询超时时间:30 秒 | | mysql_execute | 执行数据修改操作 | sql (字符串):SQL 语句(INSERT/UPDATE/DELETE);params (数组,可选):SQL 语句的参数 | 无 | | list_tables | 列出当前数据库中的所有表 | 无 | 无 | | describe_table | 显示表结构 | table (字符串):要描述的表名 | 无 |

功能详情

  • mysql_query:执行只读 SELECT 查询,可精准获取数据库中的数据。
  • mysql_execute:执行数据修改操作,支持 INSERT/UPDATE/DELETE 语句,返回受影响行数和最后插入 ID,自动处理事务。
  • list_tables:无需输入,即可列出当前数据库中的所有表。
  • describe_table:输入表名,可显示该表的结构信息。

🔧 技术细节

本项目基于 Node.js 18+ 版本构建,依赖 MySQL 服务,为兼容 MCP 的 LLM 服务提供支持。通过对查询长度和结果集大小的限制,以及只读事务模式等安全机制,保障了数据库访问的安全性和稳定性。

📄 许可证

本项目采用 MIT 许可证。

👨‍💻 作者

Dewei Yen

🔑 关键字

mcp、mysql、数据库、dive、llm、ai

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client