rdp-cli
Claude Code로 원격 Windows 데스크톱을 제어하는 방법
Claude Code는 코드, 파일, 명령줄 작업에 강하지만 Excel, 레거시 Windows 프로그램, 파일 대화상자처럼 실제 데스크톱이 필요한 작업도 있습니다.
실용적인 방법은 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처럼 작고 명확한 도구만 노출하세요. 필요하지 않다면 제한 없는 원격 셸은 제공하지 않는 편이 안전합니다.
항상 관찰한 뒤 조작하기
오래된 스크린샷을 기준으로 클릭하면 실패하기 쉽습니다. 안정적인 루프는 다음과 같습니다.
스크린샷 → 판단 → 한 번 조작 → 새 스크린샷 → 검증
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 자동화에 맡기는 것이 가장 안정적입니다.