MySQL MCP Server 使用说明
项目简介
MySQL MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,它充当 AI 助手和 MySQL 数据库之间的桥梁。通过此服务器,AI 助手可以在安全可控的环境下,列出数据库中的表,读取表数据,并执行 SQL 查询,从而实现数据库的探索和数据分析。
主要功能点
- 资源浏览: 将 MySQL 数据库中的表作为资源暴露给 AI 助手,允许助手了解可访问的数据表。
- 数据读取: 允许 AI 助手读取指定表中的数据内容,以便助手理解数据结构和内容。
- SQL 执行: 提供工具让 AI 助手能够执行 SQL 查询,从而进行更复杂的数据分析和操作。
- 安全访问: 通过环境变量管理数据库连接信息,保障数据库凭据的安全。
- 操作日志: 记录服务器操作,便于审计和问题排查。
安装步骤
- 确保你的Python环境中已安装 pip。
- 打开终端或命令提示符,运行以下命令安装 MySQL MCP Server:
pip install mysql-mcp-server
服务器配置
对于 MCP 客户端(如 Claude Desktop),你需要配置服务器连接信息。以下是一个 'claude_desktop_config.json' 示例,展示了如何配置 MySQL MCP Server:
{ "mcpServers": { "mysql": { "command": "uv", "args": [ "--directory", "path/to/mysql_mcp_server", "run", "mysql_mcp_server" ], "env": { "MYSQL_HOST": "localhost", // MySQL 服务器地址 "MYSQL_PORT": "3306", // MySQL 服务器端口,默认为 3306 "MYSQL_USER": "your_username", // MySQL 数据库用户名 "MYSQL_PASSWORD": "your_password",// MySQL 数据库密码 "MYSQL_DATABASE": "your_database" // 默认连接的数据库名 } } } }
配置参数说明:
- 'server name': 'mysql' (服务器名称,客户端用于标识和调用)
- 'command': 'uv' (或 'python') (启动服务器的命令,这里假设使用 'uv' 或 'python' 直接运行)
- 'args': 启动命令的参数,
- '--directory': 'path/to/mysql_mcp_server' (指向 'mysql_mcp_server' 模块所在路径,需要替换为实际路径)
- 'run': 表示运行模块
- 'mysql_mcp_server': 要运行的模块名
- 'env': 环境变量配置,用于MySQL数据库连接
- 'MYSQL_HOST': 数据库主机名或IP地址
- 'MYSQL_PORT': 数据库端口号 (可选,默认 3306)
- 'MYSQL_USER': 数据库用户名
- 'MYSQL_PASSWORD': 数据库密码
- 'MYSQL_DATABASE': 数据库名称
注意:
- 请将 'path/to/mysql_mcp_server' 替换为 'mysql_mcp_server' 模块在你的文件系统中的实际路径。如果你将项目克隆到本地,则应指向项目根目录。
- 确保已设置正确的 MySQL 数据库连接环境变量,包括 'MYSQL_HOST', 'MYSQL_PORT', 'MYSQL_USER', 'MYSQL_PASSWORD', 和 'MYSQL_DATABASE'。
基本使用方法
-
启动服务器:
- 作为独立服务器: 在安装 'mysql-mcp-server' 的环境中,可以直接运行命令 'python -m mysql_mcp_server' 启动服务器。
- 通过 MCP 客户端: 配置好 MCP 客户端(如 Claude Desktop)后,客户端会自动启动并连接到 MySQL MCP Server。
-
连接数据库:
- 服务器启动时,会读取环境变量中的数据库连接信息,自动连接到 MySQL 数据库。
-
使用 AI 助手:
- 在支持 MCP 协议的 AI 助手 (如 Claude Desktop) 中,配置并启用 MySQL MCP Server 后,AI 助手即可通过 MCP 协议与服务器交互,执行如列出数据表、读取表数据、执行 SQL 查询等操作。 具体操作方式请参考 AI 助手客户端的使用说明。
信息
分类
数据库与文件