
MCP Server for MySQL based on NodeJS

2025.04.02
1
TypeScript数据库服务数据查询数据库
mcp-server-mysql 是一个基于 NodeJS 的 Model Context Protocol 服务器,专门为 MySQL 数据库提供只读访问功能。该服务器允许大型语言模型(LLMs)检查数据库模式并执行只读查询。
View on GitHub
Overview
产品定位
mcp-server-mysql 是一个专门为 MySQL 数据库设计的只读访问服务器,旨在为大型语言模型提供数据库查询和模式检查能力。
核心功能
- 数据库查询:执行只读 SQL 查询,支持参数化查询和结果分页。
- 模式检查:提供完整的数据库模式信息,包括表结构、列类型、索引和约束等。
- 安全特性:内置 SQL 注入防护、查询白名单/黑名单、速率限制等功能。
- 性能优化:连接池优化、查询结果缓存、大结果集流式处理等。
- 监控与调试:全面的查询日志记录、性能指标收集和健康检查端点。
适用场景
- 为 AI 应用提供数据库查询能力
- 数据库模式分析和文档生成
- 数据可视化工具的后端支持
- 教学和演示环境中的数据库访问
工具列表
- mysql_query:执行只读 SQL 查询,支持参数化查询、结果分页和查询统计。
常见问题解答
- 连接问题:检查 MySQL 服务器是否运行,确认凭据和权限是否正确。
- 性能问题:调整连接池大小、查询超时设置或启用查询缓存。
- 安全问题:检查速率限制配置和 SSL/TLS 设置。
- 路径问题:确保所有必需的二进制文件路径正确设置。
- 认证问题:确认 MySQL 用户认证方法是否正确配置。
使用教程
使用依赖
- 确保已安装 NodeJS 和 npm/pnpm
- 确保 MySQL 服务器已安装并可访问
安装教程
使用 Smithery 安装
npx -y @smithery/cli@latest install @benborla29/mcp-server-mysql --client claude
使用 MCP Get 安装
npx @michaellatman/mcp-get@latest install @benborla29/mcp-server-mysql
使用 NPM/PNPM 手动安装
# 使用 npm
npm install -g @benborla29/mcp-server-mysql
# 使用 pnpm
pnpm add -g @benborla29/mcp-server-mysql
调试方式
使用 Smithery 调试
# 检查状态
smithery status @benborla29/mcp-server-mysql
# 运行诊断
smithery diagnose @benborla29/mcp-server-mysql
# 查看日志
smithery logs @benborla29/mcp-server-mysql
使用 MCP Get 调试
# 检查状态
mcp-get status @benborla29/mcp-server-mysql
# 查看日志
mcp-get logs @benborla29/mcp-server-mysql
测试数据库设置
-- 创建测试数据库和用户
CREATE DATABASE IF NOT EXISTS mcp_test;
CREATE USER IF NOT EXISTS 'mcp_test'@'localhost' IDENTIFIED BY 'mcp_test_password';
GRANT ALL PRIVILEGES ON mcp_test.* TO 'mcp_test'@'localhost';
FLUSH PRIVILEGES;
# 运行测试
pnpm test