Token导航 LogoToken导航TokenDH.com
Cloudflare MySQL MCP Server logo
数据服务stdio官方级别未说明来源级核验

Cloudflare MySQL MCP Server

MCP Server

一个生产就绪的MySQL MCP(模型上下文协议)服务器,通过MCP工具提供安全的数据库访问,包括认证、监控和全面的数据库操作。

工具数

0

提示词数

0

GitHub Stars

4

资源数

0
数据库服务安全访问MySQLClaude数据分析Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

vedantparmar12

提供方

vedantparmar12

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -r requirements.txt

详细介绍

MySQL MCP服务器文档

概述

这是一个生产就绪的MySQL MCP(模型上下文协议)服务器,通过MCP工具提供安全的数据库访问。服务器包括身份验证、监控和全面的数据库操作。

Alt text

快速开始

先决条件

  • Python 3.8+
  • MySQL数据库服务器
  • Claude桌面应用程序
  • Git

安装

  1. 克隆并导航到项目:
cd C:\Users\MCP-Procuction_MySQL
  1. 安装依赖项:
pip install -r requirements.txt
  1. 设置环境变量(创建 .env 文件):
# Database Configuration
MYSQL_HOST=localhost
MYSQL_PORT=3306
MYSQL_USER=your_username
MYSQL_PASSWORD=your_password
MYSQL_DATABASE=your_database

# Security
SECRET_KEY=your-secret-key-here
ALLOWED_OPERATIONS=SELECT,INSERT,UPDATE,DELETE

# Optional: GitHub OAuth
GITHUB_CLIENT_ID=your_github_client_id
GITHUB_CLIENT_SECRET=your_github_client_secret

# Optional: Monitoring
SENTRY_DSN=your_sentry_dsn

运行服务器

主要方法:

python -m src.main

替代方法:

# Using run script
python run_server.py

# Standalone mode
python mcp_standalone.py

Claude桌面集成

Claude桌面的MCP配置

将此配置添加到您的Claude Desktop MCP设置文件中。配置文件通常位于:

窗户: %APPDATA%\Claude\claude_desktop_config.json macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Linux: ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "mysql-mcp": {
      "command": "python",
      "args": ["src/server.py"],
      "cwd": "/path/to/your/MYSQL-Production"
    }
  }
}

Claude Desktop的设置步骤

  1. 安装MCP服务器 (按照上述安装步骤操作)
  2. 找到您的Claude Desktop配置文件 使用上述路径
  3. 添加MCP配置 到配置文件
  4. 更新 cwd 路径 以匹配您的实际安装目录
  5. 设置环境变量 在一个 .env 项目目录中的文件
  6. 重新启动克劳德桌面 加载新的MCP服务器
  7. 验证连接 让Claude列出数据库表

配置说明

  • 替换 your_username, your_password等。使用您的实际数据库凭据
  • 更新 cwd 与实际安装目录匹配的路径
  • 确保Python在您的系统PATH中可用
  • 服务器将在Claude Desktop中以“mysql-mcp”的形式提供

测试Claude集成

配置后,您可以通过询问Claude来测试集成:

  • “列出数据库中的所有表”
  • “显示用户表的结构”
  • “查询我的产品表的前5行”

项目结构

MYSQL-Production/
├── src/
│   ├── main.py              # Main MCP server entry point
│   ├── server.py            # Core MCP server implementation
│   ├── config.py            # Configuration management
│   ├── models.py            # Data models
│   ├── auth/                # Authentication modules
│   │   ├── github_oauth.py  # GitHub OAuth integration
│   │   └── session.py       # Session management
│   ├── database/            # Database modules
│   │   ├── connection.py    # Database connection handling
│   │   ├── security.py      # Security and validation
│   │   └── utils.py         # Database utilities
│   ├── tools/               # MCP tools implementation
│   │   ├── basic_tools.py   # Basic database operations
│   │   ├── advanced_tools.py# Advanced database features
│   │   ├── write_tools.py   # Write operations
│   │   └── transaction_tools.py # Transaction management
│   └── monitoring/          # Monitoring and logging
│       └── sentry.py        # Sentry integration
├── tests/                   # Test suite
├── requirements.txt         # Python dependencies
├── pyproject.toml          # Project configuration
├── docker-compose.yml      # Docker setup
└── README.md               # Basic documentation

可用的MCP工具

基本操作

  • mysql-mcp:query_database -执行SELECT查询
  • mysql-mcp:list_tables -列出所有数据库表
  • mysql-mcp:describe_table -获取表架构信息

写入操作

  • mysql-mcp:execute_sql -执行INSERT、UPDATE、DELETE操作
  • mysql-mcp:create_table -创建新表

高级功能

  • 交易管理
  • 查询优化
  • 性能监控
  • 安全验证

配置

环境变量

变量描述必填默认
MYSQL_HOSTMySQL服务器主机本地主机
MYSQL_PORTMySQL服务器端口3306
MYSQL_USER数据库用户名-
MYSQL_PASSWORD数据库密码-
MYSQL_DATABASE数据库名称-
SECRET_KEY安全密钥-
ALLOWED_OPERATIONS允许的SQL操作SELECT、INSERT、UPDATE、DELETE
MAX_CONNECTIONS连接池大小10
QUERY_TIMEOUT查询超时(秒)30

安全功能

  • SQL注入预防
  • 查询验证和清理
  • 操作限制
  • 有限制的连接池
  • 基于会话的身份验证
  • 可选的GitHub OAuth集成

使用示例

基本查询

# Using MCP client
result = await client.call_tool("mysql-mcp:query_database", {
    "sql": "SELECT * FROM users LIMIT 10"
})

表操作

# List tables
tables = await client.call_tool("mysql-mcp:list_tables", {})

# Describe table structure
schema = await client.call_tool("mysql-mcp:describe_table", {
    "table": "users"
})

数据修改

# Insert data
result = await client.call_tool("mysql-mcp:execute_sql", {
    "sql": "INSERT INTO users (name, email) VALUES ('John', 'john@example.com')"
})

测试

运行测试套件:

# Run all tests
python -m pytest tests/

# Run specific test
python test_mcp.py

Docker部署

使用提供的Docker设置:

# Start services
docker-compose up -d

# View logs
docker-compose logs -f

监控与调试

日志记录

服务器包括不同级别的结构化日志记录:

  • 信息:一般操作
  • 警告:潜在问题
  • 错误:操作失败
  • 调试:详细的调试信息

哨兵集成

配置Sentry进行错误跟踪:

SENTRY_DSN=your_sentry_dsn
SENTRY_ENVIRONMENT=production

调试模式

在中启用调试模式 debug_settings.py:

DEBUG = True
LOG_LEVEL = "DEBUG"

故障排除

常见问题

  1. 连接错误

- 验证MySQL服务器是否正在运行 - 检查凭据 .env 文件 - 确保网络连接

  1. 权限错误

- 验证数据库用户权限 - 检查 ALLOWED_OPERATIONS 配置

  1. 性能问题

- 监控连接池使用情况 - 检查查询执行时间 - 查看数据库索引

调试命令

# Test database connection
python -c "from src.database.connection import test_connection; test_connection()"

# Check MCP server status
python -c "from src.main import main; main()"

发展

代码的风格

该项目使用:

  • 黑色用于代码格式化
  • 绒布
  • MyPy用于类型检查
# Format code
black src/

# Run linting
ruff check src/

# Type checking
mypy src/

添加新工具

  1. 在适当的模块中创建工具功能
  2. 注册 src/tools/register_tools.py
  3. 在中添加测试 tests/
  4. 更新文档

生产部署

DEPLOYMENT.md 有关详细的生产部署说明,包括:

  • 环境设置
  • 安全强化
  • 性能优化
  • 监控配置

安全考虑

  • 始终使用参数化查询
  • 实施正确的身份验证
  • 定期更新依赖关系
  • 监控可疑活动
  • 使用SSL/TLS进行连接
  • 实施速率限制

支持

对于问题和疑问:

  1. 检查故障排除部分
  2. 查看日志以了解错误详细信息
  3. 查阅现有的README.md和DEPLOYMENT.md文件
  4. 检查测试文件以获取使用示例

目录标签

目录标签

数据库服务安全访问MySQLClaude数据分析Python本地部署MCP协议数据库管理

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

oauth

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiooauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP