使用说明
🚀 MCP MySQL服务器
强大而专业的模型上下文协议(MCP)服务器,可通过人工智能代理与MySQL银行进行交互。该项目展示了MCP协议的高级实现,具有智能连接管理和专门的数据库分析工具。
✨ 主要特点
- 🔐 智能连接管理 通过MCP工具进行动态配置
- 🛡️ 强大的安全性 - 只允许SELECT操作,使用Zod验证输入
- 🔄 多种运输 - 对不同使用场景的stdio和SSE支持
- 📊 专业工具 - 架构分析,外键和表结构
- 🚀 自动配置 - MySQL配置的智能发现
- 💡 后备Interativo - 需要时请求配置
🛠️ 可用工具
🔧 连接设置
mysql_configure_connectionMySQL连接动态配置mysql_auto_configure_connection- 自动检测配置mysql_get_connection_status- 当前连接状态mysql_check_connection- 连接测试
📊 银行业务
mysql_list_tables列出所有表格mysql_get_table_info详细的表格结构mysql_execute_query执行 SELECT 查询mysql_analyze_schema- 完整方案分析mysql_list_foreign_keys- 关系映射
🚀 安装和配置
1. 克隆并安装
git clone https://github.com/efeabio/mcp-mysql-server.git
cd mcp-mysql-server
npm install
npm run build
2.配置光标
将以下设置添加到您的文件 ~/.cursor/mcp.json:
{
"mcpServers": {
"mysql": {
"command": "/caminho/para/seu/projeto/start-mcp.sh"
}
}
}
⚠️ 重要的: 替换 /caminho/para/seu/projeto/ 您克隆仓库的实际路径。
3.配置o start-mcp.sh
编辑文件 start-mcp.sh 并更改路径以匹配您的安装:
#!/bin/bash
node /caminho/para/seu/projeto/dist/index.js
4. MySQL连接设置
该项目提供 3种形式 设置MySQL连接:
🔧 通过工具手动设置(推荐)
使用某种工具 mysql_configure_connection 动态配置:
await mysql_configure_connection({
host: "localhost",
port: 3306,
user: "root",
password: "sua_senha",
database: "seu_banco"
});
📁 通过文件配置
创建文件 config.json 工程根 :
{
"mysql": {
"host": "localhost",
"port": 3306,
"user": "root",
"password": "sua_senha",
"database": "seu_banco"
}
}
🔍 自动检测
使用某种工具 mysql_auto_configure_connection 尝试自动发现配置。
🎯 使用案例
🔍 数据库分析
- 架构审计院 完整的结构映射
- 关系分析 外国密钥识别
- 自动文档 - 银行文件生成
🤖 与 AI 代理集成
- 智能查询 通过自然语言查询
- 互动探索 无需事先知识的数据发现
- 自动分析 关于结构和关系的见解
🚀 开发与DevOps
- 数据迁移 迁移前的结构分析
- 调试 调查银行问题
- 监督员 - 数据完整性检查
🔒 安全和最佳实践
- ✅ 只读操作 只允许选择
- ✅ 输入验证 -模式验证com Zod
- ✅ 连接测试 - 在接受设置前检查
- ✅ 通过工具配置 安全的配置界面
- ✅ 连接隔离 安全管理多个连接
🚀 执行
# Modo stdio (padrão para MCP)
./start-mcp.sh
# Modo SSE para desenvolvimento
node dist/index.js sse
📚 使用范例
初始设置
// Configure conexão dinamicamente
await mysql_configure_connection({
host: "localhost",
port: 3306,
user: "root",
password: "sua_senha",
database: "test"
});
// Verifique se funcionou
await mysql_check_connection();
// Explore o banco
await mysql_list_tables();
Schema 分析
// Análise completa
await mysql_analyze_schema();
// Relacionamentos
await mysql_list_foreign_keys();
// Estrutura específica
await mysql_get_table_info("users");
自定义查询
// Execute queries SELECT
await mysql_execute_query("SELECT COUNT(*) as total FROM users");
// Análise de dados
await mysql_execute_query("SELECT table_name, table_rows FROM information_schema.tables");
🏗️ 建筑师
该项目采用模块化架构,具有:
- MCP-SDK 模型上下文协议 Model Context Protocol
- MySQL2 - MySQL的原生和性能驱动程序
- TypeScript - 静态打字和强大的开发
- 萨德 - 方案验证和数据输入
- 快速 - 可选的SSE传输支持
🔧 开发
# Build do projeto
npm run build
# Execução em modo desenvolvimento
npm start
# Execução com SSE
npm start sse
📄 许可证
麻省理工学院许可证 - 详情请参阅许可证文件。
🤝 贡献
欢迎捐款!该项目展示了MCP协议的专业实施,并作为开发强大的MCP服务器的参考。
开发于❤️ 展示MCP协议,MySQL集成和AI代理工具开发方面的专业知识。
