Token导航 LogoToken导航TokenDH.com
MCP Migration Advisor logo
数据服务stdio官方级别未说明来源级核验

MCP Migration Advisor

MCP Server

mcp-migration-advisor

MCP Migration Advisor 是一款数据库迁移风险分析工具,用于检测Flyway和Liquibase迁移中的危险模式变更,包括锁风险、数据丢失模式和冲突检测,适用于多种数据库类型。

工具数

6

提示词数

0

GitHub Stars

0

资源数

0
TypeScriptClaude数据分析Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Dmitriusan

提供方

Dmitriusan

最后核验

2026/5/17 20:22

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx mcp-migration-advisor

详细介绍

](https://www.npmjs.com/package/mcp-migration-advisor) ![License: MIT](https://opensource.org/licenses/MIT)

MCP迁移顾问

用于数据库迁移风险分析的MCP服务器。在危险的架构更改投入生产之前检测它们。

为什么是这个工具?

数据库迁移失败会导致中断。此工具分析您的Flyway和Liquibase迁移 之前 它们运行——检测破坏性操作、锁定风险和数据丢失模式。

与MigrationPilot(仅PG,原始SQL分析)不同,此工具 本机解析Liquibase XML和YAML变更日志 --提取changeSet,检测changeSet ID之间的冲突,并验证回滚的完整性。它跨数据库类型工作,而不仅仅是PostgreSQL。

特性

  • 锁风险分析:检测获取重表锁(ACCESS EXCLUSIVE、SHARE锁)的DDL操作
  • 数据丢失检测:查找列删除、截断的类型更改、不带WHERE的truncate/DELETE
  • 风险评分:根据检测到的问题的严重程度计算0-100的风险评分
  • Flyway支持:解析V\_\_*.sql和R\_\_*.sql迁移文件名
  • Liquibase支持:使用changeSet提取解析XML和YAML变更日志
  • 冲突检测:识别重复的changeSet ID和订购问题
  • 回滚验证:检查每个changeSet的回滚完整性
  • 可操作建议:每种风险都包括一种特定的安全替代方案

专业级别

生成可导出的诊断报告(HTML+PDF) 使用Pro许可证密钥。

  • 完整的JVM线程转储分析报告,其中包含可操作的建议
  • PDF导出以与您的团队共享
  • 优先支持

9.00美元/月获取专业版许可证

Pro许可证密钥激活 generate_report MCP-jvm诊断中的MCP工具。

安装

npx mcp-migration-advisor

或全局安装:

npm install -g mcp-migration-advisor

Claude桌面配置

添加 ~/.claude/claude_desktop_config.json:

{
  "mcpServers": {
    "migration-advisor": {
      "command": "npx",
      "args": ["-y", "mcp-migration-advisor"]
    }
  }
}

快速演示

在Claude中尝试以下提示:

  1. “分析此迁移的风险:ALTER TABLE用户删除COLUMN电子邮件;” --返回风险评分(0-100)、锁定风险、数据丢失警告和安全替代方案
  2. “为此迁移生成回滚:创建TABLE订单(…);创建索引idx_orders_user ON订单(user_id);” --按正确顺序生成反向DDL
  3. “对Liquibase更改日志进行评分:\[粘贴XML\]” --分析变更集并计算总体风险

工具

analyze_migration

SQL迁移文件的完整分析。返回锁定风险、数据丢失分析和建议。

参数:

  • filename --迁移文件名(例如。, V2__add_user_email.sql)
  • sql --SQL内容

analyze_liquibase

Liquibase XML变更日志的完整分析。解析changeSet并应用相同的锁风险和数据丢失分析。

参数:

  • xml --Liquibase XML更改日志内容

analyze_liquibase_yaml

Liquibase YAML变更日志的完整分析。从YAML格式解析changeSet,并应用相同的锁风险和数据丢失分析。支持所有标准更改类型:createTable、dropTable、addColumn、dropColumn、modifyDataType、createIndex、renameTable、renameColumn等。

参数:

  • yaml --Liquibase YAML更改日志内容

score_risk

快速风险评分(0-100),并附有判断(低/中/高风险)。

参数:

  • filename --迁移文件名
  • sql --SQL内容

generate_rollback

生成反向DDL以撤消SQL迁移。生成回滚SQL,并对不可逆操作发出警告。

参数:

  • filename --迁移文件名
  • sql --SQL内容

自动反转:

  • 创建表→ 删除表
  • 添加列→ 改变桌子。..落柱
  • 创建索引→ DROP索引(同时保留)
  • 添加约束→ 跌落约束
  • 设置为非空→ 不为空
  • 重命名→ 反向重命名

警告不可逆转:

  • DROP TABLE,DROP COLUMN(数据丢失)
  • 列类型更改(原始类型未知)
  • DROP索引、DROP约束(原始定义未知)

包括Flyway schema_history 清理声明。

detect_conflicts

检测两个SQL迁移文件之间的冲突。识别相同的表修改、相同的列更改、锁争用风险和删除依赖关系,如果同时应用或以错误的顺序应用,这些依赖关系可能会导致失败。

参数:

  • filename_a --第一迁移文件名(例如。, V3__add_email.sql)
  • sql_a --第一次迁移的SQL内容
  • filename_b --第二迁移文件名(例如。, V4__modify_users.sql)
  • sql_b --第二次迁移的SQL内容

检测:

  • 同一列冲突 (关键)--两次迁移都会修改同一表上的同一列
  • 删除依赖关系 (关键)--一次迁移会删除另一次迁移所修改的表,从而导致顺序相关的失败
  • 锁争用 (警告)--两次迁移都需要在同一个表上使用独占锁,这可能会导致锁等待超时

返回一个冲突报告,其中包含严重性级别、受影响的表/列以及迁移是否可以安全地并发运行。

它检测到什么

模式严重性为什么它是危险的
不带DEFAULT的NOT NULL关键使用ACCESS独占锁重写全表
列类型更改关键表重写,数据截断风险
CREATE INDEX(非并发)共享锁阻止所有写入
DROP TABLE CASCADECRITICAL删除所有依赖对象
DROP COLUMNHIGH不可逆的数据丢失
设置NOT NULLHIGH带锁的全表扫描
外键约束MEDIUM锁定两个表以进行验证
TRUNCATE/DELETE without WHERE某些数据丢失所有行永久删除

限制和已知问题

  • 仅进行静态分析:在没有数据库连接的情况下分析SQL文本。无法检查实际表大小、行数或现有架构以校准风险。
  • 以PostgreSQL为中心:锁定风险建议主要针对PostgreSQL。MySQL和SQLite的锁行为不同,可能没有完全涵盖。
  • 复杂DDL:迁移中的存储过程、触发器和动态SQL被归类为“其他”,并接受通用风险评估。
  • Liquibase支持:处理标准XML和YAML变更集。JSON Liquibase格式和自定义更改类型不受支持。
  • 回滚限制:自动生成的回滚无法反转DROP TABLE、DROP COLUMN或类型更改(数据丢失)。这些会产生警告,而不是回滚SQL。
  • 多对账单交易:解析器按分号拆分。字符串或美元引号内包含分号的语句可能会被错误拆分。
  • 不执行:顾问分析但从不执行迁移。所有建议都是咨询性的。
  • 特定于数据库的DDL:解析器针对PostgreSQL/MySQL DDL语法。Oracle PL/SQL或SQL Server T-SQL可能无法完全识别。

MCP Java后端套件的一部分

许可证

麻省理工学院

______________________________________________________________________

生命终结:2026-05-10。

此MCP服务器不再维护或分发。公司 已经转向Apify市场参与者。看 irrationalways 关于Apifyirrcorp/bzp-poland-tenders 对于当前的公司工作。

npm包尚未发布。存储库已存档 仅供历史参考。

目录标签

目录标签

TypeScriptClaude数据分析数据库迁移本地部署风险分析Flyway支持Liquibase支持锁风险检测数据丢失检测

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

mcp-migration-advisor

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP