캡처가 Claude Code 안으로 들어왔다 — SnapContext 0.3.0
브라우저 캡처 도구에 원격 MCP 서버를 붙였다. 확장 코드는 한 줄도 안 고치고 도구 3종을 얹어, 적대 검증 4라운드를 통과하고 AI 코딩 도구와 연결한 기록.
한눈에 요약 SnapContext 0.3.0은 브라우저 캡처를 Claude Code·Cursor가 직접 불러오게 하는 원격 MCP 서버 업데이트다. 확장 프로그램 코드는 0줄 수정, 서버 쪽에 도구 3종을 얹었다. 적대 검증 4라운드 중 첫 라운드에서 깨졌고, 고쳐서 나머지를 전부 통과시킨 뒤 자동 테스트 83개와 함께 배포했다.
처음 하고 싶었던 건 사실 다른 거였다. AI한테 "지금 이 화면 캡처해 줘"라고 시키면 브라우저가 알아서 찍어오는 것. 그런데 리서치를 해보니 이걸 끝까지 구현해서 공개한 사례를 하나도 못 찾았다. 근거 없이 밀어붙이는 대신 그 기능은 접었다. 이번 0.3.0에 들어간 건 그 반대 방향 — 이미 찍어둔 캡처를 AI가 가져가는 통로다.
복사, 붙여넣기, 복사, 붙여넣기
SnapContext는 화면을 캡처하고 핀 주석과 출처 정보를 묶어 AI에게 줄 설명 꾸러미(Context Pack)를 만들어주는 크롬·웨일 확장이다. 0.2.0까지의 사용 흐름은 이랬다. 캡처하고, 꾸러미를 복사하고, ChatGPT나 Claude에 붙여넣는다. 한 번이면 괜찮은데 코딩 세션에서는 이 왕복이 은근히 잦다. 버그 화면 하나 보여줄 때마다 마우스가 채팅창과 확장 사이를 오간다.
캡처는 이미 서버에 있었다
0.2.0에서 로그인 없는 공유 기능을 만들면서, 캡처는 이미 서버(Cloudflare Worker)에 올라가 있었다. 데이터는 서버에 있는데 AI 코딩 도구만 그걸 못 본다 — 문제가 이렇게 정리되니 답은 두 갈래였다. AI가 브라우저를 원격으로 조종해 캡처를 새로 찍게 하거나, 이미 올라간 캡처를 AI가 조회하게 하거나. 앞의 길은 검증된 공개 사례가 없어 접었고, 뒤의 길을 골랐다. 이미 있는 서버에 MCP — AI 도구가 외부 프로그램의 기능을 직접 호출하게 해주는 연결 규약 — 창구 하나만 열면 되기 때문이다.
이 선택의 부산물이 "확장 코드 0줄 수정"이다. 작업 전부가 서버에서 일어났으니 스토어에 올라간 확장을 쓰는 사람에게는 아무 변화가 없고, 깨질 것도 없다. 화면 밖에서만 기능이 늘었다.
그래서 무엇이 달라지나
Claude Code나 Cursor 설정에 주소 한 줄을 넣으면, AI가 대화 중에 내 캡처를 스스로 조회한다. 열린 도구는 세 개 — 캡처 목록 조회, Context Pack 가져오기, 화면 분석용 요약 만들기. 내 Claude Code에서 실제로 호출해 봤고, 돌아온 응답을 화면으로 재구성하면 이렇다.
쓰임새는 이런 식이다. 버그 화면을 캡처하고 문제 지점에 핀만 찍어 공유해 두면, 코딩하던 Claude Code가 그 캡처를 직접 열어 "핀 위치의 원인을 추정하고 수정 코드를 제안하라"는 지시까지 받아간다. 설명을 다시 타이핑하는 단계가 사라진다. 목록에 잡히는 건 공유 링크로 올린 캡처만이고 — 0.2.0의 동의 규칙 그대로 — 핀에 적은 메모나 좌표는 서버 색인에 저장하지 않는다.
검증에서 한 번 깨졌다
이 업데이트는 나 혼자 "된 것 같은데"로 끝내지 않았다. 서로 다른 AI에게 구현을 공격하게 하는 적대 검증을 4라운드 돌렸는데, 1라운드에서 바로 불합격이 나왔다. 치명 결함 2건 — 그중 하나는 초기 데이터 이관 스크립트에서 "캡처가 1,000개를 넘으면 넘친 만큼 조용히 사라지는데, 결과는 성공처럼 보인다"였다. 조용한 실패가 제일 무섭다. 전부 고치고 재검증에서 잔여 0을 확인한 뒤에야 다음 단계로 갔다.
마지막은 배포된 서버에 직접 요청을 쏘는 점검이었다. 그날의 실제 기록 일부다.
인증 없이 두드리면 거절되고, 없는 캡처를 찾으면 빈 화면 대신 명시적인 에러가 돌아온다. 비전공자가 바이브코딩으로 서버 기능을 만들 때, 이 검증 루프가 사실상의 안전망이다.
다음 버전은 만드는 중이다
0.4.0은 이 통로를 "나만 쓰는 것"에서 "각자 쓰는 것"으로 바꾼다. 지금 MCP 창구는 내 전용 토큰 하나로 잠겨 있는데, 다음 버전은 사용자마다 개인 토큰을 발급해 자기 캡처만 보게 한다. 공유 링크 유지 기간도 지금은 7일 고정이지만 1·7·30일 중에서 고르게 되고, AI가 이 도구들을 시키지 않아도 알아서 꺼내 쓰도록 안내문을 서버에 내장한다. 접었던 원격 캡처는 버린 게 아니라 별도 리서치로 돌려놨다 — 기술 검증이 통과하면 그다음 버전 후보다.
써보려면
확장 자체는 크롬 웹스토어와 웨일 스토어에서 그대로 설치하면 된다. MCP 연결은 자기 서버를 운영하는 개발자용 기능이라, 지금은 내 작업 환경에서 먼저 굴리며 다듬는 중이다. 연결 자체는 정말 한 줄이다.
토큰이 없으면 서버가 401로 거절하니, 주소를 안다고 남의 캡처를 볼 수 있는 건 아니다.
SnapContext가 어디까지 왔는지는 이제 업데이트 페이지에 버전 단위로 쌓인다. 공유 기능을 만들던 지난 이야기는 SnapContext 0.2.0 — 디자인을 새로 하고, 로그인 없는 공유를 넣었다에서 이어진다.


