MySQL MCP 服务器使用说明

项目简介

本项目是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在将 MySQL 数据库的功能以标准化的方式暴露给大型语言模型 (LLM) 客户端。通过此服务器,LLM 可以获取数据库的表结构信息,并执行 SQL 查询。

主要功能点

  • 表结构资源: 允许 LLM 客户端获取 MySQL 数据库中指定表的结构信息,例如列名、数据类型等。
  • SQL 查询工具: 提供一个工具,允许 LLM 客户端执行只读的 SQL 查询,并获取查询结果。

安装步骤

  1. 前提条件: 确保已安装 Node.js 和 npm。
  2. 克隆仓库: 'git clone https://github.com/wwwyo/mysql-mcp.git'
  3. 进入目录: 'cd mysql-mcp'
  4. 配置环境变量: 复制 '.env.example' 文件并重命名为 '.env',然后编辑 '.env' 文件,设置 'DATABASE_URL' 环境变量为你的 MySQL 数据库连接字符串。例如: 'DATABASE_URL="mysql://user:password@host:port/database"' (请替换 'user', 'password', 'host:port', 'database' 为你的实际数据库连接信息)
  5. 安装依赖: 'npm install'
  6. 构建项目: 'npm run build'

服务器配置

以下 JSON 配置信息用于 MCP 客户端连接到此服务器。

{
  "serverName": "mysql-mcp",
  "command": "node",
  "args": [
    "build/index.js"
  ],
  "description": "MySQL MCP Server for accessing MySQL databases",
  "transport": "stdio"
}
  • 'serverName': 服务器的名称,可以自定义,用于在 MCP 客户端中标识该服务器。
  • 'command': 启动服务器的命令,这里使用 'node' 运行 JavaScript 代码。
  • 'args': 传递给 'command' 的参数,指定服务器入口文件 'build/index.js'。构建后,JavaScript 文件位于 'build' 目录下。
  • 'description': 服务器的简短描述,方便用户理解服务器的功能。
  • 'transport': MCP 服务器使用的传输协议,这里是 'stdio',表示使用标准输入输出进行通信。

基本使用方法

  1. 启动服务器: 在仓库根目录下,执行命令 'npx @modelcontextprotocol/inspector node build/index.js' (或者直接使用客户端配置启动)。
  2. 客户端连接: 在 MCP 客户端中,添加上述服务器配置信息,客户端将通过 stdio 协议连接到 MySQL MCP 服务器。
  3. 资源和工具: 连接成功后,客户端可以发现并使用服务器提供的资源和工具:
    • 资源 'table-schema': 用于获取数据库表的结构信息。客户端可以使用资源 URI (例如 'mysql://database/{tableName}/schema') 请求特定表的结构。
    • 工具 'query': 用于执行 SQL 查询。客户端可以调用 'query' 工具,并提供 SQL 查询语句作为参数,获取查询结果。

请参考 MCP 客户端的文档,了解如何在客户端中使用资源和工具。

信息

分类

数据库与文件