返回市场
mysql_mcp_服务器

mysql_mcp_服务器

作者:designcomputer991 星标更新:2025-06-05

项目介绍

【技术文档摘要】: Tests PyPI - 下载量 smithery 徽章 MseeP.ai 安全评估徽章

MySQL MCP 服务器

这是一个实现模型上下文协议(MCP)的组件,用于与 MySQL 数据库进行安全交互。此服务器组件促进了人工智能应用程序(主机/客户端)与 MySQL 数据库之间的通信,通过一个受控接口使数据库探索和分析更加安全和有条理。

注意:MySQL MCP 服务器不是设计为独立服务器使用的,而是作为人工智能应用程序与 MySQL 数据库之间通信协议的实现。

特性

  • 列出可用的 MySQL 表作为资源
  • 读取表内容
  • 执行带有适当错误处理的 SQL 查询
  • 通过环境变量进行安全的数据库访问
  • 全面的日志记录

安装

手动安装

pip install mysql-mcp-server

通过 Smithery 安装

要通过 Smithery 自动安装 MySQL MCP 服务器到 Claude Desktop:

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

配置

设置以下环境变量:

MYSQL_HOST=localhost     # 数据库主机
MYSQL_PORT=3306         # 可选:数据库端口(未指定时默认为 3306)
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"
      }
    }
  }
}

与 Visual Studio Code 结合使用

在你的 mcp.json 中添加以下内容:

{
  "servers": {
      "mysql": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "--from",
                "mysql-mcp-server",
                "mysql_mcp_server"
            ],
      "env": {
        "MYSQL_HOST": "localhost",
        "MYSQL_PORT": "3306",
        "MYSQL_USER": "your_username",
        "MYSQL_PASSWORD": "your_password",
        "MYSQL_DATABASE": "your_database"
      }
    }
  }
}

注意:需要安装 uv 才能运行

使用 MCP Inspector 调试

虽然 MySQL MCP 服务器不打算单独运行或直接从命令行用 Python 运行,但你可以使用 MCP Inspector 来调试它。

MCP Inspector 提供了一种方便的方式来测试和调试你的 MCP 实现:

# 安装依赖
pip install -r requirements.txt
# 使用 MCP Inspector 进行调试(不要直接用 Python 运行)

MySQL MCP 服务器旨在集成到如 Claude Desktop 的人工智能应用程序中,并不应直接作为独立的 Python 程序运行。

开发

# 克隆仓库
git clone https://github.com/designcomputer/mysql_mcp_server.git
cd mysql_mcp_server
# 创建虚拟环境
python -m venv venv
source venv/bin/activate  # 或者在 Windows 上使用 `venv\Scripts\activate`
# 安装开发依赖
pip install -r requirements-dev.txt
# 运行测试
pytest

安全注意事项

  • 永远不要提交环境变量或凭据
  • 使用具有最小必要权限的数据库用户
  • 考虑在生产环境中实施查询白名单
  • 监控并记录所有数据库操作

安全最佳实践

此 MCP 实现需要数据库访问才能工作。为了安全:

  1. 创建一个专用的 MySQL 用户,具有最小权限
  2. 永远不要使用 root 凭据或管理账户
  3. 限制数据库访问仅限于必要的操作
  4. 启用日志记录以供审核
  5. 定期审查数据库访问的安全性

参见 MySQL 安全配置指南 以获取详细说明:

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

⚠️ 重要提示:配置数据库访问时始终遵循最小特权原则。

许可证

MIT 许可证 - 详情见 LICENSE 文件。

贡献

  1. 分叉仓库
  2. 创建你的功能分支 (git checkout -b feature/amazing-feature)
  3. 提交更改 (git commit -m '添加一些惊人的功能')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 打开拉取请求