GoldenPillow/screen-vision-mcp
3.1
If you are the rightful owner of screen-vision-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
Screen Vision MCP Server v2.0 is an advanced automation server designed to bypass crawling restrictions through direct screen manipulation.
Screen Vision MCP Server v2.0 🚀
크롤링 제한된 페이지를 화면 직접 조작으로 우회하는 고급 자동화 MCP 서버입니다.
✨ v2.0 새로운 기능
🤖 자동화 기능
- click_element: 좌표나 텍스트로 요소 클릭 (OCR 기반)
- scroll_page: 페이지 스크롤 (상하좌우)
- type_text: 텍스트 자동 입력
- press_key: 키보드 단축키 실행
- wait_for_element: 특정 요소가 나타날 때까지 대기
- automated_browse: 자동 페이지 탐색 및 데이터 수집
🔍 OCR 및 비전 분석
- extract_text_from_screen: Tesseract.js 기반 텍스트 추출
- find_clickable_elements: 클릭 가능한 UI 요소 자동 감지
📸 기존 기능 (개선됨)
- capture_screen: 화면 캡처
- analyze_ui_elements: UI 요소 분석
- create_ui_guide: 시각적 가이드 생성
- create_answer_overlay: 답변 오버레이 표시
🎯 크롤링 우회 시나리오
1. 로그인이 필요한 사이트
// 1. 현재 화면 캡처
await capture_screen({});
// 2. 로그인 버튼 클릭
await click_element({ text: "로그인" });
// 3. 아이디 입력
await click_element({ text: "아이디" });
await type_text({ text: "your_username", clear_before: true });
// 4. 비밀번호 입력
await press_key({ key: "tab" });
await type_text({ text: "your_password" });
// 5. 로그인 버튼 클릭
await click_element({ text: "로그인" });
// 6. 페이지 로딩 대기
await wait_for_element({ text: "대시보드", timeout: 10 });
2. 무한 스크롤 데이터 수집
// 자동으로 스크롤하면서 데이터 수집
await automated_browse({
target_text: "더보기",
max_clicks: 10,
scroll_between_clicks: true,
extract_content: true
});
3. CAPTCHA나 보안 검증 우회
// 1. 현재 화면 분석
await analyze_ui_elements({ focus_area: "전체화면" });
// 2. CAPTCHA 이미지에서 텍스트 추출
await extract_text_from_screen({
region: { x: 100, y: 200, width: 200, height: 50 }
});
// 3. 추출된 텍스트 입력
await click_element({ x: 300, y: 250 });
await type_text({ text: "추출된_텍스트" });
🛠️ 설치 및 설정
1. 의존성 설치
cd "D:\Projects\Testing-Lab\Experiments\screen-vision-mcp"
npm install
2. 새로운 의존성 추가
npm install robotjs tesseract.js
3. 빌드
npm run build
4. Claude Desktop 설정
{
"mcpServers": {
"screen-vision": {
"command": "node",
"args": ["D:/Projects/Testing-Lab/Experiments/screen-vision-mcp/dist/index.js"],
"env": {}
}
}
}
🎮 사용 예시
기본 자동화 워크플로우
1. capture_screen() - 현재 상태 확인
2. extract_text_from_screen() - 페이지 내용 읽기
3. find_clickable_elements() - 클릭 가능한 요소 찾기
4. click_element() - 원하는 요소 클릭
5. wait_for_element() - 페이지 로딩 대기
6. scroll_page() - 추가 콘텐츠 로드
7. automated_browse() - 반복 작업 자동화
Claude와의 대화 예시
- "이 페이지에 로그인해줘"
- "아래로 스크롤해서 더 많은 콘텐츠를 찾아줘"
- "'다음 페이지' 버튼을 찾아서 클릭해줘"
- "이 폼에 데이터를 입력해줘"
- "페이지의 모든 텍스트를 추출해줘"
🔧 기술 스택
- RobotJS: 마우스/키보드 자동화
- Tesseract.js: OCR 텍스트 인식
- Sharp: 이미지 처리 및 메타데이터
- Screenshot-desktop: 화면 캡처
- TypeScript: 타입 안전성
- MCP SDK: Model Context Protocol
⚠️ 주의사항
권한 요구사항
- Windows: 접근성 권한, 관리자 권한 (첫 실행 시)
- macOS: 접근성 권한, 화면 기록 권한
- Linux: X11 권한
보안 고려사항
- 스크린샷에 민감한 정보가 포함될 수 있음
- 자동화 스크립트는 신중하게 사용
- 웹사이트 이용약관 준수 필요
성능 최적화
- OCR 처리는 CPU 집약적 (영역 지정 권장)
- 스크린샷은 임시 폴더에 저장됨
- 대량 데이터 수집 시 속도 제한 권장
🚨 윤리적 사용
이 도구는 다음 목적으로만 사용해야 합니다:
- 접근성 개선
- 합법적인 데이터 수집
- 개인 업무 자동화
- 테스트 및 개발
금지사항:
- 무단 크롤링
- 서비스 약관 위반
- 개인정보 무단 수집
- 악의적 목적 사용
버전: 2.0.0
개발자: Assistant
라이선스: MIT
업데이트: 2025-05-25