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

Generic Mysql MCP Server

MCP Server

一个提供连接和查询MySQL数据库工具的服务,通过标准化接口实现AI助手与数据库的交互。

工具数

7

提示词数

0

GitHub Stars

0

资源数

0
数据库连接MySQL数据分析AI交互

安装说明

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

作者 / 组织

dvalenza

提供方

dvalenza

最后核验

2026/5/17 20:20

快速接入

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

命令预览

pip install -r requirements.txt

详细介绍

MySQL MCP服务器

一种模型上下文协议(MCP)服务器,提供连接和查询通用MySQL数据库的工具。该服务器允许AI助手通过标准化的接口与MySQL数据库进行交互。

特性

  • 数据库连接管理:具有可配置超时的安全连接池
  • 查询执行:支持SELECT、INSERT、UPDATE、DELETE操作
  • 架构检查:用于探索数据库结构和表模式的工具
  • 连接测试:内置连接健康检查
  • 查询说明:解释性能分析的查询支持
  • 安全:参数化查询以防止SQL注入

可用工具

1. query_database

在MySQL数据库上执行SELECT查询。

  • 输入:SQL SELECT查询和可选参数
  • 输出:JSON格式的查询结果

2. update_database

执行INSERT、UPDATE、DELETE、CREATE、ALTER或DROP查询。

  • 输入:SQL修改查询和可选参数
  • 输出:受影响的行数

3. describe_table

获取特定表的详细架构信息。

  • 输入:表名称
  • 输出:列定义、数据类型、约束

4. list_tables

检索当前数据库中的所有表名。

  • 输出:表名数组

5. list_databases

获取MySQL服务器上所有可用的数据库。

  • 输出:数据库名称数组

6. test_connection

验证数据库连接是否正常工作。

  • 输出:连接状态

7. explain_query

获取SELECT查询的执行计划。

  • 输入:SQL SELECT查询和可选参数
  • 输出:查询执行计划明细

安装

  1. 克隆或创建项目目录:
   mkdir mysql-mcp-server
   cd mysql-mcp-server
  1. 安装依赖项:
   pip install -r requirements.txt

或者使用开发安装:

   pip install -e .
  1. 设置环境变量:
   cp .env.example .env

编辑 .env 使用MySQL数据库凭据:

   DB_HOST=localhost
   DB_PORT=3306
   DB_USER=your_username
   DB_PASSWORD=your_password
   DB_NAME=your_database_name

配置

服务器使用环境变量进行配置。所有设置都可以在您的 .env 文件:

数据库设置

  • DB_HOST:MySQL服务器主机名(默认值:localhost)
  • DB_PORT:MySQL服务器端口(默认:3306)
  • DB_USER:MySQL用户名(必填)
  • DB_PASSWORD:MySQL密码(必填)
  • DB_NAME:默认数据库名称(可选)
  • DB_CHARSET:字符集(默认值:utf8mb4)

连接池设置

  • DB_POOL_SIZE:池中的连接数(默认值:10)
  • DB_MAX_OVERFLOW:最大池溢出(默认值:20)

超时设置

  • DB_CONNECT_TIMEOUT:连接超时(秒)(默认值:10)
  • DB_READ_TIMEOUT:读取超时时间(秒)(默认值:30)
  • DB_WRITE_TIMEOUT:写入超时(秒)(默认值:30)

用法

运行服务器

要运行MCP服务器,请执行以下操作:

python -m mysql_mcp_server.main

与MCP客户端一起使用

此服务器实现了模型上下文协议,可以与任何兼容MCP的客户端一起使用。服务器通过stdio进行通信,并提供上面列出的工具。

查询示例

查询数据:

SELECT * FROM users WHERE age > 18 ORDER BY created_at DESC LIMIT 10

插入数据:

INSERT INTO users (name, email, age) VALUES (%(name)s, %(email)s, %(age)s)

更新数据:

UPDATE users SET last_login = NOW() WHERE id = %(user_id)s

获取表结构: 使用 describe_table 表名为“users”的工具

安全注意事项

  • 参数化查询:所有查询都支持参数化,以防止SQL注入
  • 查询验证:基本验证确保每个工具都有适当的查询类型
  • 连接池:具有自动清理功能的高效连接管理
  • 错误处理:全面的错误处理和记录

发展

项目结构

mysql_mcp_server/
├── __init__.py          # Package initialization
├── main.py             # MCP server implementation
├── database.py         # Database connection and operations
└── config.py           # Configuration management

运行测试

pytest tests/

代码格式化

black mysql_mcp_server/
ruff mysql_mcp_server/

需求

  • Python 3.8+
  • MySQL 5.7+或MariaDB 10.3+
  • 所需的Python包(见requirements.txt):

- mcp>=1.0.0 - PyMySQL>=1.1.0 - python dotenv>=1.0.0 - 媒染剂>=2.0.0

许可证

MIT许可证-有关详细信息,请参阅许可证文件。

贡献

  1. 复刻仓库
  2. 创建要素分支
  3. 进行更改
  4. 如果适用,添加测试
  5. 提交拉取请求

故障排除

连接问题:

  • 验证MySQL服务器是否正在运行且可访问
  • 检查中的数据库凭据 .env 文件
  • 确保MySQL用户具有适当的权限
  • 使用测试连接 test_connection 工具

权限问题:

  • 确保MySQL用户具有SELECT、INSERT、UPDATE、DELETE权限
  • 对于模式检查,用户需要访问INFORMATION_schema

性能问题:

  • 在配置中调整连接池设置
  • 使用EXPLAIN工具分析查询性能
  • 考虑为频繁查询的列添加数据库索引

目录标签

目录标签

数据库连接MySQL数据分析AI交互Python本地部署查询执行数据库管理

接入字段

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

stdio

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

none

工具数量(toolCount,工具数)

7

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP