OpenScreenShot은 capture_screenshot이라는 도구 하나를 제공하는 로컬 MCP 서버를 제공합니다. MCP 클라이언트는 웹페이지 URL로 이 도구를 호출해 PNG 이미지 콘텐츠를 받을 수 있습니다. 서버는 사용자의 컴퓨터에서 별도의 헤드리스 Chrome 호환 브라우저를 실행하며, 브라우저 확장 프로그램은 필요하지 않습니다.

MCP 클라이언트에 서버 추가하기

먼저 Node.js, pnpm, Chrome 호환 브라우저를 설치하세요. 클라이언트의 설정 형식에 맞춰 서버 항목을 추가하세요. mcpServers 객체를 받는 클라이언트는 다음을 사용할 수 있습니다.

{
  "mcpServers": {
    "openscreenshot": {
      "command": "pnpm",
      "args": ["dlx", "openscreenshot"]
    }
  }
}

클라이언트가 실행 경로에서 pnpm을 찾을 수 있어야 합니다. 설정을 저장한 뒤 클라이언트의 MCP 연결을 다시 시작하거나 다시 불러오세요. 서버는 stdio를 사용하므로 클라이언트가 로컬 프로세스를 시작합니다. 입력할 호스팅 MCP URL은 없습니다.

Chrome이 일반적이지 않은 위치에 설치되어 있다면 클라이언트의 환경 변수 설정으로 CHROME_PATH를 전달하세요. 애플리케이션이 들어 있는 폴더가 아니라 실행 파일의 전체 경로를 사용하세요.

capture_screenshot 호출하기

최소한의 도구 입력은 다음과 같습니다.

{ "url": "https://example.com" }

이 입력은 기본 크기인 1280 × 800으로 뷰포트를 캡처합니다. 재현 가능한 요청을 위해 뷰포트와 전체 페이지 옵션을 명시적으로 설정하세요.

{
  "url": "https://example.com",
  "fullPage": true,
  "width": 1440,
  "height": 900
}

width는 200부터 3840까지, height는 200부터 2160까지의 정수를 받습니다. 도구는 MIME 유형 image/png의 MCP 이미지 콘텐츠를 반환합니다. 이 도구에는 출력 경로 인수가 없습니다. 결과를 표시할지 저장할지는 클라이언트에 달려 있습니다. 이름이 지정된 파일이 바로 필요하다면 CLI를 사용하세요.

이미지가 도구를 떠나기 전에 데이터 가리기

redact 객체를 추가하면 스크린샷을 찍기 전에 페이지 안의 데이터를 검은 상자로 덮습니다. 클라이언트는 가려진 이미지만 받습니다.

{
  "url": "https://example.com",
  "redact": {
    "selectors": ["#account-menu"],
    "patterns": ["email", "phone", "secret"],
    "rects": [{ "x": 0, "y": 0, "width": 200, "height": 40 }]
  }
}

selectors는 일치하는 각 요소를 모든 자식 요소와 함께 덮습니다. patterns는 일치하는 텍스트와 양식 값을 덮으며, 대상은 email, phone(9자리부터 15자리까지의 숫자), secret(일반적인 API 키와 토큰 형태, 긴 해시)입니다. rects는 출력 이미지의 픽셀 단위 사각형을 덮으며, 캔버스, 이미지, 교차 출처 iframe에 사용합니다. 선택자와 일치하는 요소가 없거나, 사각형이 이미지 밖에 있거나, 캡처 중에 페이지가 대상을 움직이면 도구는 이미지 없이 오류를 반환합니다. 패턴은 여러 요소로 나뉜 텍스트나 이미지로 그려진 텍스트를 놓칠 수 있습니다.

에이전트가 볼 수 있는 것과 볼 수 없는 것

캡처는 새 헤드리스 브라우저에서 시작됩니다. 평소 사용하는 Chrome 창의 쿠키나 로그인 세션을 물려받지 않습니다. 따라서 인증이 필요한 페이지는 로그인 화면이 나올 수 있습니다. 현재 도구는 로그인 단계, 쿠키 주입, 선택자 대기, 대화형 클릭을 제공하지 않습니다.

결론을 내리기 전에, 반환된 이미지에 실제로 무엇이 보이는지 에이전트가 먼저 확인하도록 요청하세요. 스크린샷은 레이아웃, 간격, 눈에 보이는 오류를 점검하는 데 도움이 됩니다. 하지만 양식이 제대로 제출되는지나 키보드 탐색이 동작하는지는 확인할 수 없습니다.

스크린샷은 어디로 가나요?

스크린샷은 로컬에서 생성되어 MCP 클라이언트로 반환됩니다. 그 클라이언트가 호스팅된 모델을 사용한다면, 클라이언트 자체 설정에 따라 반환된 이미지를 모델 제공업체로 전송할 수 있습니다. 로컬에서 캡처한다고 해서 에이전트와의 대화 전체가 기기에 머문다는 뜻은 아닙니다. 제공업체에 전달되면 안 되는 데이터에는 redact를 사용하세요.

크기가 예측 가능한 자동 캡처는 CI용 스크린샷을 참고하세요. 에이전트 캡처 스킬과 서버 소스에 기계용 지침과 도구 정의가 있습니다.