MCP-MySQL Server

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • The MCP server supports reading database configuration from .env files to manage database connection parameters

  • Allows AI models to interact with MySQL databases through a standardized interface, providing operations like querying, executing updates, listing tables, describing table structure, and creating tables

@enemyrr/mcp-mysql-服务器

提供 MySQL 数据库操作的模型上下文协议服务器。该服务器使 AI 模型能够通过标准化接口与 MySQL 数据库交互。

Cursor IDE 的安装和设置

通过 Smithery 安装

要通过Smithery自动为 Claude Desktop 安装 MySQL 数据库服务器:

npx -y @smithery/cli install @enemyrr/mcp-mysql-server --client claude

手动安装

  1. 克隆并构建项目:
git clone https://github.com/enemyrr/mcp-mysql-server.git cd mcp-mysql-server npm install npm run build
  1. 在 Cursor IDE 设置中添加服务器:
    • 打开命令面板(Cmd/Ctrl + Shift + P)
    • 搜索“MCP:添加服务器”
    • 填写字段:
      • 名称: mysql
      • 类型: command
      • 命令: node /absolute/path/to/mcp-mysql-server/build/index.js

注意:将/absolute/path/to/替换为您克隆和构建项目的实际路径。

数据库配置

您可以通过三种方式配置数据库连接:

  1. .env 中的数据库 URL (推荐):
DATABASE_URL=mysql://user:password@host:3306/database
  1. .env 中的各个参数
DB_HOST=localhost DB_USER=your_user DB_PASSWORD=your_password DB_DATABASE=your_database
  1. 通过工具直接连接
use_mcp_tool({ server_name: "mysql", tool_name: "connect_db", arguments: { url: "mysql://user:password@host:3306/database" // OR workspace: "/path/to/your/project" // Will use project's .env // OR host: "localhost", user: "your_user", password: "your_password", database: "your_database" } });

可用工具

1. 连接数据库

使用 URL、工作区路径或直接凭据连接到 MySQL 数据库。

2. 查询

使用可选的准备好的语句参数执行 SELECT 查询。

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

3. 执行

使用可选的准备好的语句参数执行 INSERT、UPDATE 或 DELETE 查询。

use_mcp_tool({ server_name: "mysql", tool_name: "execute", arguments: { sql: "INSERT INTO users (name, email) VALUES (?, ?)", params: ["John Doe", "john@example.com"] } });

4. 列表表

列出所连接数据库中的所有表。

use_mcp_tool({ server_name: "mysql", tool_name: "list_tables" });

5. describe_table

获取特定表的结构。

use_mcp_tool({ server_name: "mysql", tool_name: "describe_table", arguments: { table: "users" } });

6. 创建表

创建具有指定字段和索引的新表。

use_mcp_tool({ server_name: "mysql", tool_name: "create_table", arguments: { table: "users", fields: [ { name: "id", type: "int", autoIncrement: true, primary: true }, { name: "email", type: "varchar", length: 255, nullable: false } ], indexes: [ { name: "email_idx", columns: ["email"], unique: true } ] } });

7. 添加列

向现有表中添加新列。

use_mcp_tool({ server_name: "mysql", tool_name: "add_column", arguments: { table: "users", field: { name: "phone", type: "varchar", length: 20, nullable: true } } });

特征

  • 多种连接方式(URL、工作区、直接)
  • 通过自动清理来安全处理连接
  • 查询参数的预处理语句支持
  • 架构管理工具
  • 全面的错误处理和验证
  • TypeScript 支持
  • 自动工作区检测

安全

  • 使用准备好的语句来防止 SQL 注入
  • 支持通过环境变量进行安全密码处理
  • 执行前验证查询
  • 完成后自动关闭连接

错误处理

服务器提供以下详细的错误消息:

  • 连接失败
  • 无效的查询或参数
  • 缺少配置
  • 数据库错误
  • 架构验证错误

贡献

欢迎贡献!请随时向https://github.com/enemyrr/mcp-mysql-server提交 Pull 请求。

执照

麻省理工学院

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

使 AI 模型能够通过标准化接口执行 MySQL 数据库操作,支持安全连接、查询执行和全面的模式管理。

  1. Installation & Setup for Cursor IDE
    1. Installing via Smithery
    2. Installing Manually
  2. Database Configuration
    1. Available Tools
      1. 1. connect_db
      2. 2. query
      3. 3. execute
      4. 4. list_tables
      5. 5. describe_table
      6. 6. create_table
      7. 7. add_column
    2. Features
      1. Security
        1. Error Handling
          1. Contributing
            1. License
              ID: hcqqd3qi8q