关于 MySQL MCP Server
MySQL MCP Server 为 MCP 客户端提供连接 MySQL 数据库的接口,面向需要读取表数据或执行 SQL 的用户。它支持获取表列表、读取数据和执行多种 SQL 操作,也说明了在 WSL 环境中的连接方式。
主要功能
- 01获取数据库表列表
- 02读取表中最多 100 行数据
- 03执行 SELECT、SHOW TABLES 等 SQL
- 04支持 INSERT、UPDATE 和 DELETE
- 05提供 WSL 连接说明
适用场景
- 01查看 MySQL 数据库中的表
- 02读取表数据供后续处理
- 03通过 MCP 执行数据库查询或更新
MCP 相关
该 MCP 服务向客户端提供数据库表列表和读取资源,并提供用于执行 SQL 查询的工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
MySQL MCP Server
本项目提供一个使用 MCP(Model Context Protocol)与 MySQL 数据库交互的服务。它提供了一个用于在 WSL 环境中访问 MySQL 数据库的接口。
功能
- 获取 MySQL 数据库中的表列表
- 从表中读取数据(最多 100 行)
- 执行 SQL 查询(SELECT、SHOW TABLES、INSERT、UPDATE、DELETE 等)
项目结构
src/mysql_mcp_server/
├── __init__.py # パッケージ初期化
├── config/ # 設定関連モジュール
│ ├── __init__.py
│ └── settings.py # データベース設定
├── database/ # データベース操作モジュール
│ ├── __init__.py
│ ├── connection.py # DB接続処理
│ └── errors.py # エラークラス
├── tools/ # ツールモジュール
│ ├── __init__.py
│ └── sql_tools.py # SQL実行ツール
└── server.py # MCPサーバーメイン
安装和运行
前提条件
- Python 3.11 或更高版本
- MySQL 服务(本地或远程)
- 虚拟环境(virtualenv)
- Docker(如需使用 Docker)
设置
-
克隆仓库:
git clone <repository-url> cd mysql_mcp_server -
创建并激活虚拟环境:
python -m venv .venv source .venv/bin/activate # Linuxの場合 -
安装依赖:
pip install -r requirements.txt . -
运行设置脚本,为运行脚本添加执行权限:
chmod +x setup.sh ./setup.sh
运行方式
可以通过以下任一方式运行服务:
1. 直接运行
./run_direct.sh
2. 作为模块运行
./run_module.sh
3. 在 Docker 容器中运行
# Dockerイメージをビルド
docker build -t mysql-mcp-server:latest .
# コンテナを実行
./run_docker.sh
环境变量
服务使用以下环境变量连接 MySQL:
MYSQL_HOST:MySQL 服务的主机(默认值:host.docker.internal)MYSQL_PORT:MySQL 服务的端口(默认值:13306)MYSQL_USER:MySQL 用户名MYSQL_PASSWORD:MySQL 密码MYSQL_DATABASE:要使用的数据库名称
MCP 协议
此服务实现了 MCP(Model Control Protocol),并提供以下端点:
list_resources:获取数据库中的表列表read_resource:从指定表中读取数据list_tools:列出可用工具(用于执行 SQL 查询)call_tool:执行 SQL 查询
WSL 集成
连接 WSL(Windows Subsystem for Linux)环境中的 MySQL 服务时:
- 确认 WSL 中的 MySQL 服务已启动
- 确认 WSL 中的 MySQL 已配置为允许远程连接
- 在
/etc/mysql/mysql.conf.d/mysqld.cnf文件中将 bind-address 修改为0.0.0.0 - 为要使用的 MySQL 用户授予远程访问权限
- 在
- 确认 Windows 侧的防火墙允许连接 MySQL 端口(默认值为 13306)
开发
Nox 会话
此项目提供用于测试、格式化和代码检查的 Nox 会话。
-
安装 Nox:
pip install nox -
运行所有测试:
nox -s test -
格式化代码:
nox -s format -
运行代码检查:
nox -s lint
直接运行测试
pytest tests/
查看代码覆盖率
pytest --cov=src.mysql_mcp_server tests/
许可证
本项目根据 MIT 许可证发布。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。