MySQL数据库访问服务

一个与MySQL数据库集成的MCP服务器实现,为LLMs提供安全的数据库访问能力。

  • by kevinwatt
  • JavaScript
  • 本地部署
  • 18 星标
  • 更新于
在 GitHub 查看 kevinwatt/mysql-mcp

使用说明

MySQL MCP服务器

与MySQL数据库集成的MCP服务器实现,为LLM提供安全的数据库访问功能。

特性

  • 读取操作
    • 执行只读SELECT查询
    • 列出所有数据库表
    • 显示表格结构
    • 查看架构信息
  • 写入操作
    • 使用事务支持执行INSERT/UPDATE/DELETE
    • 数据安全的参数化查询
    • 返回受影响的行并插入ID
  • 安全
    • SELECT查询的只读事务模式
    • 查询长度和结果大小限制
    • 性能监控和记录
    • 自动交易处理

安装

npm install -g @kevinwatt/mysql-mcp

使用方法 潜水桌面

  1. 点击Dive桌面中的“+添加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服务器

工具文档

  • mysql_query

    • 执行只读SELECT查询
    • 输入:
      • sql (string):要执行的SQL SELECT查询
    • 限制:
      • 最大查询长度:4096个字符
      • 最大结果行数:1000
      • 查询超时:30秒
  • mysqlexecute

    • 执行数据修改操作
    • 输入:
      • sql (字符串):SQL语句(插入/更新/删除)
      • params (数组,可选):SQL语句的参数
    • 特征:
      • 返回受影响的行数
      • 返回上次插入的ID
      • 自动交易处理
  • list_tables

    • 列出当前数据库中的所有表
    • 无需输入
  • describe_table

    • 显示表格结构
    • 输入:
      • table (string):要描述的表名

使用示例

要求你的法学硕士:

"Show me all tables in the database"
"Describe the structure of users table"
"Select all active users from the database"
"Insert a new record into orders table"

手动启动

如果需要,请手动启动服务器:

npx @kevinwatt/mysql-mcp

需求

  • Node.js 18+
  • MySQL服务器
  • MCP兼容LLM服务

许可证

麻省理工学院

作者

严德伟

关键词

  • 主控程序
  • MySQL
  • 数据库
  • 潜水
  • 大语言模型
  • 人工智能