Skip to main content
Glama

Agent Browser MCP Server

AI 어시스턴트를 위한 브라우저 자동화 도구를 제공하기 위해 agent-browser를 래핑하는 MCP(Model Context Protocol) 서버입니다. stdio 및 HTTP/SSE 전송을 모두 지원합니다.

기능

다음을 포함한 40개 이상의 브라우저 자동화 도구:

카테고리

도구

탐색

browser_open, browser_navigate, browser_close

상호작용

browser_click, browser_fill, browser_type, browser_press, browser_hover, browser_select, browser_scroll

검사

browser_snapshot, browser_screenshot, browser_read, browser_get, browser_find

실행

browser_eval, browser_batch, browser_wait

상태

browser_cookie, browser_storage, browser_state, browser_session, browser_tab

DevTools

browser_console, browser_trace, browser_network, browser_react, browser_vitals, browser_a11y

고급

browser_frame, browser_stream, browser_dialog, browser_diff, browser_chat, browser_profile

시스템

browser_install, browser_doctor, browser_skills, browser_set

Related MCP server: selenium-mcp

설치

npm install
npm run build

사용법

Stdio 모드(로컬 MCP 클라이언트용)

npm run dev

HTTP/SSE 모드(원격 액세스용)

node server.js

서버는 기본적으로 포트 5888에서 수신 대기합니다.

환경 변수

변수

기본값

설명

PORT

5888

서버 포트

AGENT_BROWSER_SCREENSHOT_DIR

./screenshots

저장된 스크린샷 디렉터리

BASE_URL

/screenshots

스크린샷의 공개 URL 경로

MCP_SCRIPT_PATH

./dist/index.js

컴파일된 MCP 서버 경로

ENABLE_HTTPS

false

Let's Encrypt 인증서로 HTTPS 활성화

CERT_PATH

/etc/letsencrypt/live/test2.infinitrocyber.com

SSL 인증서 경로

Docker

docker build -t agentbrowser-mcp .
docker run -p 5888:5888 agentbrowser-mcp

배포

Render

render.yaml 블루프린트가 포함되어 있습니다. 저장소에서 직접 배포하세요.

PM2

pm2 start ecosystem.config.cjs

API 엔드포인트

메서드

경로

설명

GET

/health

상태 확인

GET

/mcp

SSE 연결(새 세션 생성)

POST

/mcp

JSON-RPC 요청

GET

/

서비스 정보

클라이언트 구성

Claude Desktop

{
  "mcpServers": {
    "agent-browser": {
      "command": "node",
      "args": ["dist/index.js"]
    }
  }
}

원격 HTTP 클라이언트

{
  "mcpServers": {
    "agent-browser": {
      "url": "https://your-domain.com/mcp"
    }
  }
}

라이선스

MIT

Available Tools

39 tools
browser_a11yD

Accessibility audit

NameRequiredDescriptionDefault
urlNoURL to audit
jsonNoJSON output
tagsNoaxe tags filter
sessionNoSession name
selectorNoScope to element
browser_batchC

Execute multiple commands

NameRequiredDescriptionDefault
bailNoStop on first error
commandsYesArray of commands to execute
browser_chatD

Natural language browser control

NameRequiredDescriptionDefault
sessionNoSession name
instructionYesNatural language instruction
browser_clickC

Click element by selector or @ref

NameRequiredDescriptionDefault
sessionNoSession name
selectorYesCSS selector or @ref from snapshot
browser_closeC

Close browser

NameRequiredDescriptionDefault
allNoClose all sessions
sessionNoSession name
browser_consoleC

View/clear console logs and errors

NameRequiredDescriptionDefault
jsonNoJSON output
actionYesConsole action
sessionNoSession name
browser_dialogD

Handle dialogs

NameRequiredDescriptionDefault
textNoPrompt text for accept
actionYesDialog action
sessionNoSession name
browser_diffC

Diff snapshots/screenshots

NameRequiredDescriptionDefault
jsonNoJSON output
typeYesDiff type
targetNoTarget URL
sessionNoSession name
baselineNoBaseline file/URL
selectorNoScope to element
browser_doctorD

Diagnose install

NameRequiredDescriptionDefault
fixNoRun destructive repairs
offlineNoSkip network probes
browser_evalD

Execute JavaScript

NameRequiredDescriptionDefault
scriptYesJavaScript to execute
sessionNoSession name
browser_fillC

Clear and fill input

NameRequiredDescriptionDefault
textYesText to fill
sessionNoSession name
selectorYesCSS selector or @ref
browser_findC

Find elements semantically

NameRequiredDescriptionDefault
nameNoAccessible name filter
typeYesFind method
valueYesValue to find
actionYesAction to perform
sessionNoSession name
browser_frameD

Switch frame

NameRequiredDescriptionDefault
sessionNoSession name
selectorNoFrame selector (omit for main)
browser_getC

Get text/html/value/url/title

NameRequiredDescriptionDefault
sessionNoSession name
propertyYesProperty to get
selectorNoCSS selector (required for text/html/value)
browser_hoverD

Hover element

NameRequiredDescriptionDefault
sessionNoSession name
selectorYesCSS selector or @ref
browser_installC

Install Chrome

NameRequiredDescriptionDefault
depsNoInstall system deps
browser_navigateC

Back/forward/reload

NameRequiredDescriptionDefault
sessionNoSession name
directionYesNavigation direction
browser_networkD

Network requests/routes

NameRequiredDescriptionDefault
urlNoURL pattern for route/unroute
bodyNoMock response body
typeNoFilter by resource type (xhr, fetch, script, etc)
abortNoBlock requests
actionYesNetwork action
filterNoFilter requests by text
methodNoFilter by HTTP method (GET, POST, etc)
statusNoFilter by status (200, 2xx, 4xx, etc)
contentNoHAR content embedding
sessionNoSession name
requestIdNoRequest ID for detail view
browser_openC

Open URL in browser

NameRequiredDescriptionDefault
urlYesURL to navigate to
sessionNoSession name for isolation
browser_pressC

Press key (Enter, Tab, etc)

NameRequiredDescriptionDefault
keyYesKey to press (Enter, Tab, Control+a, etc)
sessionNoSession name
browser_profileD

Chrome profiles

NameRequiredDescriptionDefault
nameNoProfile name
actionYesProfile action
browser_reactD

React devtools

NameRequiredDescriptionDefault
jsonNoJSON output
actionYesReact action
fiberIdNoFiber ID for inspect
sessionNoSession name
browser_readC

Read page content or fetch URL

NameRequiredDescriptionDefault
urlNoURL to fetch (omit for active tab)
filterNoFilter content sections
sessionNoSession name
browser_screenshotD

Take screenshot

NameRequiredDescriptionDefault
fullNoFull page screenshot
pathNoOutput file path
sessionNoSession name
browser_scrollC

Scroll page

NameRequiredDescriptionDefault
pixelsNoPixels to scroll
sessionNoSession name
selectorNoElement to scroll
directionYesScroll direction
browser_selectC

Select dropdown option

NameRequiredDescriptionDefault
valueYesOption value
sessionNoSession name
selectorYesCSS selector or @ref
browser_sessionD

Session management

NameRequiredDescriptionDefault
scopeNoSession scope
actionYesSession action
prefixNoSession prefix
browser_setC

Set viewport/device/geo/media

NameRequiredDescriptionDefault
valueYesSetting value
sessionNoSession name
settingYesSetting to change
browser_skillsD

List/get skills

NameRequiredDescriptionDefault
allNoGet all skills
nameNoSkill name
actionYesSkills action
browser_snapshotC

Get accessibility tree with refs

NameRequiredDescriptionDefault
sessionNoSession name
browser_stateC

Save/load auth state

NameRequiredDescriptionDefault
pathNoFile path for save/load
actionYesState action
sessionNoSession name
browser_storageC

Manage localStorage/sessionStorage

NameRequiredDescriptionDefault
keyNoStorage key
typeYesStorage type
valueNoStorage value
actionYesStorage action
sessionNoSession name
browser_streamD

WebSocket streaming

NameRequiredDescriptionDefault
portNoWebSocket port
actionYesStream action
sessionNoSession name
browser_tabD

Manage tabs

NameRequiredDescriptionDefault
urlNoURL for new tab
labelNoLabel for new tab
actionYesTab action
targetNoTab id or label
sessionNoSession name
browser_traceC

Record trace

NameRequiredDescriptionDefault
pathNoOutput file path
actionYesTrace action
sessionNoSession name
browser_typeC

Type text into input

NameRequiredDescriptionDefault
textYesText to type
sessionNoSession name
selectorYesCSS selector or @ref
browser_vitalsD

Web Vitals metrics

NameRequiredDescriptionDefault
urlNoURL to measure
jsonNoJSON output
sessionNoSession name
browser_waitC

Wait for element/text/URL

NameRequiredDescriptionDefault
urlNoWait for URL pattern
textNoWait for text
sessionNoSession name
timeoutNoTimeout in ms
selectorNoWait for element

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 39 tool updatesv1.0.0
    • First observedbrowser_a11y
    • First observedbrowser_batch
    • First observedbrowser_chat
    • First observedbrowser_click
    • First observedbrowser_close
    • First observedbrowser_console
    • First observedbrowser_cookie
    • First observedbrowser_dialog
    • First observedbrowser_diff
    • First observedbrowser_doctor
    • First observedbrowser_eval
    • First observedbrowser_fill
    • First observedbrowser_find
    • First observedbrowser_frame
    • First observedbrowser_get
    • First observedbrowser_hover
    • First observedbrowser_install
    • First observedbrowser_navigate
    • First observedbrowser_network
    • First observedbrowser_open
    • First observedbrowser_press
    • First observedbrowser_profile
    • First observedbrowser_react
    • First observedbrowser_read
    • First observedbrowser_screenshot
    • First observedbrowser_scroll
    • First observedbrowser_select
    • First observedbrowser_session
    • First observedbrowser_set
    • First observedbrowser_skills
    • First observedbrowser_snapshot
    • First observedbrowser_state
    • First observedbrowser_storage
    • First observedbrowser_stream
    • First observedbrowser_tab
    • First observedbrowser_trace
    • First observedbrowser_type
    • First observedbrowser_vitals
    • First observedbrowser_wait

TDQS

C2.4/5.0

Scored across 39 tools

Disambiguation5/5

Each tool targets a distinct browser operation (e.g., click, fill, hover, scroll) with no overlapping responsibilities. Even similar tools like get and read are differentiated by specific data returning or page fetching, and snapshot is distinct from screenshot.

Naming Consistency5/5

All tools follow a consistent 'browser_<verb>' pattern (e.g., open, click, fill, type, press), with no mixed conventions or vague names. The naming is predictable and clearly conveys each tool's action.

Tool Count2/5

With 39 tools, the count exceeds the typical range and feels heavy for most workflows. While the browser automation domain is broad, many tools are granular (e.g., browser_console, browser_trace), leading to potential selection overhead.

Completeness4/5

The tool set covers a comprehensive range of browser interactions: navigation, element actions, state management, debugging, performance monitoring, and network control. Minor gaps exist (e.g., file upload, form submission explicit handling), but most core workflows are well-supported.

Maintenance

ActivityStale
ResponsivenessNo recent community issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to automate web tasks such as browsing, clicking, typing, and taking screenshots via the Model Context Protocol.
    1
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI-powered browser automation controlled through natural language, integrating Playwright with the Model Context Protocol to perform web interactions like navigation, form filling, and screenshots.
    10
    MIT