Skip to main content
Glama
kamkozlowski

dev-browser-mcp

by kamkozlowski

dev-browser-mcp

MCP 서버 for SawyerHood/dev-browser. 에이전트는 샌드박스 처리된 JavaScript와 소수의 구조화된 도구를 사용하여 지속적인 Chromium(또는 이미 실행 중인 Chrome)을 구동합니다.

저장소: github.com/kamkozlowski/dev-browser-mcp

스크립트는 Node.js가 아닌 QuickJS에서 실행됩니다. 명명된 페이지는 dev-browser 데몬을 통해 도구 호출 간에 유지됩니다.

dev-browser (CLI + Playwright Chromium)는 이 패키지의 종속성입니다. npm install은 CLI를 다운로드하고 Chromium을 설치합니다. 전역 dev-browser 설치는 필요하지 않습니다. DEV_BROWSER_SKIP_CHROMIUM=1을 설정하여 Chromium 다운로드를 건너뛸 수 있습니다(예: 기존 Chrome에만 연결할 때). DEV_BROWSER_BIN은 여전히 번들된 CLI를 재정의합니다.

설치

클론 및 빌드:

git clone https://github.com/kamkozlowski/dev-browser-mcp.git
cd dev-browser-mcp
npm install
npm run build

또는 GitHub tarball에서 설치:

npm pack github:kamkozlowski/dev-browser-mcp
tar -xzf dev-browser-mcp-*.tgz
cd package
npm install
npm run build

Related MCP server: Cloudflare Playwright MCP

Cursor 설정

~/.cursor/mcp.json에 추가 (또는 프로젝트 .cursor/mcp.json).

권장: GitHub에서 부트스트랩 (~/.cache에 캐시)

로컬 클론이 필요하지 않습니다. 첫 실행 시 Cursor가 패키지를 다운로드하고, 종속성을 설치하고, 빌드하고, 서버를 시작합니다:

{
  "mcpServers": {
    "dev-browser": {
      "command": "bash",
      "args": [
        "/ABS/PATH/TO/dev-browser-mcp/scripts/bootstrap-mcp.sh"
      ],
      "env": {
        "DEV_BROWSER_HEADLESS": "true"
      }
    }
  }
}

로컬 클론을 유지하지 않는 경우, 이 한 줄 명령어를 사용하세요 (scripts/bootstrap-mcp.sh와 동일한 로직):

{
  "mcpServers": {
    "dev-browser": {
      "command": "bash",
      "args": [
        "-lc",
        "CACHE=\"${XDG_CACHE_HOME:-$HOME/.cache}/dev-browser-mcp\"; LOCK=\"$CACHE/.install.lock\"; PKG=\"$CACHE/package\"; ENTRY=\"$PKG/dist/index.js\"; mkdir -p \"$CACHE\"; install() { cd \"$CACHE\" && rm -rf package dev-browser-mcp-*.tgz && npm pack github:kamkozlowski/dev-browser-mcp >/dev/null && tar -xzf dev-browser-mcp-*.tgz && rm -f dev-browser-mcp-*.tgz && cd package && npm install && npm run build; }; if [ ! -f \"$ENTRY\" ]; then ( flock -n 9 || flock 9; [ -f \"$ENTRY\" ] || install ) 9>\"$LOCK\"; fi; [ -f \"$ENTRY\" ] || { echo \"Install failed; rm -rf $CACHE\" >&2; exit 1; }; cd \"$PKG\" && exec node dist/index.js"
      ],
      "env": {
        "DEV_BROWSER_HEADLESS": "true"
      }
    }
  }
}

서버가 Cannot find module .../dist/index.js 오류로 시작하지 않으면, 손상된 캐시를 제거하고 다시 시도하세요:

rm -rf "${XDG_CACHE_HOME:-$HOME/.cache}/dev-browser-mcp"

Chromium을 실행하는 대신 실행 중인 Chrome에 연결하려면:

{
  "mcpServers": {
    "dev-browser": {
      "command": "bash",
      "args": [
        "-lc",
        "CACHE=\"${XDG_CACHE_HOME:-$HOME/.cache}/dev-browser-mcp\"; LOCK=\"$CACHE/.install.lock\"; PKG=\"$CACHE/package\"; ENTRY=\"$PKG/dist/index.js\"; mkdir -p \"$CACHE\"; install() { cd \"$CACHE\" && rm -rf package dev-browser-mcp-*.tgz && npm pack github:kamkozlowski/dev-browser-mcp >/dev/null && tar -xzf dev-browser-mcp-*.tgz && rm -f dev-browser-mcp-*.tgz && cd package && npm install && npm run build; }; if [ ! -f \"$ENTRY\" ]; then ( flock -n 9 || flock 9; [ -f \"$ENTRY\" ] || install ) 9>\"$LOCK\"; fi; [ -f \"$ENTRY\" ] || { echo \"Install failed; rm -rf $CACHE\" >&2; exit 1; }; cd \"$PKG\" && exec node dist/index.js"
      ],
      "env": {
        "DEV_BROWSER_CONNECT": "auto",
        "DEV_BROWSER_SKIP_CHROMIUM": "true"
      }
    }
  }
}

Chrome에서 chrome://inspect/#remote-debugging에서 원격 디버깅을 활성화하거나, --remote-debugging-port=9222로 실행하세요.

로컬 클론 (간단)

체크아웃에서 npm installnpm run build 후:

{
  "mcpServers": {
    "dev-browser": {
      "command": "node",
      "args": ["/ABS/PATH/TO/dev-browser-mcp/dist/index.js"],
      "env": {
        "DEV_BROWSER_HEADLESS": "true"
      }
    }
  }
}

로컬 클론 (자체 부트스트랩, bash)

dist/가 없으면 첫 실행 시 Cursor가 설치하고 빌드합니다:

{
  "mcpServers": {
    "dev-browser": {
      "command": "bash",
      "args": [
        "-lc",
        "REPO=\"/ABS/PATH/TO/dev-browser-mcp\"; if [ ! -f \"$REPO/dist/index.js\" ]; then cd \"$REPO\" && npm install && npm run build; fi; cd \"$REPO\" && exec node dist/index.js"
      ],
      "env": {
        "DEV_BROWSER_HEADLESS": "true"
      }
    }
  }
}

REPO를 체크아웃 경로로 바꾸세요.

개발 (TypeScript, 빌드 없음)

{
  "mcpServers": {
    "dev-browser": {
      "command": "bash",
      "args": [
        "-lc",
        "REPO=\"/ABS/PATH/TO/dev-browser-mcp\"; cd \"$REPO\" && exec npx --yes tsx src/index.ts"
      ],
      "env": {
        "DEV_BROWSER_HEADLESS": "true"
      }
    }
  }
}

REPO를 체크아웃 경로로 바꾸세요.

도구

도구

목적

dev_browser_run

주 도구. 샌드박스 처리된 Playwright 스크립트를 실행합니다.

dev_browser_list_pages

탭 목록: {id, url, title, name}

dev_browser_page_open

명명된 페이지 가져오기/생성 (또는 targetId로 연결)

dev_browser_close_page

명명된 페이지 닫기

dev_browser_goto

이동

dev_browser_snapshot

AI 접근성 스냅샷 (snapshotForAI)

dev_browser_screenshot

PNG 스크린샷 (이미지로도 반환됨)

dev_browser_click

CSS 선택자 또는 스냅샷 참조로 클릭

dev_browser_fill

입력 필드 채우기

dev_browser_type

문자 단위로 입력

dev_browser_evaluate

페이지에서 eval JavaScript 실행

dev_browser_wait_for_selector

선택자 대기

dev_browser_status

데몬 상태

dev_browser_browsers

관리되는 브라우저 인스턴스

dev_browser_stop

데몬 중지

dev_browser_install

Playwright Chromium 설치

전체 샌드박스 API는 dev-browser://guide를 읽으세요. 여기에는 page.cua (비전) 및 page.domCua (DOM ID)가 포함됩니다.

환경

변수

의미

DEV_BROWSER_BIN

번들된 dev-browser CLI 경로 재정의

DEV_BROWSER_SKIP_CHROMIUM

true로 설정하여 postinstall / 자동 Chromium 설정 건너뛰기

DEV_BROWSER_BROWSER

명명된 데몬 브라우저 인스턴스 (기본값: default)

DEV_BROWSER_HEADLESS

true로 설정하여 창 없이 Chromium 실행

DEV_BROWSER_CONNECT

auto / true로 설정하여 Chrome에 연결하거나 CDP URL

DEV_BROWSER_IGNORE_HTTPS_ERRORS

true로 설정하여 자체 서명 인증서 허용

DEV_BROWSER_TIMEOUT

스크립트 제한 시간(초) (기본값: 30)

DEV_BROWSER_IDLE_TIMEOUT

유휴 상태로 실행된 브라우저 닫기, 예: 5m

호출별 browser, connect, headless, ignoreHttpsErrors, timeoutSeconds는 환경을 재정의합니다.

Playwright MCP와의 차이점

dev-browser는 긴 원자적 MCP 호출 체인이 아닌 결정당 하나의 샌드박스 스크립트를 중심으로 구축되었습니다. 단일 goto/click/fill을 넘어서는 모든 작업에는 dev_browser_run을 사용하세요. 편의 도구는 일반적인 검사/실행 단계가 구조화된 상태로 유지되도록 존재합니다.

benkraus/dev-browser-mcp (Chrome 확장 프로그램 + CDP 릴레이)와 달리, 이 서버는 공식 dev-browser CLI를 QuickJS 샌드박스 및 지속적인 데몬 페이지로 래핑합니다.

개발

npm test
npm run typecheck
npm run build
Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    -
    quality
    C
    maintenance
    Enables AI assistants to control a browser through a set of tools, allowing them to perform web automation tasks like navigation, typing, clicking, and taking screenshots.
  • A
    license
    B
    quality
    F
    maintenance
    Enables AI agents to directly control your real Chrome browser with full context including login sessions, cookies, and open tabs. It provides tools for page scanning, JavaScript execution, CDP control, screenshots, and physical mouse/keyboard input for authentic browser automation.
    20
    239
    MIT

View all related MCP servers

Related MCP Connectors

  • AI-powered browser automation — navigate, click, fill forms, and extract data from any website.

  • Provides cloud browser automation capabilities using Stagehand and Browserbase, enabling LLMs to i…

  • Live browser debugging for AI assistants — DOM, console, network via MCP.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kamkozlowski/dev-browser-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server