rn-mcp CLI (Snapshot + Refs)
AI 에이전트가 셸에서 직접 React Native 앱을 제어하는 CLI 인터페이스입니다. agent-browser의 Snapshot + Refs 패턴을 적용하여 토큰 효율적인 상호작용을 지원합니다.
왜 CLI인가?
설치
CLI는 같은 패키지에 포함되어 있습니다:
전제 조건
- MCP 서버가 실행 중이어야 합니다 (에디터가 시작하거나
npx react-native-mcp-server) - 앱이 시뮬레이터/에뮬레이터에서 실행 중이고 WebSocket(포트 12300)으로 연결되어야 합니다
- iOS: idb 설치 필요
- Android: adb 설치 필요
워크플로우
Snapshot 출력 예시
각 요소에 @e1, @e2, ... 순번이 depth-first 순회로 부여됩니다.
명령어
연결
Snapshot
상호작용
사용 가능한 키: back, home, enter, tab, delete, up, down, left, right
검증 (Assert)
조회 (Query)
스크린샷
AI 에이전트 가이드 설정
전역 옵션
Refs 시스템
동작 방식
rn-mcp snapshot -i가 각 요소에@e1,@e2, ... 할당 (depth-first 순회)- Refs가
~/.rn-mcp/session.json에 저장됨 - 이후 명령에서 refs 사용:
rn-mcp tap @e3 - snapshot을 다시 실행하면 이전 refs 전부 무효화
언제 re-snapshot 해야 하나
- 화면 전환 후 (네비게이션, 모달 열기/닫기)
@ref not found에러 발생 시- UI 구조가 변경되는 액션 후
셀렉터 (refs 대안)
snapshot 없이 셀렉터를 직접 사용할 수도 있습니다:
주의사항
- iOS orientation은 자동 처리됩니다 — 별도 조치 불필요
- Android dp→px 변환도 자동입니다
- 좌표는 points(dp) 단위, 픽셀이 아닙니다
--json플래그로 프로그래밍 방식의 출력 파싱 가능