MCP MySQL 助手
一种模型上下文协议(MCP)服务器,它通过执行SQL查询和检查数据库连接性,使AI助手能够与MySQL数据库进行交互。
服务介绍
MCP MySQL App
一个用于通过AI接口与MySQL数据库交互的模型上下文协议(MCP)工具服务器实现。
概览
该项目提供了一套工具,允许AI系统通过模型上下文协议连接和查询MySQL数据库。它使AI助手能够执行SQL查询并检查数据库连接性。
特性
- 简单但功能强大的MySQL工具集成
- 类型安全的工具定义
- 增强的错误处理
- 支持处理请求中止信号
- 会话感知
安装
- 克隆此仓库
- 安装依赖项:
npm install
如何使用该工具
1. 初始设置
克隆此仓库:
git clone <repository-url>
cd mcp-mysql-app
安装依赖项:
npm install
在根目录下创建一个.env文件:
MYSQL_HOST=your_mysql_host
MYSQL_USER=your_mysql_username
MYSQL_PASSWORD=your_mysql_password
MYSQL_DATABASE=your_database_name
MYSQL_PORT=3306
构建项目:
npm run build
现在dist文件夹已准备好被各种AI平台配置使用。
2. Cursor 配置
找到您的Cursor MCP配置文件:
- Windows:
C:\Users\<username>\.cursor\mcp.json - macOS:
~/.cursor/mcp.json - Linux:
~/.cursor/mcp.json
编辑文件以添加MySQL MCP服务器配置:
{
"mcpServers": {
"mysql": {
"command": "<path-to-node>",
"args": [
"<path-to-project>/dist/index.js"
],
"env": {
"MYSQL_HOST": "your_mysql_host",
"MYSQL_USER": "your_mysql_username",
"MYSQL_PASSWORD": "your_mysql_password",
"MYSQL_DATABASE": "your_database_name",
"MYSQL_PORT": "3306"
}
}
}
}
替换占位符:
<path-to-node>: 您的Node.js可执行文件路径<path-to-project>: MCP MySQL应用程序项目的绝对路径- 使用实际的数据库连接详情替换MySQL环境变量
示例配置:
{
"mcpServers": {
"mysql": {
"command": "C:\\nvm4w\\nodejs\\node.exe",
"args": [
"H:\\mcp\\my-mysql\\dist\\index.js"
],
"env": {
"MYSQL_HOST": "localhost",
"MYSQL_USER": "root",
"MYSQL_PASSWORD": "password123",
"MYSQL_DATABASE": "todo_app",
"MYSQL_PORT": "3306"
}
}
}
}
保存文件并重启Cursor使更改生效。
3. Claude 配置
要将MCP MySQL工具与Claude一起使用,您需要在Claude的设置文件中添加配置。请按照以下步骤操作:
- 打开Claude AI桌面应用程序设置
- 导航到“开发者”部分
- 查找“工具”配置部分
- 添加如下MySQL MCP配置:
{
"tools": {
"mysql": {
"command": "<path-to-node>",
"args": [
"<path-to-project>/dist/index.js"
],
"env": {
"MYSQL_HOST": "your_mysql_host",
"MYSQL_USER": "your_mysql_username",
"MYSQL_PASSWORD": "your_mysql_password",
"MYSQL_DATABASE": "your_database_name",
"MYSQL_PORT": "3306"
}
}
}
}
替换占位符:
<path-to-node>: 您的Node.js可执行文件路径<path-to-project>: MCP MySQL应用程序项目的绝对路径- 使用实际的数据库连接详情替换MySQL环境变量
示例配置:
{
"tools": {
"mysql": {
"command": "/usr/local/bin/node",
"args": [
"/Users/username/projects/mcp-mysql-app/dist/index.js"
],
"env": {
"MYSQL_HOST": "localhost",
"MYSQL_USER": "root",
"MYSQL_PASSWORD": "password123",
"MYSQL_DATABASE": "todo_app",
"MYSQL_PORT": "3306"
}
}
}
}
4. 在其他平台上配置
对于支持MCP的其他AI平台,基本原理相同:
- 找到外部工具或MCP的配置区域
- 配置它运行此仓库中的
dist/index.js文件的Node.js - 在环境配置中包含您的MySQL连接详情
可用工具
配置完成后,您的AI将可以访问以下MySQL工具:
sql_check_connection- 检查MySQL连接是否正常工作sql_query- 在已连接的数据库上执行SQL查询
在AI环境中使用MySQL工具
一旦在AI环境中配置了MySQL工具,就可以通过提示AI来开始使用它们。这里有一些例子:
在Cursor中使用MySQL工具
在Cursor中,您可以简单地要求Claude执行与MySQL相关的任务:
- 检查 MySQL 连接是否正常工作。
- 显示服务器上的所有数据库。
- 从当前数据库获取所有表。
- 执行查询以从 users 表中检索所有用户。
- 更新 products 表中的记录。
示例工作流程:查询和操作数据
以下是一个示例工作流程,展示了你如何使用这些工具:
-
检查连接:
"检查 MySQL 连接是否正常工作。"
Claude 将使用
sql_check_connection工具来验证数据库连接。 -
查看数据库:
"显示此 MySQL 服务器上的所有数据库。"
Claude 将使用带有
SHOW DATABASES;的sql_query工具。 -
探索表:
"列出当前数据库中的所有表。"
Claude 将使用带有
SHOW TABLES;的sql_query工具。 -
查询数据:
"显示 users 表中的前 10 条记录。"
Claude 将使用带有
SELECT * FROM users LIMIT 10;的sql_query工具。 -
创建表:
"创建一个名为 'products' 的新表,包含 id、name、price 和 description 列。"
Claude 将使用
sql_query工具并附带适当的 CREATE TABLE 语句来创建表。 -
插入数据:
"插入一条新产品记录,名称为 'Smartphone',价格为 499.99,描述为 '最新款'。"
Claude 将使用带有 INSERT 语句的
sql_query工具。 -
更新记录:
"将 'Smartphone' 产品的价格更新为 449.99。"
Claude 将使用带有 UPDATE 语句的
sql_query工具。
这些示例展示了在工具正确配置后,你可以多么自然地通过 AI 助手与 MySQL 进行交互。
支持和帮助
如果你在使用此工具时遇到问题,请:
- 确认你的 MySQL 连接信息是正确的
- 确保 Node.js 已正确安装
- 检查你在 AI 平台中的 MCP 配置
- 检查日志文件中可能出现的任何错误消息
- 验证到 MySQL 服务器的网络连接
许可证
本项目根据 MIT 许可证授权 - 详情请参阅 LICENSE 文件。