MCP

Claude와 ScreenPath 연결

Claude가 ScreenPath의 프로젝트를 읽고, 요청한 변경을 만들 수 있게 연결합니다.

Claude로 설계 고치기

연결 주소

https://screenpath.dev/mcp

개발 환경 연결 주소

http://localhost:3000/mcp

무엇을 할 수 있나요

  • 프로젝트 목록과 내용(화면·부품·선·묶음·디자인 규칙)을 읽습니다.
  • get_layout은 브라우저 없이 캔버스 배치 규칙을 따릅니다. 다른 글꼴도 Pretendard 글 폭으로 근사하며 approx 상자는 최대 4px 차이 날 수 있습니다. 숨긴 부품은 상자가 없고, 화면 위 덮개와 이미지 내용은 포함하지 않습니다.
  • 화면·부품·선·묶음·디자인 규칙을 만들고 고치고 지웁니다. 호출 하나는 브라우저에서 되돌리기 한 단계로 남습니다.
  • 연결 중 브라우저에서 지금 고른 화면·부품을 읽습니다.
  • 기존 앱을 불러오고, 다시 불러올 때 GUI에서 고친 내용과 합칩니다.

불러오는 중…

ScreenPath 서버는 회원의 코드 저장소를 읽지 않습니다. Claude가 회원이 준 코드를 읽고 payload로 보내는 방식입니다.

도구 무리

Claude는 연결한 범위 안에서 아래 도구를 씁니다. 도구 이름과 입력 칸 이름은 영어로 유지됩니다.

읽기

프로젝트 목록·개요·화면·디자인 규칙·모션 프리셋을 읽고, get_layout으로 스크린샷 없이 화면·기기·상태별 부품 상자를 px로 확인합니다. get_flow로 선 전체를, get_code_mapping으로 코드 키 대응표를 봅니다. 변수와 부품을 찾고 디자인을 점검하며 md·JSON을 내보냅니다. render_screen으로 화면 그림을 보고 simulate_flow로 흐름을 눌러 warnings를 확인합니다.

쓰기

묶음·화면·부품·선·반응·디자인 규칙을 만들고 고치고 지웁니다. 변수는 create_variable·update_variable, 모션 프리셋은 create_motion_preset·update_motion_preset을 쓰고 프로젝트 이름·기기도 고칩니다. 이미지는 upload_image로 올리고 list_assets로 목록과 서명 URL을 읽습니다.

묶음 편집

여러 쓰기를 batch_edit 하나로 보내 한 트랜잭션과 되돌리기 한 단계로 처리합니다. create_variable이 만든 변수는 앞 op의 $0 같은 참조로 이어 씁니다. 하나라도 실패하면 아무것도 바뀌지 않습니다.

버전 되돌리기

list_versions로 자동 저장·이름 붙인·되돌리기 전 버전을 보고, restore_version으로 고른 버전의 내용을 되돌립니다.

재사용 컴포넌트

list_components로 원본·변형·사용 화면을 읽습니다. create_component로 선택한 부품을 원본으로 만들고 instantiate로 배치합니다. update_component로 원본을 고치고 set_instance_overrides로 인스턴스를 덮어쓰거나 초기화하며 detach_instance로 분리합니다. 쓰기는 한 번의 되돌리기 단계로 처리됩니다.

디자인 가져오기

import_design으로 DESIGN.md 글의 색·글꼴·간격·모서리·그림자 규칙을 프로젝트 디자인 규칙에 반영합니다.

불러오기

import_app으로 기존 앱을 불러오고, import_diff로 코드와 GUI의 차이를 확인한 뒤 import_apply로 합칩니다. import_url은 공개 웹 주소를 AI 없이 불러옵니다.

흐름·코드 대응

get_flow로 선 전체를 원본 그대로 읽고, get_code_mapping으로 묶음·화면·부품·선의 코드 키 대응표를 봅니다. 구현한 뒤 set_source_links로 코드 키(파일·컴포넌트·경로·줄)를 남깁니다.

코멘트

list_comments로 열린·해결된 코멘트와 최근 답글을 읽고, add_comment로 화면·부품 위치에 코멘트나 답글을 남기며, resolve_comment로 해결·다시 열기를 합니다.

지우기 전에 버전을 남깁니다. 소유자가 무료 플랜이거나 이름 붙인 버전 상한에 도달하면 버전 없이 지워집니다. 30초 안의 연속 변경은 같은 버전을 쓸 수 있습니다.

Claude에게 시킬 일 예시

예시를 복사해 연결한 Claude에 붙여 넣으세요. 앱과 화면 이름을 내 프로젝트에 맞게 바꿔 요청할 수 있어요.

새 앱

  • 꽃집 예약 앱을 모바일로 설계해 줘. 꽃다발 고르기 → 날짜·시간 → 결제 → 예약 확인 화면, 화면마다 돌아가는 길도.

    design_new_app

  • 도서관 대출 앱을 태블릿용으로 만들어 줘. 도서 검색·책 상세·대출 현황 화면에 서로 다른 책 이름과 반납 날짜를 넣어 줘.

    design_new_app

  • 헬스장 출석 앱을 모바일로 설계해 줘. 오늘의 수업·수업 예약·출석 기록 화면에 요가와 근력 운동 수업의 실제 시간과 정원을 넣어 줘.

    design_new_app

  • 부산 2박 3일 여행 계획 앱을 데스크톱용으로 만들어 줘. 날짜별 일정·장소 상세·예산 화면을 연결하고 교통비와 식비도 구체적으로 넣어 줘.

    design_new_app

화면 고치기

  • 꽃집 예약 앱의 모바일 ‘결제’ 화면을 다듬어 줘. 꽃다발 가격·픽업 시간·총액이 먼저 보이게 하고 결제 버튼은 엄지로 누르기 쉽게 해 줘.

    polish_screen

  • 도서관 앱의 태블릿 ‘도서 검색’ 화면을 같은 책 목록으로 배치가 다른 안 두 개 만들어 줘. 원래 화면은 두고 각 안의 장단점을 알려 줘.

    make_variants

  • 가계부 앱의 모바일 ‘이번 달 지출’ 화면에서 견본 글과 반복된 목록 행을 고쳐 줘. 식료품 32,500원·교통 8,000원·도서 18,000원처럼 서로 다른 내역으로 채워 줘.

    polish_screen

상태 채우기

  • 도서관 앱의 모바일 ‘도서 검색’ 화면에 결과 없음·로딩·오류 상태를 채워 줘. 빈 상태에는 검색어 안내를, 오류 상태에는 다시 시도 버튼을 보여 줘.

    fill_states

  • 헬스장 앱의 태블릿 ‘출석 기록’ 화면에 기본·빈·로딩·오류 상태를 만들어 줘. 기본 상태에는 서로 다른 출석 날짜를 넣고 각 상태를 렌더링해 확인해 줘.

    fill_states

  • 여행 앱의 모바일 ‘공유 일정’에서 권한이 없는 경우를 별도 화면으로 만들어 줘. 접근 안내와 내 일정으로 돌아가는 버튼을 연결해 줘.

    fill_states

흐름 점검

  • 꽃집 예약 앱의 모바일 ‘꽃다발 고르기’부터 ‘예약 확인’까지 흐름을 점검해 줘. 막다른 곳·돌아갈 길 없는 화면·도달 못 하는 화면을 화면과 선 id로 알려 줘.

    review_flow

  • 도서관 앱의 태블릿 ‘도서 검색 → 책 상세 → 대출 확인’ 경로를 눌러 보고 돌아가는 길이 빠진 곳을 고쳐 줘. 대출 확인에서 검색으로 돌아올 수 있는지도 다시 확인해 줘.

    review_flow

  • 헬스장 모바일 앱의 ‘수업 예약’ 시트를 열고 닫는 흐름을 점검해 줘. 닫기 연결과 취소 후 원래 화면으로 돌아오는 길이 없으면 고치고 재생해 확인해 줘.

    review_flow

디자인 규칙

  • 여행 앱의 데스크톱 ‘날짜별 일정’ 화면을 기존 디자인 토큰에 맞춰 줘. 색·글꼴·간격을 통일하고 간격은 4px 배수로 정리해 줘.

    polish_screen

  • 가계부 모바일 앱의 ‘지출 입력’ 화면에서 접근성을 점검해 줘. 누를 영역 44×44px와 본문 대비 4.5:1을 기준으로 문제 부품과 고칠 방법을 알려 줘.

    review_accessibility

  • 도서관 태블릿 앱의 ‘책 상세’와 ‘대출 현황’에서 반복되는 대출 버튼을 공용 부품으로 정리해 줘. 기존 디자인 토큰과 화면별 버튼 글은 유지해 줘.

    polish_screen

모션과 상호작용

  • 꽃집 모바일 앱의 ‘예약 확인’에서 완료 표시가 짧게 나타나도록 모션을 설계해 줘. 실제 프리셋을 확인해서 적용하고 움직임 줄이기 대안도 정해 줘.

    design_motion

  • 헬스장 모바일 앱의 ‘수업 예약’에서 예약 버튼을 누르면 예약 여부 변수를 바꾸고 확인 화면으로 이동하게 해 줘. 변수 설정 단계를 포함해 흐름을 재생하고 움직임 줄이기 대안도 넣어 줘.

    add_interactions

  • 여행 모바일 앱의 ‘장소 상세’에서 교통편 시트가 열리고 닫히는 전환을 다듬어 줘. 짧은 전환 시간과 easing을 정하고 움직임을 줄여도 내용을 읽을 수 있게 해 줘.

    design_motion

내보내기

  • 꽃집 모바일 예약 앱을 export_md로 내보내 줘. 나뉜 결과를 끝까지 읽고 ‘꽃다발 고르기’와 ‘예약 확인’의 화면·버튼·이동 명세가 있는지 확인해 줘.

  • 도서관 태블릿 앱의 ‘도서 검색’과 ‘대출 현황’을 구현 담당자에게 넘길 명세로 export_md 해 줘. 모든 파트를 읽고 빈·로딩·오류 상태와 돌아가는 길도 정리해 줘.

코드 맞추기

  • 꽃집 모바일 앱의 ‘꽃다발 고르기’와 ‘예약 확인’에 코드 경로 /bouquets와 /confirmation을 set_source_links로 남겨 줘. get_code_mapping으로 연결을 확인해 줘.

    sync_with_code

  • 가계부 모바일 앱의 ‘이번 달 지출’을 현재 저장소 코드와 다시 맞춰 줘. 기존 코드 연결을 읽고 차이를 계산한 뒤 충돌은 내 값과 코드 값을 보여 주고 선택을 받아 줘.

    sync_with_code

  • 현재 저장소의 태블릿 도서관 앱에서 ‘도서 검색’과 ‘책 상세’를 ScreenPath로 가져와 줘. 먼저 import_guide를 확인하고 코드 키와 화면 이동을 함께 남겨 줘.

    import_guide

다국어

  • 꽃집 모바일 앱의 ‘꽃다발 고르기’와 ‘예약 확인’을 자연스러운 영어로 바꿔 줘. 입력 안내·선택지·상태 안내도 번역하고 버튼 글이 잘리지 않는지 렌더링해 확인해 줘.

    localize_app

  • 여행 데스크톱 앱의 영어 ‘Daily itinerary’ 화면을 자연스러운 한국어로 바꿔 줘. 목록·탭·빈 상태까지 문체를 통일하고 줄 넘침을 확인해 줘.

    localize_app

협업 댓글

  • 도서관 태블릿 앱의 ‘책 상세’에 열린 협업 댓글을 list_comments로 읽어 줘. 요청 사항을 정리하고 반납 날짜 표시를 고칠 위치에 add_comment로 제안을 남겨 줘.

  • 헬스장 모바일 앱의 ‘수업 예약’ 댓글에서 버튼 글 수정 요청을 찾아 반영해 줘. 고친 내용을 답글로 남기고 실제 반영을 확인한 댓글만 resolve_comment로 해결 처리해 줘.

프롬프트

Claude에서 아래 프롬프트를 고르면 필요한 도구 순서와 사용자 데이터 칸을 함께 받습니다.

  • design_new_app

    새 앱: create_project → batch_edit → check_design → export_md.

  • implement_app

    구현: get_project_outline → export_md → set_source_links.

  • import_guide

    기존 앱 불러오기: 지원 필드·안정 키·나눠 불러오기·재불러오기 충돌 안내.

  • review_screen_spec

    화면 명세 검토: 도달 가능성·로딩/빈/오류 상태·입력 검증·뒤로 가기·기기별 차이.

  • review_accessibility

    접근성 검토: 대비·라벨·포커스·44px 터치 영역·움직임 줄이기.

  • design_motion

    모션 설계: list_presets → 트리거·조건·전환·반응 → duration/easing → check_design.

  • sync_with_code

    코드 동기화: get_code_mapping → import_diff → 충돌 선택 → import_apply → set_source_links.

  • fill_states

    상태 채우기: 빈·로딩·오류 상태와 권한 없음 경로를 채우고 화면을 확인합니다.

  • polish_screen

    화면 다듬기: 품질 기준대로 실제 내용·토큰·44px 누를 영역·간격·이름을 고칩니다.

  • review_flow

    흐름 점검: 막다른 곳·돌아가는 길·도달 못 하는 화면·끊긴 선을 확인합니다.

  • localize_app

    앱 번역: 한국어·영어로 자연스럽게 번역하고 글 길이 넘침·잘림을 확인합니다.

  • make_variants

    화면 시안: 원래 화면을 유지하고 같은 목적·내용으로 배치와 위계가 다른 2~3안을 비교합니다.

  • add_interactions

    상호작용 추가: 프리셋·변수 조건·선·반응을 구현하고 움직임 줄이기 대안과 흐름을 확인합니다.

리소스

프로젝트 리소스는 도구와 같은 속도 제한·플랜·범위 검사를 거쳐 읽습니다. JSON 리소스에는 프로젝트 rev가 들어갑니다. 내보내기 형식과 디자인 품질 기준 문서는 프로젝트 접근 없이 읽을 수 있습니다.

  • 디자인 품질 기준

    screenpath://docs/design-quality

    실제 내용·디자인 토큰·상태 4종·44px 누를 영역·돌아가는 길 등 화면 품질 기준과 끝내기 전 확인 순서입니다.

  • 내보내기 형식 문서

    screenpath://docs/export-format

    md 절 순서, JSON 최상위 키, 범위와 쪽 나눔을 설명하는 형식 문서입니다.

  • 프로젝트 개요

    screenpath://projects/{projectId}

    get_project_outline의 첫 쪽 JSON입니다. 프로젝트 개요·묶음·화면·나가는 선을 담습니다.

  • 화면 명세

    screenpath://projects/{projectId}/screens/{screenId}

    get_screen의 JSON입니다. 화면·부품·선·반응과 rev를 담습니다.

  • 디자인 규칙

    screenpath://projects/{projectId}/design

    get_design의 JSON입니다. 디자인 토큰·CSS 변수·네이티브 토큰과 rev를 담습니다.

  • 내보내기 쪽

    screenpath://projects/{projectId}/exports/{exportId}/parts/{part}

    저장된 export_md 스냅샷의 한 쪽입니다. part는 1부터 시작합니다.

Claude Code

  1. Claude Code 채팅창이 아니라 터미널(셸)에 아래 명령을 붙여 넣고 실행합니다.

    터미널에 붙여 넣기
    claude mcp add --transport http --scope user screenpath https://screenpath.dev/mcp

  2. Claude Code를 새로 엽니다. 이미 열려 있었다면 종료하고 다시 시작합니다(다시 시작하기 어렵다면 /reload-plugins).

  3. Claude Code 안에서 /mcp를 입력하고 screenpath를 고른 뒤 Authenticate를 고릅니다(Enter).

    Claude Code 안에 붙여 넣기
    /mcp

  4. 브라우저가 열리면 Google로 로그인하고 동의 화면에서 허용을 누릅니다. Claude Code로 돌아와 /mcp에서 screenpath가 연결됨(connected)인지 확인합니다.

  5. 첫 요청을 보내 봅니다.

    Claude Code 안에 붙여 넣기
    ScreenPath에서 내 프로젝트 보여 줘

막힐 때

  • Needs authentication이 보이면 아직 로그인 전입니다. /mcp에서 screenpath → Authenticate.
  • 연결이 끊겼거나 실패하면 /mcp에서 screenpath → Reconnect.
  • /mcp에 screenpath가 없으면 명령을 Claude Code 채팅창에 넣었을 수 있습니다. 터미널에서 다시 실행하고 Claude Code를 다시 시작합니다.
  • 브라우저가 없는 원격 셸이면 터미널에서 아래 명령으로 로그인 주소를 받아 다른 기기 브라우저에서 엽니다.

    터미널에 붙여 넣기
    claude mcp login screenpath --no-browser

  • 로그아웃은 /mcp에서 screenpath → Clear authentication, 완전히 지우려면 터미널에서 claude mcp remove screenpath.

    터미널에 붙여 넣기
    claude mcp remove screenpath

Claude 데스크톱·claude.ai

  1. Claude 데스크톱이나 claude.ai에서 사용자 지정(Customize) › 커넥터(Connectors)를 엽니다.

  2. +를 누르고 사용자 지정 커넥터 추가(Add custom connector)를 고릅니다.

  3. 이름에 ScreenPath, 원격 MCP 서버 URL에 아래 주소를 붙여 넣고 계속(Continue) › 추가(Add)를 누릅니다.

    커넥터 URL 칸에 붙여 넣기
    https://screenpath.dev/mcp

  4. 열리는 창에서 Google로 로그인하고 동의 화면에서 연결할 프로젝트를 고른 뒤 허용을 누릅니다.

  5. 대화창의 + › 커넥터에서 ScreenPath를 켜고 첫 요청을 보내 봅니다.

무료 Claude 계정은 사용자 지정 커넥터를 1개만 만들 수 있습니다.

팀·엔터프라이즈 계정은 조직 관리자가 조직 설정에서 커넥터를 추가합니다.

기존 앱 불러오기

쇼핑 앱 저장소를 예로 들면, Claude에게 "이 앱을 ScreenPath로 불러와 줘"라고 요청합니다. Claude는 import_guide를 먼저 읽고 홈 → 상품 목록 → 장바구니 → 결제 흐름을 payload로 정리합니다.

  1. 묶음과 화면을 나눠 import_app으로 불러옵니다. 선은 화면 키가 문서에 생긴 뒤 마지막에 보냅니다.
  2. 다시 불러올 때는 import_diff로 코드와 GUI의 차이를 확인하고, 충돌이 있으면 사용자가 고른 값을 Claude에게 알려 줍니다.
  3. import_apply가 끝나면 코드에서 사라진 화면은 지우지 않고 코드에 없음으로 표시합니다.

연결 끊기와 개인정보

설정 › Claude 연결에서 연결을 끊을 수 있습니다. 연결을 끊으면 Claude는 더 이상 프로젝트에 접근할 수 없습니다.

동의 화면의 프로젝트 범위 기본값은 고른 프로젝트만입니다. 새 프로젝트 만들기 허용은 기본으로 꺼져 있습니다.

연결은 최대 180일 뒤 다시 동의해야 합니다. 그 전에 설정에서 언제든 끊을 수 있습니다.

ScreenPath는 서비스 운영을 위해 회원의 프로젝트 데이터를 AI 제공자에게 보내지 않습니다. Claude가 읽고 쓴 내용은 회원이 허용한 연결을 통해서만 전달됩니다.