mcpField
M
MySQL MCP Server

MySQL MCP Server

本地服务
github.com/affannahmedAI 与智能体079 周前更新

关于 MySQL MCP Server

MySQL MCP Server 是连接 AI 应用与 MySQL 数据库的协议实现,适合需要以受控方式检查和分析数据库的应用。它将表数据读取、SQL 查询与环境变量凭据配置纳入 MCP 接口。

主要功能

  1. 01将 MySQL 表列为资源
  2. 02读取表内容
  3. 03执行 SQL 查询并处理错误
  4. 04通过环境变量配置数据库访问
  5. 05记录数据库操作

适用场景

  1. 01让 AI 应用检查可用表和数据
  2. 02通过 MCP 执行数据库查询
  3. 03为数据库访问保留操作日志

MCP 相关

它向 MCP 客户端提供 MySQL 表资源、表内容读取和 SQL 查询能力;设计用于集成到 AI 应用,而非独立运行。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"MCP-Server-with-Claude-Ai": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
启动命令npx -y @smithery/cli

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

安装包
npm@smithery/cli

工具

还没有获取到工具列表

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

详细介绍

Tests smithery badge

MySQL MCP 服务

一种模型上下文协议(MCP)实现,可与 MySQL 数据库安全交互。该服务组件支持 AI 应用(宿主端/客户端)与 MySQL 数据库之间的通信,通过受控接口,让数据库探索和分析更加安全、结构化。

注意:MySQL MCP 服务并非设计为独立服务,而是作为 AI 应用与 MySQL 数据库之间的通信协议实现。

功能

  • 将可用的 MySQL 表列为资源
  • 读取表内容
  • 执行 SQL 查询并妥善处理错误
  • 通过环境变量安全访问数据库
  • 全面的日志记录

安装

手动安装
pip install mysql-mcp-server
通过 Smithery 安装

通过 Smithery 自动为 Claude Desktop 安装 MySQL MCP 服务:

npx -y @smithery/cli install mysql-mcp-server --client claude

配置

设置以下环境变量:

MYSQL_HOST=localhost     # Database host
MYSQL_PORT=3306         # Optional: Database port (defaults to 3306 if not specified)
MYSQL_USER=your_username
MYSQL_PASSWORD=your_password
MYSQL_DATABASE=your_database

使用

配合 Claude Desktop 使用

将以下内容添加到 claude_desktop_config.json:

{
  "mcpServers": {
    "mysql": {
      "command": "uv",
      "args": [
        "--directory", 
        "path/to/mysql_mcp_server",
        "run",
        "mysql_mcp_server"
      ],
      "env": {
        "MYSQL_HOST": "localhost",
        "MYSQL_PORT": "3306",
        "MYSQL_USER": "your_username",
        "MYSQL_PASSWORD": "your_password",
        "MYSQL_DATABASE": "your_database"
      }
    }
  }
}
使用 MCP Inspector 调试

虽然 MySQL MCP 服务并非设计为独立运行或直接通过 Python 命令行启动,但你可以使用 MCP Inspector 对其进行调试。

MCP Inspector 提供了一种便捷方式,可用于测试和调试 MCP 实现:

# Install dependencies
pip install -r requirements.txt
# Use the MCP Inspector for debugging (do not run directly with Python)

MySQL MCP 服务旨在集成到 Claude Desktop 等 AI 应用中,不应直接作为独立的 Python 程序运行。

开发

# Clone the repository
git clone https://github.com/yourusername/mysql_mcp_server.git
cd mysql_mcp_server
# Create virtual environment
python -m venv venv
source venv/bin/activate  # or `venv\Scripts\activate` on Windows
# Install development dependencies
pip install -r requirements-dev.txt
# Run tests
pytest

安全注意事项

  • 切勿提交环境变量或凭据
  • 使用权限仅满足必要需求的数据库用户
  • 考虑在生产环境中实施查询白名单
  • 监控并记录所有数据库操作

安全最佳实践

此 MCP 实现需要访问数据库才能运行。为确保安全:

  1. 创建专用的 MySQL 用户,并仅授予最低限度的权限
  2. 切勿使用 root 凭据或管理员账户
  3. 限制数据库访问范围,仅允许必要的操作
  4. 启用日志记录以便审计
  5. 定期审查数据库访问安全性

有关以下内容的详细说明,请参阅 MySQL 安全配置指南:

  • 创建受限的 MySQL 用户
  • 设置适当的权限
  • 监控数据库访问
  • 安全最佳实践

⚠️ 重要:配置数据库访问时,务必遵循最小权限原则。

许可证

MIT 许可证——详情请参阅 LICENSE 文件。

贡献

  1. Fork 此仓库
  2. 创建你的功能分支(git checkout -b feature/amazing-feature)
  3. 提交更改(git commit -m 'Add some amazing feature')
  4. 推送到该分支(git push origin feature/amazing-feature)
  5. 创建 Pull Request

评论

支持 Markdown

第一次接触 MCP?

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

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