MySQL数据库查询建议工具

为MySQL数据库提供模式检查和SQL查询建议的MCP服务器,专为Cursor IDE设计。

  • by beqaux
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 beqaux/mysql-mcp-server-query-builder

使用说明

MySQL MCP LLM服务器

该项目为MySQL模式检查和SQL查询建议提供了一个MCP(模型上下文协议)服务器,旨在与Cursor IDE无缝协作。

特性

  • 列出所有表格 在MySQL数据库中
  • 检查表架构 (列和类型)
  • 查看表关系 (外键)
  • 建议SQL查询 从自然语言问题
  • 针对与Cursor IDE一起使用进行了优化

正确的光标MCP服务器配置示例

以下是使用Cursor启动MCP服务器时应使用的正确配置格式:

{
  "mysql-mcp-server-query-builder": {
    "command": "npx",
    "args": [
      "-y",
      "mysql-mcp-server-query-builder"
    ],
    "env": {
      "DB_HOST": "127.0.0.1",
      "DB_PORT": "3306",
      "DB_USERNAME": "root",
      "DB_PASSWORD": "",
      "DB_DATABASE": "your_database_name"
    }
  }
}
cursor://anysphere.cursor-deeplink/mcp/install?name=mysql-mcp-server-query-builder&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIm15c3FsLW1jcC1zZXJ2ZXItcXVlcnktYnVpbGRlciJdLCJlbnYiOnsiREJfSE9TVCI6IjEyNy4wLjAuMSIsIkRCX1BPUlQiOiIzMzA2IiwiREJfVVNFUk5BTUUiOiJyb290IiwiREJfUEFTU1dPUkQiOiIiLCJEQl9EQVRBQkFTRSI6InlvdXJfZGF0YWJhc2VfbmFtZSJ9fQ==

光标深度链接:

您可以通过填写自己的数据库信息,使用此深度链接轻松地将MCP服务器添加到Cursor。

快速入门(在Cursor IDE中)

1.先决条件

  • Node.js(建议使用v16+)
  • MySQL数据库(带有您要检查的模式)
  • 光标IDE 支持MCP

2.安装依赖项

在项目根目录中打开一个终端并运行:

npm install

3.配置MCP服务器(游标IDE)

Cursor IDE使用 C:\Users\{username}\.cursor\mcp.json 配置MCP服务器的文件。此项目包括一个示例配置:

{
  "mcpServers": {
    "sql-mcp-server": {
      "command": "npx ts-node",
      "args": [
        "/path/to/your/project/src/index.ts"
      ],
      "env": {
        "DB_HOST": "localhost",
        "DB_PORT": "3306",
        "DB_USERNAME": "your_username",
        "DB_PASSWORD": "your_password",
        "DB_DATABASE": "your_database_name"
      },
      "cwd": "/path/to/your/project"
    }
  }
}
  • 编辑 env 章节 以匹配您的MySQL凭据和数据库。
  • 确保 args 路径指向您的 src/index.ts 文件。

4.启动MCP服务器

在Cursor IDE中,当您使用MCP功能(如模式检查或查询建议)时,MCP服务器将自动启动。您也可以手动运行它:

npx ts-node src/index.ts

Cursor IDE中的用法

配置并运行MCP服务器后,您可以在Cursor IDE的代理模式下使用它来检查数据库模式并获取SQL查询建议。

可用资源(数据检查)

  • list_tables:获取数据库中所有表的列表
  • get_table_schema:获取特定表的详细架构信息(列、类型、约束)
  • get_table_关系:获取特定表的外键关系

代理交互示例

获取查询建议:

  • “suggest_query我需要一个查询来查找所有活动用户”
  • “suggest_query显示过去30天的所有订单及客户详细信息”
  • “suggest_query_pro按订单总价值查找前10名客户”

代理将自动使用适当的资源来了解您的数据库结构并提供相关的SQL查询。

SQL查询建议工具

  • 建议查询:建议对自然语言问题进行SQL SELECT查询,仅使用模式的相关子集(尽量减少令牌使用以提高效率)。
  • suggest_query_pro:建议使用FULL模式和所有关系进行SQL SELECT查询(使用更多标记,但提供最完整的上下文)。

提示: 使用 suggest_query 对于大多数问题,保存令牌。使用 suggest_query_pro 如果你想让LLM看到整个数据库模式。

项目结构

  • src/index.ts --主MCP服务器实现
  • .cursor/mcp.json --Cursor IDE的MCP服务器配置
  • package.json --项目依赖关系

故障排除

  • 确保您的MySQL服务器正在运行,并且可以使用中的凭据访问 .cursor/mcp.json.
  • 如果您看到连接错误,请检查您的环境变量和数据库权限。

许可证

麻省理工学院