Playwright Server

by williamvd4
Verified

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Supports targeting elements on web pages using CSS selectors for operations like clicking, filling forms, taking screenshots, and extracting content

  • Allows execution of JavaScript code in the browser context through the playwright_evaluate tool, enabling manipulation of web page content and behavior

극작가 서버 MCP 서버

\극작가 도구가 포함된 MCP 서버\

구성 요소

자원

서버는 다음을 사용하여 간단한 메모 저장 시스템을 구현합니다.

  • 개별 노트에 액세스하기 위한 사용자 지정 노트:// URI 체계
  • 각 노트 리소스에는 이름, 설명 및 텍스트/일반 MIME 유형이 있습니다.

프롬프트

서버는 단일 프롬프트를 제공합니다.

  • summarize-notes: 저장된 모든 노트의 요약을 생성합니다.
    • 세부 수준(간략/상세)을 제어하기 위한 선택적 "스타일" 인수
    • 현재 모든 노트와 스타일 선호도를 결합하여 프롬프트를 생성합니다.

도구

서버는 다음 도구를 구현합니다.

  • playwright_navigate : 지정된 URL로 이동합니다. 활성 세션이 없으면 자동으로 새 세션을 생성합니다.
    • url 인수(문자열)가 필요합니다.
  • playwright_screenshot : 현재 페이지나 특정 요소의 스크린샷을 찍습니다.
    • 스크린샷 파일 이름에 대한 name 인수(문자열)가 필요합니다.
    • 스크린샷을 찍을 요소에 대한 CSS 선택기를 지정하는 선택적 selector 인수(문자열). 선택기를 지정하지 않으면 전체 페이지 스크린샷이 찍힙니다.
  • playwright_click : CSS 선택기를 사용하여 페이지의 요소를 클릭합니다.
    • 클릭할 요소에 대한 CSS 선택기를 지정하려면 selector 인수(문자열)가 필요합니다.
  • playwright_fill : 입력 필드를 채웁니다.
    • 입력 필드에 대한 CSS 선택기를 지정하려면 selector 인수(문자열)가 필요합니다.
    • 채울 값을 지정하려면 value 인수(문자열)가 필요합니다.
  • playwright_evaluate : 브라우저 콘솔에서 JavaScript 코드를 실행합니다.
    • 실행할 JavaScript 코드를 지정하려면 script 인수(문자열)가 필요합니다.
  • playwright_click_text : 페이지의 텍스트 콘텐츠를 클릭하여 요소를 클릭합니다.
    • 클릭할 요소의 텍스트 내용을 지정하려면 text 인수(문자열)가 필요합니다.
  • playwright_get_text_content : 모든 표시 요소의 텍스트 콘텐츠를 가져옵니다.
  • playwright_get_html_content : 페이지의 HTML 콘텐츠를 가져옵니다.
    • 요소에 대한 CSS 선택기를 지정하려면 selector 인수(문자열)가 필요합니다.

구성

[TODO: 구현에 맞는 구성 세부 정보 추가]

빠른 시작

설치하다

클로드 데스크탑

MacOS의 경우: ~/Library/Application\ Support/Claude/claude_desktop_config.json Windows의 경우: %APPDATA%/Claude/claude_desktop_config.json

개발

건축 및 출판

배포를 위해 패키지를 준비하려면:

  1. 종속성 동기화 및 잠금 파일 업데이트:

지엑스피1

  1. 패키지 배포 빌드:
uv build

이렇게 하면 dist/ 디렉토리에 소스와 휠 배포판이 생성됩니다.

  1. PyPI에 게시:
uv publish

참고: 환경 변수나 명령 플래그를 통해 PyPI 자격 증명을 설정해야 합니다.

  • 토큰: --token 또는 UV_PUBLISH_TOKEN
  • 또는 사용자 이름/비밀번호: --username / UV_PUBLISH_USERNAME--password / UV_PUBLISH_PASSWORD

디버깅

MCP 서버는 stdio를 통해 실행되므로 디버깅이 어려울 수 있습니다. 최상의 디버깅 환경을 위해서는 MCP Inspector 사용을 강력히 권장합니다.

다음 명령을 사용하여 npm 통해 MCP Inspector를 시작할 수 있습니다.

npx @modelcontextprotocol/inspector uv --directory C:\Users\YUNYING\Documents\project\python\mcp\playwright-server run playwright-server

Inspector를 실행하면 브라우저에서 접근하여 디버깅을 시작할 수 있는 URL이 표시됩니다.

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

브라우저 자동화 도구를 제공하는 MCP 서버로, 이를 통해 사용자는 Playwright를 통해 웹사이트를 탐색하고, 스크린샷을 찍고, 요소를 클릭하고, 양식을 작성하고, JavaScript를 실행할 수 있습니다.

  1. Components
    1. Resources
    2. Prompts
    3. Tools
  2. Configuration
    1. Quickstart
      1. Install
    2. Development
      1. Building and Publishing
      2. Debugging
    ID: 810q5ib4rv