Steel Puppeteer

by rdvo

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Supports configuration through a .env file in the project root for setting environment variables

  • Allows execution of JavaScript in the browser console through the puppeteer_evaluate tool

  • Provides specific configuration instructions for Claude Desktop on macOS, identifying the config file location

강철 인형사

Puppeteer와 Steel을 사용하여 브라우저 자동화 기능을 제공하는 모델 컨텍스트 프로토콜 서버입니다. 이 서버를 통해 LLM은 실제 브라우저 환경에서 웹 페이지와 상호 작용하고, 스크린샷을 찍고, JavaScript를 실행할 수 있습니다.

구성 요소

도구

  • 꼭두각시 조종자_탐색
    • 브라우저에서 모든 URL로 이동합니다.
    • 입력:
      • url (문자열, 필수): 이동할 URL
      • timeout (숫자, 선택 사항, 기본값: 60000): 탐색 시간 초과(밀리초)
      • waitUntil (문자열, 선택 사항, 기본값: "domcontentloaded"): 탐색이 성공한 것으로 간주할 시점. 옵션: "load", "domcontentloaded", "networkidle0", "networkidle2"
  • 인형극단 스크린샷
    • 전체 페이지 또는 특정 요소의 스크린샷을 캡처합니다.
    • 입력:
      • name (문자열, 필수): 스크린샷의 이름
      • selector (문자열, 선택 사항): 스크린샷을 찍을 요소에 대한 CSS 선택기
  • 꼭두각시_클릭
    • 페이지의 요소를 클릭하세요
    • 입력: selector (문자열, 필수): 클릭할 요소에 대한 CSS 선택기
  • 인형극_채우기
    • 입력 필드를 작성하세요
    • 입력:
      • selector (문자열, 필수): 입력 필드에 대한 CSS 선택기
      • value (문자열, 필수): 채울 값
  • 꼭두각시 선택
    • SELECT 태그로 요소를 선택하세요
    • 입력:
      • selector (문자열, 필수): 선택할 요소에 대한 CSS 선택기
      • value (문자열, 필수): 선택할 값
  • 인형극 배우기_호버
    • 페이지에 요소 올려놓기
    • 입력: selector (문자열, 필수): 호버할 요소에 대한 CSS 선택기
  • 인형극 평가자
    • 브라우저 콘솔에서 JavaScript 실행
    • 입력: script (문자열, 필수): 실행할 JavaScript 코드
  • 퍼펫티어__콘텐츠
    • 현재 페이지에서 콘텐츠 추출
    • 입력: selector (문자열, 선택 사항): 특정 요소에서 콘텐츠를 가져오는 CSS 선택자입니다. 지정하지 않으면 전체 페이지 콘텐츠를 반환합니다.
  • 인형극 스크롤
    • 페이지를 스크롤하여 지연 로딩을 트리거합니다.
    • 입력:
      • scrollDelay (숫자, 선택 사항, 기본값: 100): 스크롤 간 지연 시간(밀리초)
      • maxScrolls (숫자, 선택 사항, 기본값: 50): 스크롤의 최대 수

자원

서버는 두 가지 유형의 리소스에 대한 액세스를 제공합니다.

  1. 콘솔 로그 ( console://logs )
    • 텍스트 형식의 브라우저 콘솔 출력
    • 브라우저의 모든 콘솔 메시지를 포함합니다.
  2. 스크린샷 ( screenshot://<name> )
    • 캡처된 스크린샷의 PNG 이미지
    • 캡처 중에 지정된 스크린샷 이름을 통해 접근 가능

주요 특징

  • Puppeteer를 사용한 브라우저 자동화
  • 브라우저 세션 관리를 위한 Steel 통합
  • 콘솔 로그 모니터링 및 캡처
  • 스크린샷 기능
  • JavaScript 실행
  • 기본 웹 상호작용(탐색, 클릭, 양식 작성)
  • 토큰 제한 처리를 통한 콘텐츠 추출
  • 스크롤을 통한 레이지 로딩 지원
  • 로컬 및 원격 Steel 인스턴스 지원

구성

클로드 데스크톱 구성

Claude Desktop과 함께 Steel Puppeteer 서버를 사용하려면 다음 구성을 Claude Desktop 구성 파일(macOS에서는 일반적으로 ~/Library/Application Support/Claude/claude_desktop_config.json 에 있음)에 추가하세요.

지엑스피1

"path/to/steel-puppeteer/dist/index.js" 시스템에 있는 컴파일된 JavaScript 파일의 실제 경로로 바꾸세요.

환경 변수

Steel Puppeteer 서버는 다음 환경 변수를 사용하여 구성할 수 있습니다.

  • STEEL_LOCAL (선택 사항, 기본값: "false"): 클라우드 서비스 대신 로컬 Steel 인스턴스를 사용하려면 "true"로 설정합니다.
  • STEEL_API_KEY ( STEEL_LOCAL 이 "false"인 경우에만 필요): 클라우드 서비스를 사용할 때 인증을 위한 Steel API 키입니다.
  • STEEL_URL (선택 사항): 사용자 정의 배포를 사용하는 경우 Steel 인스턴스의 URL입니다.

서버 구성

Steel Puppeteer 서버를 Claude Desktop을 통하지 않고 직접 실행하는 경우, 셸에서 이러한 환경 변수를 설정하거나 프로젝트 루트에 .env 파일을 생성할 수 있습니다. 로컬에서 사용할 수 있는 .env 파일의 예는 다음과 같습니다.

STEEL_LOCAL=true

Steel 클라우드 서비스를 사용하는 경우 .env 파일은 다음과 같습니다.

STEEL_API_KEY=your-steel-api-key STEEL_LOCAL=false

서버 실행

Steel Puppeteer 서버를 시작하려면:

  1. 종속성 설치:
    npm install
  2. 프로젝트를 빌드하세요:
    npm run build
  3. 서버를 시작합니다:
    npm start
  4. Claude Desktop을 열고 탐색해 보세요! 서버가 시작되어 지정된 포트(기본값: 3000)에서 수신 대기합니다.

문제 해결

  • Puppeteer에 문제가 발생하면 시스템에 필요한 종속성이 설치되어 있는지 확인하세요. 자세한 내용은 Puppeteer 문제 해결 가이드를 참조하세요.
  • Steel 클라우드 서비스를 사용하는 경우 Steel API 키가 유효하고 필요한 권한이 있는지 확인하세요.
  • 로컬 Steel 인스턴스를 사용하는 경우 지정된 URL(사용자 지정 시) 또는 기본 로컬 주소에서 실행 중이고 액세스 가능한지 확인하세요.

더 자세한 구성 옵션과 고급 사용법에 대해서는 Steel 설명서와 Puppeteer API 참조를 참조하세요.

-
security - not tested
A
license - permissive license
-
quality - not tested

Puppeteer를 사용하여 LLM이 웹 브라우저를 자동화하고 실제 브라우저 환경에서 탐색, 스크린샷, 양식 작성 및 JavaScript 실행을 허용할 수 있는 모델 컨텍스트 프로토콜 서버입니다.

  1. Components
    1. Tools
    2. Resources
  2. Key Features
    1. Configuration
      1. Claude Desktop Configuration
      2. Environment Variables
      3. Server Configuration
      4. Running the Server
      5. Troubleshooting
    ID: dupuf5crsv