Skip to main content
Glama
rayven122

MCP IE Migration VRT

by rayven122

MCP IE Migration VRT

Edge IEモードの移行前画面とChromium Edgeの移行後画面を、2つのSeleniumセッションで操作・撮影し、Playwright Testで画像比較するMCPサーバーです。

Edge IE mode ── Selenium screenshot ─┐
                                     ├─ Playwright VRT ─ pass / diff / report
Chromium Edge ─ Selenium screenshot ─┘

必要環境

  • Windows 10/11またはWindows Server

  • Microsoft Edge Stable

  • Edge IEモードポリシー(InternetExplorerIntegrationLevel=1

  • IEDriverServer 4.0.0.0以上

  • Node.js 20以上(Claude Desktop同梱ランタイム外で実行する場合)

  • ログオン中の非昇格Windowsセッション

  • Edge/IEズームとWindows表示倍率を100%に固定

IEモードはheadless実行できません。RDP利用中は、撮影の途中で解像度や表示倍率を変更しないでください。 IEDriverがEdgeをIEモードで起動するため、Enterprise Mode Site Listは必須ではありません。

事前診断:

powershell -ExecutionPolicy Bypass -File scripts\windows\Test-IeMigrationVrtPrerequisites.ps1

インストール

1. MCPBをインストール

最新のGitHub Releaseから.mcpbをダウンロードし、Windows上で開いてClaude Desktopへインストールします。

保存先の初期設定は不要です。MCPBにはMCPサーバーと実行時依存関係が含まれます。

2. Skillをインストール

Claude Code:

npx skills add rayven122/mcp-ie-migration-vrt --agent claude-code

Codex:

npx skills add rayven122/mcp-ie-migration-vrt --agent codex

SkillはMCPBには含まれず、別途インストールされます。

使い方

エージェントへ次のように依頼します。

$ie-migration-vrt を使って、移行前と移行後の注文一覧を同じ検索結果まで操作し、画面差分を確認してください。

エージェントは次の順に処理します。

  1. start_vrt_browsersでEdge IEモードとChromium Edgeを起動

  2. sessionIdを指定して両画面を同じ業務状態まで個別に操作

  3. vrtで現在の画面を比較

  4. before.pngafter.pngdiff.pngreport.jsonを保存

  5. 必要に応じて移行後画面を修正し、再比較

  6. 両セッションを終了

既定の比較条件:

  • Viewport: 1200 x 650

  • maxDiffPixelRatio: 0.005

  • threshold: 0.2

  • ブラウザのタブやアドレスバーは撮影対象外

  • 画像はリサイズ・トリミングせず、サイズが異なる場合も差分画像を生成してAIレビュー

詳細なチェックポイントと撮影規約はdocs/vrt-standard.mdを参照してください。MCPからはvrt-standard://currentで取得できます。

主なMCP Tool

Tool

用途

start_vrt_browsers

IEモードとChromium Edgeを同時起動

navigate / interact / send_keys

指定セッションを操作

accessibility_snapshot

画面構造と操作対象を取得

execute_script

DOM・computed style・スクロールを確認

diagnostics

console・JavaScript error・networkログを取得

vrt

2セッションの現在画面を比較し、既定でbefore・after・diff画像をAIへ返却

take_screenshot

現在画面を返すか、outputPathで指定した場所へ保存

close_session

指定セッションを終了

その他のSelenium ToolもsessionIdを指定して利用できます。

補足

  • Windows/IIS・ASP.NET 4.8・VB.NET Web Formsで動作確認済みです。

  • VRT成果物は既定で相対パスartifacts/vrtへ保存されます。呼び出しごとにvrt.outputDirectoryで変更できます。

  • vrt.returnImagesall(既定)、diffnoneから選択できます。寸法不一致はツールエラーではなくstatus: "different"として元画像・差分・診断情報を確認できます。

  • VRTツールはクライアント互換性のためoutputSchemaを広告せず、構造化結果はstructuredContentとテキストJSONの両方で返します。

  • 通常スクリーンショットは既定で画像データを直接返します。保存する場合だけtake_screenshot.outputPathを指定します。

  • MCPB署名は公式CLIの既知不具合により保留中です。詳細はdocs/mcpb-signing.mdを参照してください。

  • 開発・ローカルビルドはpackage.jsonのnpm scriptsを参照してください。

License

MIT