MCP Server for MySQL based on NodeJS

MCP Server for MySQL based on NodeJS

site icon
2025.04.14 0
TypeScript数据库服务只读查询数据库
zhaoxin34_mcp-server-mysql 是一个基于 NodeJS 的 MCP(Model Context Protocol)服务器,专门为 MySQL 数据库提供只读访问。该服务器使 LLMs(大型语言模型)能够检查数据库模式并执行只读查询。
View on GitHub

Overview

基本能力

产品定位

zhaoxin34_mcp-server-mysql 是一个专门为 MySQL 数据库提供只读访问的 MCP 服务器,旨在帮助 LLMs 安全地查询和分析数据库内容。

核心功能

  • 只读查询执行:支持执行只读 SQL 查询,包括复杂的查询和连接操作。
  • 数据库模式检查:提供详细的表结构、列信息、索引和约束等元数据。
  • 安全特性:包括 SQL 注入防护、查询白名单/黑名单、速率限制和只读事务强制。
  • 性能优化:连接池优化、查询结果缓存和大结果集流式处理。
  • 监控与调试:全面的查询日志、性能指标收集和健康检查端点。

适用场景

  • 数据分析:LLMs 可以查询数据库以获取分析数据。
  • 数据库模式检查:LLMs 可以检查数据库结构以生成报告或建议。
  • 安全查询:在需要限制数据库访问权限的场景下,提供安全的只读查询能力。

工具列表

  • mysql_query:执行只读 SQL 查询,支持参数化查询、查询超时和结果分页。

常见问题解答

  1. 连接问题:确保 MySQL 服务器运行且可访问,检查凭据和权限。
  2. 性能问题:调整连接池大小、查询超时值和启用查询缓存。
  3. 安全问题:检查速率限制配置和 SSL/TLS 设置。
  4. 路径问题:确保 PATH 环境变量包含必要的二进制路径。
  5. 认证问题:确保 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

运行测试

pnpm run setup:test:db
pnpm test

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。