云迁移评估服务

MCP服务器提供云迁移评估、策略推荐、护栏执行、候选评分、波次规划、成本估算和架构图生成功能。

  • by chrishorne74
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 chrishorne74/cloud-migration-mcp

使用说明

云迁移MCP服务器

MCP(模型上下文协议)服务器,提供云迁移评估、策略建议、护栏执行、候选评分、波浪规划、成本估算和draw.io架构图生成。

特征

  • 7 Rs战略引擎 --根据工作负载属性推荐7种云迁移策略之一(重新托管、重新部署、重新购买、重构、退役、保留、重新定位)
  • 迁移评估 --根据10个行业标准标准(业务关键性、复杂性、供应商支持、云就绪性、成本、年龄、SaaS可用性、数据敏感性、文档、合规性)对工作负载进行0-100的评分
  • 迁移护栏 --30多个内置护栏,涵盖依赖性、安全性、合规性、数据、架构、运营和成本类别——完全可编辑
  • 候选人评分和排名 --在一次通话中按迁移准备情况对多达50个工作负载进行排名
  • 波浪规划 --将工作负载分组为顺序迁移波,尊重依赖性和亲和性组
  • 成本估算 --ROM(±50%)成本估算,包括云年成本、一次性迁移成本、1/3的节省和ROI盈亏平衡
  • Drawing.io图表 --使用本机draw.io AWS、Azure和GCP形状生成迁移架构图——将XML传递给draw.io MCP open_drawio_xml 工具
  • 可扩展规则 --通过MCP工具在运行时添加、更新或删除护栏和评分标准

工具

工具 说明
list_migration_guardrails 按类别/严重程度列出所有迁移护栏
add_migration_guardrail 添加特定于组织的护栏
update_migration_guardrail 更新护栏的严重性或文本
delete_migration_guardrail 按ID删除护栏
reload_migration_guardrails 手动编辑文件后重新加载护栏
assess_workload 全面评估:得分、准备情况、7R推荐、护栏违规
score_migration_candidates 对多个工作负载进行评分和排名
check_migration_guardrails 工作量自动护栏检查
list_migration_criteria 列出带权重的评分标准
add_migration_criterion 添加自定义评分标准
update_migration_criterion 更新标准的权重或方向
list_migration_strategies 用指标和排除项描述所有7R
recommend_migration_strategy 针对工作量快速推荐7R
estimate_migration_cost ROM成本估算及明细
create_migration_wave_plan 将工作负载分组到迁移浪潮中
generate_migration_diagram 使用原生云形状生成draw.io XML
generate_assessment_diagram 一步评估+生成draw.io图

护栏

内置护栏盖:

  • 依赖 --将应用程序和数据库层保持在一起;将紧密耦合的服务迁移到一起;解决循环依赖;共享基础设施首先迁移
  • 安全 --首次工作负载前的云安全基线;传输/静止加密;没有明文秘密;最低特权IAM;漏洞评估
  • 合规 --数据驻留;PCI-DSS QSA审查;HIPAA BAA;审计日志;许可证合规性
  • 数据 --数据完整性验证;生产数据屏蔽;备份/恢复测试;大数据集处理
  • 建筑 --着陆区合规性;SPOF修复;状态存储;遗留操作系统升级;可观测性
  • 运营 --回滚计划;切换窗口;超谨慎期;运行手册审查;DNS切换
  • 成本 --成本基准;尺寸合适;预留容量;退役计划

使用添加自己的护栏 add_migration_guardrail 或通过编辑 guardrails/migration-guardrails.md.

评分标准

10个现成的加权标准:

  1. 业务关键性(权重8)
  2. 技术复杂性(权重9)
  3. 供应商支持状态(重量7)
  4. 云就绪/源代码(权重9)
  5. 当前基础设施成本(权重7)
  6. 应用年龄(体重5)
  7. SaaS替代可用性(权重6)
  8. 数据敏感性(权重6)
  9. 文件质量(权重5)
  10. 合规开销(重量7)

使用添加或修改条件 add_migration_criterion / update_migration_criterion 或通过编辑 criteria/migration-criteria.json.

安装

克劳德桌面版

{
  "mcpServers": {
    "cloud-migration": {
      "command": "node",
      "args": ["C:\\Users\\chris\\cloud-migration-mcp\\build\\index.js"],
      "env": {
        "GUARDRAILS_FILE": "C:\\Users\\chris\\cloud-migration-mcp\\guardrails\\migration-guardrails.md",
        "CRITERIA_FILE": "C:\\Users\\chris\\cloud-migration-mcp\\criteria\\migration-criteria.json"
      }
    }
  }
}

来源

git clone https://github.com/chrishorne74/cloud-migration-mcp.git
cd cloud-migration-mcp
npm install
npm run build

定制护栏和标准

护栏文件(guardrails/migration-guardrails.md)

在下面添加新的护栏块 ## Custom:

<!-- MG-CUS-001 | HIGH -->
**All migrated workloads must use the approved tagging taxonomy**
Every cloud resource created during migration must include the approved tags (cost-centre, environment, owner, project).
Untagged resources cannot be allocated to cost centres and violate governance policy.
Recommendation: Include tagging validation in the migration runbook. Reject pull requests for IaC that omit required tags.

跑 reload_migration_guardrails 无需重新启动服务器即可应用。

标准文件(criteria/migration-criteria.json)

将JSON对象添加到 criteria 数组和调用 reload_migration_criteria (或重新启动服务器)。

构建.mcpb包

npm run build:mcpb
# Output: dist/cloud-migration.mcpb

与draw.io MCP集成

图表工具返回draw.io XML。将其直接传递给draw.io MCP服务器:

1. Call generate_migration_diagram or generate_assessment_diagram
2. Copy the XML from the response
3. Call open_drawio_xml with the XML

环境变量

变量 描述 默认值
GUARDRAILS_FILE 内置护栏文件的路径 ./guardrails/migration-guardrails.md
CRITERIA_FILE 内置条件文件的路径 ./criteria/migration-criteria.json
USER_GUARDRAILS_FILE 自定义护栏的路径(覆盖内置) --
USER_CRITERIA_FILE 自定义条件的路径(覆盖内置) --