使用说明
项目简介
MCP MySQL 本地数据库服务是一个为了个人开发者设计的轻量级服务程序,旨在作为 Cursor 等 MCP 客户端的后端,为其提供本地 MySQL 数据库的访问能力。通过友好的 API 接口,LLM 可以安全、便捷地查询数据库信息和执行 SQL 语句。
主要功能点
- 连接本地 MySQL 数据库:支持连接用户本地安装的 MySQL 数据库。
- 提供结构化数据访问:允许 LLM 获取数据库列表、表列表以及表结构信息。
- 执行 SQL 查询:支持 LLM 执行 SELECT 查询语句,并返回结构化查询结果。
- 参数化查询:支持参数化查询,有效防止 SQL 注入风险,保障数据安全。
- SSE 推送:支持 Server-Sent Events (SSE) 技术,为客户端提供实时的事件推送能力。
- API 密钥认证:通过 API 密钥保护接口安全,防止未授权访问。
安装步骤
- 克隆仓库
git clone https://github.com/TristanLib/mcp_server_mysql_windows.git cd mcp_server_mysql_windows - 安装依赖
确保已安装 Node.js (v14+) 和 MySQL 服务器。然后运行:
npm install - 配置环境变量
复制 '.env.example' 文件并重命名为 '.env',根据你的 MySQL 数据库配置和 API 密钥进行修改:
PORT=3000 NODE_ENV=development DB_HOST=localhost DB_PORT=3306 DB_USER=你的用户名 DB_PASSWORD=你的密码 DB_NAME=你的数据库名 API_KEY=你的API密钥 - 启动服务器
运行以下命令启动服务:
或使用开发模式(支持代码热更新):npm startnpm run dev
服务器配置 (MCP 客户端)
要将此 MCP 服务器配置到 MCP 客户端(例如 Cursor),你需要提供以下 JSON 配置信息。以下是使用 'command' 方式启动的配置示例:
{ "serverName": "MySQL-MCP-Server", "command": "node", "args": [ "/path/to/mcp_server_mysql_windows/mcp-server.js" ], "transport": "stdio", "capabilities": { "tools": true, "resources": true, "prompts": false, "streaming": false }, "description": "连接本地 MySQL 数据库的 MCP 服务器" }
配置参数说明:
- 'serverName': MCP 服务器的名称,可以自定义。
- 'command': 启动 MCP 服务器的命令,这里使用 'node'。
- 'args': 启动命令的参数,指向 'mcp-server.js' 脚本的绝对路径。请将 '/path/to/mcp_server_mysql_windows/mcp-server.js' 替换为实际的脚本路径。
- 'transport': 指定 MCP 服务器使用的传输协议,这里使用 'stdio' (标准输入输出)。
- 'capabilities': 声明服务器具备的能力,包括 'tools' (支持工具调用) 和 'resources' (支持资源管理)。
- 'description': 对 MCP 服务器的简要描述,方便在客户端识别。
基本使用方法
服务器启动后,MCP 客户端可以通过标准 MCP 协议与服务器进行通信。
主要工具 (Tools):
- 'execute_query': 执行 SQL 查询。
- 'get_table_structure': 获取表结构。
- 'list_databases': 获取数据库列表。
- 'list_tables': 获取指定数据库的表列表。
客户端可以调用这些工具来操作 MySQL 数据库。具体工具参数和使用方法请参考仓库 'README.md' 文件或源代码中的 'src/mcp.service.js' 文件。
资源 (Resources):
服务器将 MySQL 数据库和表作为资源暴露给客户端。客户端可以获取数据库和表的元数据信息。
通过以上配置和说明,你可以成功部署和使用 MySQL MCP 本地数据库服务,为你的 LLM 应用提供强大的数据访问能力。
信息
分类
数据库与文件