mcpField
M
mcp-mysql-connector

mcp-mysql-connector

本地服务
github.com/daedalus数据库027 周前更新

关于 mcp-mysql-connector

mcp-mysql-connector 是将 MySQL 操作作为工具提供给 LLM Agent 和 AI 助手的 MCP 服务。它涵盖查询、结构与用户管理及事务控制,并将元数据作为资源提供。

主要功能

  1. 01连接和断开 MySQL
  2. 02执行 SQL 查询
  3. 03管理数据库、表、列和索引
  4. 04创建用户并管理权限
  5. 05提交或回滚事务
  6. 06查看数据库和表元数据

适用场景

  1. 01查询 MySQL 数据库
  2. 02检查表结构和索引
  3. 03管理数据库用户及权限
  4. 04应用或撤销一组数据库变更

MCP 相关

它将 MySQL 操作作为 MCP 工具,并将数据库和表元数据作为 MCP 资源提供。MCP 客户端可用它查询和管理已连接的数据库。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"daedalus-mcp-mysql-connector": {
"command": "uvx",
"args": [
"mcp-mysql-connector"
]
}
}
}
启动命令uvx mcp-mysql-connector

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

安装包
pypimcp-mysql-connector0.1.1

工具

还没有获取到工具列表

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

详细介绍

mcp-mysql-connector

将 MySQL 数据库功能作为工具提供给大模型 Agent 的 MCP 服务。

mcp-name: io.github.daedalus/mcp-mysql-connector

PyPI Python Coverage Ruff

概述

mcp-mysql-connector 是一个 Model Context Protocol(MCP)服务,为大模型 Agent 提供 MySQL 数据库操作工具。它允许 AI 助手通过标准化协议与 MySQL 数据库交互,支持:

  • 数据库和表管理
  • 查询执行
  • 用户身份验证和权限管理
  • 架构内省
  • 事务控制

安装

pip install mcp-mysql-connector

快速开始

运行服务
# Run with stdio transport (default)
mcp-mysql-connector

# Or run programmatically
python -c "from mcp_mysql import mcp; mcp.run()"
配置

使用 connect 工具连接到 MySQL:

{
  "host": "localhost",
  "port": 3306,
  "user": "root",
  "password": "your_password",
  "database": "your_database"
}

MCP 工具

连接管理
工具描述
connect连接到 MySQL 数据库
disconnect断开与 MySQL 的连接
is_connected检查连接状态
commit提交当前事务
rollback回滚当前事务
查询执行
工具描述
execute_query执行原始 SQL 查询并返回结果
数据库操作
工具描述
list_databases列出服务器上的所有数据库
create_database创建新数据库
drop_database删除数据库
database_exists检查数据库是否存在
表操作
工具描述
list_tables列出数据库中的表
describe_table获取表架构
create_table创建新表
drop_table删除表
table_exists检查表是否存在
列和索引操作
工具描述
show_columns显示列详情
show_indexes显示索引详情
create_index创建索引
drop_index删除索引
用户管理
工具描述
create_user创建 MySQL 用户
drop_user删除 MySQL 用户
grant_privileges向用户授予权限
revoke_privileges撤销用户权限
show_privileges显示用户权限
服务器信息
工具描述
server_status获取 MySQL 服务器状态

MCP 资源

该服务提供数据库和表元数据的动态资源:

  • database://{name} - 数据库元数据,包括表列表
  • table://{db}/{table} - 表元数据,包括架构、列和索引

使用示例

连接并查询
# First, connect to database
connect(host="localhost", user="root", password="secret", database="mydb")

# Execute a query
execute_query(sql="SELECT * FROM users WHERE active = true")

# List all tables
list_tables(database="mydb")
创建数据库和表
# Create a database
create_database(name="newapp")

# Create a table
create_table(name="users", schema="id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), email VARCHAR(255) UNIQUE")
用户管理
# Create a new user with password
create_user(username="app_user", host="localhost", password="secure_password")

# Grant privileges
grant_privileges(privileges="SELECT,INSERT,UPDATE,DELETE", on="newapp.*", username="app_user", host="localhost")
事务控制
# Start transaction
execute_query(sql="BEGIN")

# Execute operations
execute_query(sql="INSERT INTO accounts (balance) VALUES (100)")

# Commit or rollback
commit()  # or rollback()

环境变量

该服务支持通过环境变量进行配置:

export MYSQL_HOST=localhost
export MYSQL_PORT=3306
export MYSQL_USER=root
export MYSQL_PASSWORD=secret
export MYSQL_DATABASE=mydb

开发

# Clone repository
git clone https://github.com/daedalus/mcp-mysql-connector.git
cd mcp-mysql-connector

# Create virtual environment
python -m venv venv
source venv/bin/activate

# Install dependencies
pip install -e ".[test]"

# Run tests
pytest

# Format code
ruff format src/ tests/

# Lint
ruff check src/ tests/

# Type check
mypy src/

架构

mcp-mysql-connector/
├── src/mcp_mysql/
│   ├── core/models.py       # Data models (QueryResult, TableSchema, etc.)
│   ├── adapters/mysql.py    # MySQL connection & pooling
│   ├── services/connection.py  # Connection manager
│   ├── tools/mysql_tools.py   # MCP tool implementations
│   └── mcp.py              # FastMCP server setup
└── tests/                   # Test suite

要求

  • Python 3.11+
  • fastmcp >= 2.0.0
  • pymysql >= 1.1.0
  • sqlparse >= 0.4.0

许可证

MIT 许可证 - 详情请参阅 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

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

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