article
README
🚀 MyBatis Mapper2SQL MCP Server
本项目是一个基于Model Context Protocol (MCP)的MyBatis Mapper XML SQL提取服务,能从MyBatis mapper XML文件中提取SQL语句,还可进行参数模拟和SQL测试,与AI模型协作提供强大的SQL提取和分析能力。
🚀 快速开始
- 编译运行:参考
- MCP客户端配置:参考
- 使用示例:参考本地使用Trae MCP客户端调试说明
✨ 主要特性
- SQL提取:从MyBatis mapper XML文件中提取SQL语句。
- 参数Mock:自动生成SQL参数,支持基于resultMap和JDBC连接的类型推断。
- SQL测试:连接数据库执行SQL并记录执行结果。
🔧 核心优势
- 确定性解析:基于MyBatis官方解析引擎,结果稳定可靠。
- AI协作:作为AI的“专家工具”,提供精确的SQL解析能力。
- 服务化:通过MCP协议提供标准化接口。
- 扩展性:支持多种数据库类型。
📦 可用工具
本项目提供3个专业工具,满足不同场景的SQL提取需求:
1. parse_mapper
- 功能:基础SQL提取,保留占位符(不进行参数模拟)。
- 适用场景:快速查看SQL结构,无需参数mock。
- 参数:
filePath(string):mapper XML文件或目录路径。
2. parse_mapper_and_mock
- 功能:SQL提取 + 参数自动mock。
- 适用场景:需要可执行SQL进行测试或分析。
- 参数:
filePath(string):mapper XML文件或目录路径。
3. parse_mapper_and_run_test
- 功能:SQL提取 + 参数mock + 执行测试。
- 适用场景:验证SQL在真实数据库中的执行情况。
- 参数:
filePath(string):mapper XML文件或目录路径。
💻 使用示例
基础用法
{
"name": "parse_mapper",
"arguments": {
"filePath": "/path/to/mapper.xml"
}
}
高级用法
带参数Mock的SQL提取
{
"name": "parse_mapper_and_mock",
"arguments": {
"filePath": "/path/to/mapper.xml"
}
}
SQL测试
{
"name": "parse_mapper_and_run_test",
"arguments": {
"filePath": "/path/to/mapper.xml"
}
}
Scan to join WeChat group