원문 캡처 · github.com
원문 캡처 · github.com

simulator-use는 Claude Code, Codex, Cursor 등 MCP 클라이언트가 Xcode 프로젝트를 빌드하고 iOS Simulator에서 앱을 실행·조작·테스트하도록 돕는 오픈소스 도구다. 화면을 접근성 요소별 한 줄로 읽고 라벨이나 좌표를 이용해 조작하며, 제작자는 전체 화면 읽기에 약 250밀리초가 걸린다고 설명한다.

이 도구는 앱 빌드와 설치, 실행, XCTest·XCUITest 테스트, 로그와 충돌 정보 확인, 화면 녹화를 지원한다. 화면 조작은 ui_look으로 읽은 요소를 ui_act에서 탭하거나 입력하는 방식이다. 각 동작 결과를 확인하며, 입력한 텍스트가 예상과 다르거나 탭으로 변화가 없으면 실패를 알린다. iOS 권한 요청은 기본적으로 자동 응답하며, 테스트를 위해 permissions: "ask"로 요청 창을 유지할 수 있다.

macOS와 Xcode, Simulator 런타임, Node 20 이상이 필요하다. Claude Code에서는 다음 명령으로 MCP 서버를 추가한다.

text
claude mcp add simulator-use -- npx -y simulator-use mcp

Linux나 Windows, 또는 Xcode가 없는 환경에서는 NoMac의 클라우드 iPhone Simulator를 이용할 수 있다. 클라우드 모드에서는 실행하거나 테스트할 프로젝트 파일과 도구 호출이 NoMac으로 전송되며, 세션 재생은 7일간 보관된다. 로컬 모드에서는 텔레메트리나 런타임 네트워크 접근이 없다고 제작자는 설명한다.

제약도 있다. 실제 기기와 Android, 가로 화면 회전, 핀치·멀티터치 조작은 지원하지 않는다. SwiftUI가 호스팅하는 웹 뷰와 Safari 페이지, 인앱 브라우저, Flutter 화면, 게임 캔버스 등은 접근성 정보를 읽지 못해 스크린샷과 좌표 탭으로 다뤄야 한다. Expo, React Native, Flutter, Capacitor 프로젝트의 빌드는 아직 지원하지 않아 각 프로젝트의 도구로 빌드한 뒤 설치해야 한다. 제작자는 속도 수치를 2026년 10월 M6 Mac mini에서 측정했다고 밝혔다.

simulator-use 저장소