rdp-cli

Claude Code でリモート Windows デスクトップを操作する方法

Claude Code はコード、ファイル、コマンドライン操作に強力ですが、Excel、古い Windows ソフト、ファイルダイアログ、API のないアプリには実際のデスクトップが必要です。

実用的な構成は、MCP 経由で Claude Code とリモートデスクトップツールを接続することです。MCP がツールの入口、RDP が Windows への接続を担当し、Claude Code が次の手順を判断します。

基本構成

Claude Code
  ↓
MCP リモートデスクトップサーバー
  ↓
rdp-cli または別のデスクトップコントローラー
  ↓
リモート Windows デスクトップ

MCP サーバーには connect、screenshot、click、type、key、upload_file、download_file、status、disconnect のような小さなツールだけを公開します。必要がない限り、無制限のリモートシェルは公開しません。

画面を見てから操作する

古いスクリーンショットでクリックするのは、デスクトップ自動化でよくある失敗です。基本ループは次のとおりです。

画面取得 → 判断 → 1つ操作 → もう一度画面取得 → 検証
rdp-cli screenshot --session SESSION --out before.png
rdp-cli click --session SESSION --desktop --x 420 --y 260 --observation OBSERVATION
rdp-cli screenshot --session SESSION --out after.png

最初の画像で対象を探し、fresh な observation で入力を送り、次の画像で結果を確認します。コマンドが成功してもアプリが処理を完了したとは限りません。エラー、権限ダイアログ、別ウィンドウが表示されることがあります。

Windows アプリを自動化する例

レポートアプリで sales.csv を読み込み report.pdf を出力する場合、ファイル転送は GUI ではなく構造化ツールを使います。

rdp-cli files upload --session SESSION --local ./sales.csv --path input/sales.csv
rdp-cli files download --session SESSION --path output/report.pdf --local ./report.pdf

Claude Code への指示には検証条件も含めます。

リモート Windows デスクトップに接続してください。
レポートアプリを開き、input/sales.csv を読み込み、月次レポートを作成して output/report.pdf に出力してください。
各 GUI 操作の後に新しいスクリーンショットを取得し、期待する画面を確認してください。
画面が異なる場合は停止し、不確かな操作を状態確認なしで繰り返さないでください。

API や CLI で完了できる処理はそちらを優先し、本当に GUI が必要な部分だけを RDP に任せるのが安定した設計です。