Skip to main content
Glama
kevinbin

MCP MySQL Server

by kevinbin

@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/替换为您克隆和构建项目的实际路径。

Related MCP server: MySql MCP Server

数据库配置

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

  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 请求。

执照

麻省理工学院

Install Server
F
license - not found
B
quality
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kevinbin/mcp-mysql-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server