mcpField
M
MCP Server for MySQL based on NodeJS

MCP Server for MySQL based on NodeJS

本地服务
github.com/benborla数据库2.2k13 周前更新

关于 MCP Server for MySQL based on NodeJS

MCP Server for MySQL 是基于 Node.js 的 MCP 服务,为 Claude 等 LLM 提供 MySQL 数据库的只读访问,可检查数据库结构并执行只读查询。默认只读,写入操作需通过环境变量显式开启。

主要功能

  1. 01只读访问,默认禁止写入
  2. 02通过环境变量分别开启 INSERT、UPDATE、DELETE
  3. 03支持 SSH 隧道连接远程数据库
  4. 04多数据库模式,无需重复连接
  5. 05按数据库设置读写权限
  6. 06结果中自动脱敏 PII 数据

适用场景

  1. 01让 LLM 在只读模式下查询业务数据库
  2. 02在 Claude Code 中检查表结构与字段信息
  3. 03通过 SSH 隧道访问远程 MySQL 实例

MCP 相关

该项目是 MCP 服务,向 MCP 客户端暴露 mysql_query 工具和 mysql://tables 资源,用于执行 SQL 与列出表结构。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"mysql": {
"command": "npx",
"args": [
"-y",
"@benborla29/mcp-server-mysql"
],
"env": {
"MYSQL_HOST": "<MYSQL_HOST>",
"MYSQL_PORT": "<MYSQL_PORT>",
"MYSQL_USER": "<MYSQL_USER>",
"MYSQL_PASS": "<MYSQL_PASS>",
"MYSQL_DB": "<MYSQL_DB>",
"ALLOW_INSERT_OPERATION": "<ALLOW_INSERT_OPERATION>",
"ALLOW_UPDATE_OPERATION": "<ALLOW_UPDATE_OPERATION>",
"ALLOW_DELETE_OPERATION": "<ALLOW_DELETE_OPERATION>"
}
}
}
}
启动命令npx -y @benborla29/mcp-server-mysql
需要配置的环境变量
MYSQL_HOST
MYSQL_PORT
MYSQL_USER
MYSQL_PASS
MYSQL_DB
ALLOW_INSERT_OPERATION
ALLOW_UPDATE_OPERATION
ALLOW_DELETE_OPERATION

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@benborla29/mcp-server-mysql

工具

还没有获取到工具列表

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

详细介绍

MySQL MCP 服务

MCP Toplist

Trust Score

赞助商 — Bloome

Bloome

使用 mcp-server-mysql 让 AI 查询 MySQL?Bloome 将此能力带给整个团队——这是一个 AI Agent IM 平台,AI Agent 是聊天成员。连接 MCP 工具,让 Agent 在同一个对话串中检查架构、运行查询,并为所有人解答数据问题。无需本地设置,在云端、网页和移动设备上运行。


MCP 服务可让 Claude 和其他大模型访问 MySQL——通过 Model Context Protocol 检查架构、运行查询,并可选择写入数据。

主要功能

  • 默认只读 — 通过环境变量标志选择启用写入操作
  • Claude Code 集成 — 针对 Anthropic 的 Claude Code CLI 优化
  • SSH 隧道支持 — 内置远程数据库支持
  • 多数据库模式 — 无需重新连接即可跨多个数据库查询
  • 架构级权限 — 按数据库控制读写权限
  • PII 脱敏 — 自动屏蔽结果中的敏感数据
  • 远程模式 — 使用 bearer token 身份验证的 HTTP 传输
  • SSL/TLS 支持 — 加密连接,支持 mTLS 选项

要求

  • Node.js v20+
  • MySQL 5.7+(建议使用 8.0+)
  • 具有适当权限的 MySQL 用户

快速安装

Claude Code(最简单):

claude mcp add mcp_server_mysql \
  -e MYSQL_HOST="127.0.0.1" \
  -e MYSQL_PORT="3306" \
  -e MYSQL_USER="root" \
  -e MYSQL_PASS="your_password" \
  -e MYSQL_DB="your_database" \
  -- npx @benborla29/mcp-server-mysql

Claude Desktop / 其他客户端:

{
  "mcpServers": {
    "mcp_server_mysql": {
      "command": "npx",
      "args": ["-y", "@benborla29/mcp-server-mysql"],
      "env": {
        "MYSQL_HOST": "127.0.0.1",
        "MYSQL_PORT": "3306",
        "MYSQL_USER": "root",
        "MYSQL_PASS": "your_password",
        "MYSQL_DB": "your_database"
      }
    }
  }
}

默认禁用所有写入操作。使用 ALLOW_INSERT_OPERATION=true、ALLOW_UPDATE_OPERATION=true、ALLOW_DELETE_OPERATION=true 启用。

文档

工具与资源

工具:mysql_query 执行 SQL 查询。默认只读。可通过标志启用写入操作。

资源:mysql://tables 列出已连接数据库的所有表和列元数据。

参与贡献

欢迎通过 github.com/benborla/mcp-server-mysql 提交 PR。

git clone https://github.com/benborla/mcp-server-mysql.git
pnpm install
pnpm run build
pnpm test

贡献者

许可证

MIT — 详情请参阅 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

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

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