@enemyrr/mcp-mysql-server

@enemyrr/mcp-mysql-server

镜子 (jìng zi)

MCP-Mirror

数据库
访问服务器

README

@enemyrr/mcp-mysql-server

smithery badge

一个提供 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: Add Server"
    • 填写以下字段:
      • 名称: 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" // 将使用项目的 .env 文件
    // OR
    host: "localhost",
    user: "your_user",
    password: "your_password",
    database: "your_database"
  }
});

可用工具

1. connect_db

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

2. query

执行 SELECT 查询,带有可选的预处理语句参数。

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

3. execute

执行 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. list_tables

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

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. create_table

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

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. add_column

向现有表添加新列。

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 注入
  • 支持通过环境变量进行安全密码处理
  • 在执行之前验证查询
  • 完成后自动关闭连接

错误处理

服务器提供详细的错误消息,用于:

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

贡献

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

许可证

MIT

推荐服务器

Supabase MCP Server

Supabase MCP Server

一个模型上下文协议(MCP)服务器,它提供对 Supabase 管理 API 的编程访问。该服务器允许 AI 模型和其他客户端通过标准化的接口来管理 Supabase 项目和组织。

精选
JavaScript
MCP DuckDB Knowledge Graph Memory Server

MCP DuckDB Knowledge Graph Memory Server

一个为 Claude 设计的记忆服务器,它使用 DuckDB 存储和检索知识图谱数据,从而增强了对话的性能和查询能力,并能持久保存用户信息。

精选
TypeScript
Metabase MCP Server

Metabase MCP Server

使人工智能助手能够与 Metabase 数据库和仪表板进行交互,允许用户通过自然语言列出和执行查询、访问数据可视化以及与数据库资源进行交互。

精选
JavaScript
Airtable MCP Server

Airtable MCP Server

一个模型上下文协议(Model Context Protocol,MCP)服务器,它提供通过 Claude Desktop 或其他 MCP 客户端以编程方式管理 Airtable 数据库、表格、字段和记录的工具。

精选
JavaScript
mcp-shodan

mcp-shodan

用于查询 Shodan API 和 Shodan CVEDB 的 MCP 服务器。该服务器提供 IP 查询、设备搜索、DNS 查询、漏洞查询、CPE 查询等工具。

精选
JavaScript
Verodat MCP Server

Verodat MCP Server

一个 MCP 服务器,集成了 Verodat 的数据管理功能和像 Claude Desktop 这样的人工智能系统,使用户能够管理账户、工作区和数据集,并能对他们的数据执行人工智能驱动的查询。

官方
本地
TypeScript
Tembo MCP Server

Tembo MCP Server

一个 MCP 服务器,它使 Claude 能够与 Tembo Cloud 平台 API 交互,从而允许用户通过自然语言管理 Tembo Cloud 资源。

官方
TypeScript
MongoDB MCP Server

MongoDB MCP Server

为LLM提供对MongoDB数据库的只读访问权限,以检查集合模式并执行聚合管道。

官方
JavaScript
nile-mcp

nile-mcp

Nile数据库的MCP服务器 - 使用LLM管理和查询数据库、租户、用户和身份验证

官方
TypeScript
Appwrite MCP Server

Appwrite MCP Server

一个模型上下文协议服务器,允许 AI 助手与 Appwrite 的 API 交互,从而提供管理 Appwrite 项目中数据库、用户、函数、团队和其他资源的工具。

官方
Python