使用说明

项目简介

MySQL Database Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在让大型语言模型 (LLM) 能够安全、方便地与 MySQL 数据库进行交互。它提供了一系列工具,允许 LLM 执行 SQL 查询、修改数据库结构等操作,从而扩展 LLM 的数据访问和处理能力。

主要功能点

  • 数据库连接管理: 支持通过数据库 URL、环境变量或直接参数配置连接 MySQL 数据库。
  • SQL 查询与执行: 提供工具执行 SELECT 查询以及 INSERT、UPDATE、DELETE 等修改操作,支持参数化查询以防止 SQL 注入。
  • 数据库 Schema 管理: 包含列出数据表、描述表结构、创建新表和添加列等工具,方便 LLM 理解和操作数据库结构。
  • 错误处理与安全: 具备完善的错误处理机制,并采取措施保障数据库操作的安全性,例如使用预编译语句、参数校验等。

安装步骤

  1. 克隆仓库: 使用 'git clone https://github.com/enemyrr/mcp-mysql-server.git' 命令克隆仓库到本地。
  2. 进入目录: 使用 'cd mcp-mysql-server' 命令进入项目目录。
  3. 安装依赖: 使用 'npm install' 命令安装项目依赖。
  4. 构建项目: 使用 'npm run build' 命令构建项目。

服务器配置

在 MCP 客户端中(例如 Cursor IDE)添加服务器配置,以便客户端连接到 MySQL MCP 服务器。配置信息如下:

{
  "server name": "mysql",
  "type": "command",
  "command": "node /absolute/path/to/mcp-mysql-server/build/index.js"
  // 请将 "/absolute/path/to/mcp-mysql-server" 替换为实际的项目绝对路径,
  // 例如 "/Users/yourusername/mcp-mysql-server/build/index.js"
}

配置说明:

  • '"server name"': 服务器名称,可以自定义,例如 "mysql"。在客户端调用工具时会用到此名称。
  • '"type"': 服务器类型,此处为 "command",表示通过命令行启动服务器。
  • '"command"': 启动服务器的命令。需要指向 'node' 执行程序以及构建后的 'index.js' 文件的绝对路径。请务必替换 '/absolute/path/to/mcp-mysql-server' 为您本地仓库的实际绝对路径。

基本使用方法

  1. 启动 MCP 客户端(如 Cursor IDE)。
  2. 在 MCP 客户端中添加上述服务器配置。
  3. 在 LLM 交互中使用 'use_mcp_tool' 等函数调用 MySQL 服务器提供的工具,例如 'connect_db' 连接数据库,'query' 执行查询,'execute' 执行更新等操作。具体工具和参数请参考仓库 README.md 文档中 "Available Tools" 章节的描述。

示例 (在支持 MCP 协议的 LLM 客户端中使用):

连接数据库 (使用数据库 URL):

use_mcp_tool({
  server_name: "mysql",
  tool_name: "connect_db",
  arguments: {
    url: "mysql://user:password@host:3306/database"
  }
});

执行 SQL 查询:

use_mcp_tool({
  server_name: "mysql",
  tool_name: "query",
  arguments: {
    sql: "SELECT * FROM users WHERE id = ?",
    params: [1]
  }
});

更多工具和使用方法请参考仓库的 README.md 文档。

信息

分类

数据库与文件