MySQL MCP 服务器
MySQL 模型上下文协议 (MCP) 服务器是一种工具,它允许您连接到本地 MySQL 数据库并允许大型语言模型 (LLM) 对其执行 SQL 查询。
要求
- Node.js :20.0.0 或更高版本
- MySQL :MySQL 或 MariaDB 服务器版本 5.7 或更高版本
功能
- 运行 MySQL 查询:直接从 LLM 运行 SQL 查询
- 获取数据库信息:数据库列表、表列表、确认表结构
- 符合 MCP 规范:支持模型上下文协议,可与 LLM 集成
- stdio 通信:使用标准输入/输出与 LLM 通信,无需端口绑定
- 保存连接信息:将数据库连接信息保存在本地并重复使用
安装和使用
NPX 中的临时执行
选项
选项 | 解释 | 默认值 |
---|---|---|
-h, --host <host> | MySQL 主机 | 本地主机 |
-p, --port <port> | MySQL 端口 | 13306 |
-u, --user <user> | MySQL 用户 | 根 |
--password <password> | MySQL 密码 | (空字符串) |
-d, --database <database> | 默认数据库 | (选项) |
-c, --config <path> | 配置文件路径 | (选项) |
--auto-connect | 服务器启动时自动连接数据库 | 错误的 |
--server-port <port> | MCP 服务器端口(在 stdio 模式下不使用) | 3000 |
--server-host <host> | MCP 服务器主机(在 stdio 模式下不使用) | 本地主机 |
--query-timeout <ms> | 查询超时(毫秒) | 30000 |
--max-results <count> | 最大结果行数 | 1000 |
--debug | 调试模式 | 错误的 |
保存并重复使用连接信息
MySQL MCP 服务器在本地存储已成功连接的数据库的信息。这允许在下次启动时自动重新使用连接信息。保存的连接信息存储在用户主目录中的.mysql-mcp-connections.json
文件中。
连接信息包括:
- 主机名
- 端口号
- 用户名
- 密码
- 数据库名称(如果设置)
使用配置文件
您还可以使用配置文件(JSON格式)配置连接信息:
如果您使用配置文件:
沟通方式
MySQL MCP 服务器以符合 MCP(模型上下文协议)的“stdio”模式运行。这使得它能够通过标准输入和输出进行通信,而不是绑定到特定端口。这具有以下优点:
- 避免端口冲突:不使用特定端口,因此不会发生端口冲突问题
- 提高安全性:不使用网络通信,降低网络级攻击的风险
- 简单的进程间通信:简化与 LLM 的通信
注意事项
- 在 stdio 模式下,消息以 JSON 格式发送。
- 必须每行发送一条 JSON 消息
- 错误信息和连接日志输出到标准错误(stderr)。
提供的 MCP 工具
数据库连接管理
工具名称 | 解释 | 必需参数 |
---|---|---|
连接数据库 | 连接到数据库 | 主机、端口、用户 |
断开数据库连接 | 断开当前数据库连接 | 没有任何 |
获取连接状态 | 获取数据库连接的状态 | 没有任何 |
SQL查询操作
工具名称 | 解释 | 必需参数 |
---|---|---|
执行查询 | 运行 MySQL 查询 | 查询:SQL语句 |
获取数据库 | 获取可用数据库的列表 | 没有任何 |
获取表 | 获取指定数据库中的表列表。 | 数据库(可选) |
描述表 | 获取指定表的结构。 | 桌子 |
连接管理功能
MySQL MCP Server 允许您分离服务器启动和数据库连接。这种方法具有以下好处:
- 无需连接信息即可启动:无需数据库连接信息即可启动服务器。
- 多数据库连接:服务器启动后,可以切换到不同的数据库连接。
- 简单安装:只需运行
npx -y https://github.com/yuki777/mysql-mcp-server
如何使用连接管理
- 启动服务器但不自动连接:
- 使用连接工具连接数据库:
- 检查您的连接状态:
- 连接丢失:
测试脚本
该存储库包含一个名为test-connection-management.js
的测试脚本。您可以使用此脚本来测试连接管理功能:
开发者信息
设置开发环境
建造
执照
国际学习中心
贡献
欢迎报告错误、功能请求和拉取请求。
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
一种连接本地 MySQL 数据库并允许大型语言模型 (LLM) 通过模型上下文协议 (MCP) 执行 SQL 查询的工具。
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that provides read-only access to MySQL databases, enabling LLMs to inspect database schemas and execute read-only queries.Last updated -5,426418TypeScriptMIT License
- -securityAlicense-qualityA Model Context Protocol server providing read-only access to MySQL databases, enabling LLMs to inspect database schemas and execute read-only queries.Last updated -5,426TypeScriptMIT License
- -securityAlicense-qualityA Model Context Protocol server that provides read-only access to MySQL databases, enabling LLMs to inspect database schemas and execute read-only queries.Last updated -5,426MIT License
- -securityAlicense-qualityA Model Context Protocol (MCP) server that enables AI assistants to interact with MySQL databases by executing SQL queries and checking database connectivity.Last updated -TypeScriptMIT License