MySQL数据库连接服务

一个基于Model Context Protocol (MCP)的MySQL数据库连接服务,提供SQL查询执行、表列表查看和表结构检查功能。

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

使用说明

MySQL MCP服务器

可以连接到MySQL数据库的Model Context Protocol(MCP)服务器。

功能

  • 连接MySQL数据库
  • 执行SQL查询
  • 查询表格列表
  • 检查表格结构

设置

git clone https://github.com/bibaram/mysql-mcp-server.git
cd mysql-mcp-server
npm install

依赖性有问题

npm install @modelcontextprotocol/sdk mysql2

先下载以上内容,然后覆盖从git收到的内容。

npm install

使用方法

1.直接运行时

# 환경 변수 설정
export DB_HOST=localhost
export DB_PORT=3306
export DB_USER=root
export DB_PASSWORD=your_password
export DB_NAME=your_database

# 서버 시작
npm start

2.设置Claude Desktop后使用

在Claude Desktop的配置文件中添加以下内容:

视窗: %APPDATA%/Claude/claude_desktop_config.json

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "mysql": {
      "command": "node",
      "args": ["path/to/mysql-mcp-server/server.js"],
      "env": {
        "DB_HOST": "localhost",
        "DB_USER": "root",
        "DB_PASSWORD": "your_password",
        "DB_NAME": "your_database"
      }
    }
  }
}

3.连接多个数据库

{
  "mcpServers": {
    "mysql-prod": {
      "command": "node",
      "args": ["path/to/mysql-mcp-server/server.js"],
      "env": {
        "DB_HOST": "prod-server.com",
        "DB_USER": "prod_user",
        "DB_PASSWORD": "prod_password",
        "DB_NAME": "production_db"
      }
    },
    "mysql-dev": {
      "command": "node",
      "args": ["path/to/mysql-mcp-server/server.js"],
      "env": {
        "DB_HOST": "localhost",
        "DB_USER": "dev_user",
        "DB_PASSWORD": "dev_password",
        "DB_NAME": "development_db"
      }
    }
  }
}

环境变量

  • DB_HOST:SQL服务器主机(默认为localhost)
  • DB_PORT:SQL服务器端口(默认值:3306)
  • DB_USER:MySQL用户名(默认为root)
  • DB_PASSWORD:MySQL密码(默认为空字符串)
  • DB_NAME:数据库名称(默认值:test)

可用工具

execute_query

运行SQL查询。

{
  "name": "execute_query",
  "arguments": {
    "query": "SELECT * FROM users LIMIT 10"
  }
}

show_tables

查看数据库中的所有表。

{
  "name": "show_tables",
  "arguments": {}
}

describe_table

检查特定表格的结构。

{
  "name": "describe_table",
  "arguments": {
    "table_name": "users"
  }
}

要求

  • Node.js 18.0.0或更高版本
  • SQL服务器

依赖性

  • @modelcontextprotocol/sdk:MCP SDK
  • mysql2:MySQL客户端

许可证

麻省理工学院