MySQL连接器

一个用于Smithery的MySQL连接器,允许直接从Smithery连接到MySQL数据库,支持数据库查询和表结构查看。

  • by aqaranewbiz
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 aqaranewbiz/mcp-mysql-server

使用说明

Smithery的MySQL MCP服务器(Python)

Smithery的MySQL连接器,允许您直接从Smithery连接到MySQL数据库,使用Python构建。

特性

  • 连接到MySQL数据库:配置并连接到MySQL数据库
  • 列出数据库:查看所有可访问的数据库
  • 列表表格:查看指定数据库中的所有表
  • 描述表格:获取表的详细架构信息
  • 执行查询:运行只读SQL查询(SELECT、SHOW、DESCRIBE、EXPLAIN)
  • 安全:内置查询验证确保只允许只读操作

在Smithery安装

在Smithery中添加MCP服务器后,您将能够输入MySQL数据库凭据:

  • 主机:数据库服务器主机名(默认值:localhost)
  • 端口:数据库服务器端口(默认值:3306)
  • 用户:您的MySQL用户名
  • 密码:您的MySQL密码
  • 数据库:(可选)要连接的特定数据库

手动安装

  1. 克隆此存储库:
git clone https://github.com/aqaralife/mysql-mcp-python-server.git
  1. 安装依赖项:
cd mysql-mcp-python-server
npm install
pip install -r requirements.txt
  1. 使脚本可执行(Unix/Linux/Mac):
chmod +x mcp_server.py run.js

手动使用

要启动服务器,请执行以下操作:

node run.js

或者,直接运行Python脚本:

python mcp_server.py

可用工具

connect_db

建立与MySQL数据库的连接。

参数:

  • 主机:数据库服务器主机名
  • 端口:数据库服务器端口
  • 用户:数据库用户名
  • 密码:数据库密码
  • 数据库:(可选)数据库名称

列表_数据库

列出所有可访问的数据库。

参数: 无

list_tables

列出数据库中的所有表。

参数:

  • 数据库:(可选)数据库名称,如果已连接,则使用默认值

describe_table

显示表的架构。

参数:

  • 桌子:表名称
  • 数据库:(可选)数据库名称,如果已连接,则使用默认值

execute_query

执行只读SQL查询。

参数:

  • 怎么翻译:SQL查询(只允许SELECT、SHOW、DESCRIBE和EXPLAIN)
  • 数据库:(可选)数据库名称,如果已连接,则使用默认值

安全

服务器包括内置验证,以确保只允许只读操作:

  • 只允许使用SELECT、SHOW、DESCRIBE和EXPLAIN查询
  • 包含INSERT、UPDATE、DELETE、DROP等SQL命令的查询会被自动拒绝
  • 不允许在单个查询中使用多个语句(用分号分隔)

故障排除

如果您遇到问题:

  1. 找不到Python:服务器将自动检测 python3 或 python。如果两者都不起作用,请确保Python已安装并位于PATH中。

  2. 缺少模块:服务器将尝试自动安装所需的软件包。如果失败,请手动运行:

    pip install mysql-connector-python>=8.0.0
    
  3. 连接问题:验证您的数据库凭据,并确保MySQL服务器正在运行且可访问。

  4. Smithery连接问题:确保Smithery中的设置与您的数据库凭据正确配置。

  5. 服务器无响应:检查Smithery控制台中的日志输出是否有错误。

许可证

麻省理工学院

联系

如果您有任何问题,请创建一个问题。