본문으로 건너뛰기

Claude Code에서 시뮬레이터 실행 없이 Xcode Preview로 SwiftUI 개발하기

Faster SwiftUI Development in Claude Code: See Xcode Previews Without a Simulator Run

www.natashatherobot.com

핵심 요약

  1. Xcode MCP의 RenderPreview와 Claude의 mods를 연결하면 시뮬레이터를 실행하는 대신 Xcode Preview 이미지를 에이전트 작업에 활용할 수 있다.
  2. SwiftUI Preview mod는 /preview 명령을 가로채 프로젝트의 Preview와 시뮬레이터 정보를 모은 뒤, Xcode RenderPreview를 호출해 결과 이미지를 반환한다.
  3. Xcode 26.3 이상에서 MCP 서버를 켜고 Claude 또는 Codex에 등록해야 하며, 프로젝트를 Xcode에서 연 뒤 에이전트 연결을 허용해야 한다.

도입

SwiftUI 화면을 확인하려면 시뮬레이터를 실행해야 하는 작업 흐름이 느려질 수 있다. 글의 작성자는 Xcode MCP의 RenderPreview와 Claude mods를 결합해 에이전트가 시뮬레이터 대신 Xcode Preview를 중심으로 작업하도록 구성했다. 이 구성은 /preview 명령으로 화면을 요청하고, Xcode가 렌더링한 이미지를 세션에 돌려주는 방식이다.

상세 요약

구성 요소와 사전 설정

작성자는 시뮬레이터 중심 작업이 느려지는 문제를 줄이기 위해 Xcode MCP의 RenderPreview와 Claude mods를 결합했다. Claude 세션에서 SwiftUI Preview를 요청하면 Xcode가 미리보기를 렌더링하고, 결과 이미지가 에이전트에 전달된다.

먼저 Xcode 26.3 이상에서 MCP 서버를 활성화한다.

  • Xcode에서 Settings › Intelligence › Model Context Protocol로 이동한다.
  • Allow external agents to use Xcode tools를 켠다.
  • Claude에는 claude mcp add --scope user --transport stdio xcode -- xcrun mcpbridge를 실행해 서버를 등록한다.
  • Codex에서는 codex mcp add xcode -- xcrun mcpbridge를 실행한다.

에이전트에 요청하기 전에 프로젝트를 Xcode에서 열어 둬야 한다. 에이전트가 연결될 때 표시되는 Xcode 알림을 허용한다. 연결 여부는 Claude에서 claude mcp list, Codex에서 codex mcp list로 확인할 수 있다.

/preview 요청 처리 흐름

SwiftUI Preview mod는 Claude의 새 세션이 시작될 때마다 로드된다. mod가 세션을 감시하고 필요한 훅을 연결해야 하기 때문이다. 이 mod는 /preview 명령과 자체 MCP 도구를 등록한다.

/preview the ContentView in iPhone Duo처럼 입력하면 mod가 명령을 가로채고, 열린 Xcode 프로젝트와 프로젝트 안의 #Preview, 시뮬레이터 정보를 수집한다. 요청 문구와 수집한 정보를 Claude에 새 프롬프트로 전달한다. 에이전트는 Preview 후보와 요청을 분석한 뒤 mod의 도구를 호출한다. 도구는 인자가 갖춰졌는지 확인하고, 기기 정보를 포함해 Xcode의 RenderPreview를 실행한다.

Xcode가 반환한 임시 이미지는 mod가 PNG 파일로 저장하고 베젤을 추가한다. 이렇게 전처리된 요청과 후처리된 출력은 세션 에이전트에 전달된다. mod는 Preview를 보여주는 자체 UI pane도 만들며, openPane helper가 세션의 ui.render 훅을 실행해 UI를 다시 그린다. pane의 옵션은 사용자에 맞게 조정할 수 있다.

적용 범위

글에서 소개하는 방식은 시뮬레이터 대신 Xcode Preview 렌더링 결과를 확인하는 에이전트 작업 흐름이다. 시뮬레이터를 에이전트와 함께 사용하는 접근은 Cursor·Claude Code·Codex에서 사용하는 iOS Simulator에서 다룬다. 작성자는 mod를 그대로 쓰거나 직접 만들 수 있으며, 직접 구현할 경우 시간과 토큰 사용이 필요했다고 설명한다. 또한 도구를 시작점으로 삼아 개인 작업 방식에 맞게 수정하는 방식을 제안한다.

결론

이 구성의 핵심은 Xcode의 렌더링 기능과 Claude mod의 전·후처리 훅을 연결하는 데 있다. 사용자는 프로젝트의 Preview와 기기를 지정해 요청하고, mod는 필요한 정보를 모아 RenderPreview를 실행한 뒤 이미지와 자체 UI pane을 세션에 전달한다. 다만 Xcode MCP 연결 설정과 프로젝트 열기, 권한 허용이 선행되어야 한다.