agent-browser
Agent Browser MCP Server
AI 어시스턴트를 위한 브라우저 자동화 도구를 제공하기 위해 agent-browser를 래핑하는 MCP(Model Context Protocol) 서버입니다. stdio 및 HTTP/SSE 전송을 모두 지원합니다.
기능
다음을 포함한 40개 이상의 브라우저 자동화 도구:
카테고리 | 도구 |
탐색 |
|
상호작용 |
|
검사 |
|
실행 |
|
상태 |
|
DevTools |
|
고급 |
|
시스템 |
|
Related MCP server: selenium-mcp
설치
npm install
npm run build사용법
Stdio 모드(로컬 MCP 클라이언트용)
npm run devHTTP/SSE 모드(원격 액세스용)
node server.js서버는 기본적으로 포트 5888에서 수신 대기합니다.
환경 변수
변수 | 기본값 | 설명 |
|
| 서버 포트 |
|
| 저장된 스크린샷 디렉터리 |
|
| 스크린샷의 공개 URL 경로 |
|
| 컴파일된 MCP 서버 경로 |
|
| Let's Encrypt 인증서로 HTTPS 활성화 |
|
| SSL 인증서 경로 |
Docker
docker build -t agentbrowser-mcp .
docker run -p 5888:5888 agentbrowser-mcp배포
Render
render.yaml 블루프린트가 포함되어 있습니다. 저장소에서 직접 배포하세요.
PM2
pm2 start ecosystem.config.cjsAPI 엔드포인트
메서드 | 경로 | 설명 |
GET |
| 상태 확인 |
GET |
| SSE 연결(새 세션 생성) |
POST |
| 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 toolsbrowser_a11yD
Accessibility audit
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | URL to audit | |
| json | No | JSON output | |
| tags | No | axe tags filter | |
| session | No | Session name | |
| selector | No | Scope to element |
browser_batchC
Execute multiple commands
| Name | Required | Description | Default |
|---|---|---|---|
| bail | No | Stop on first error | |
| commands | Yes | Array of commands to execute |
browser_chatD
Natural language browser control
| Name | Required | Description | Default |
|---|---|---|---|
| session | No | Session name | |
| instruction | Yes | Natural language instruction |
browser_clickC
Click element by selector or @ref
| Name | Required | Description | Default |
|---|---|---|---|
| session | No | Session name | |
| selector | Yes | CSS selector or @ref from snapshot |
browser_closeC
Close browser
| Name | Required | Description | Default |
|---|---|---|---|
| all | No | Close all sessions | |
| session | No | Session name |
browser_consoleC
View/clear console logs and errors
| Name | Required | Description | Default |
|---|---|---|---|
| json | No | JSON output | |
| action | Yes | Console action | |
| session | No | Session name |
browser_cookieD
Manage cookies
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Cookie name | |
| value | No | Cookie value | |
| action | Yes | Cookie action | |
| session | No | Session name |
browser_dialogD
Handle dialogs
| Name | Required | Description | Default |
|---|---|---|---|
| text | No | Prompt text for accept | |
| action | Yes | Dialog action | |
| session | No | Session name |
browser_diffC
Diff snapshots/screenshots
| Name | Required | Description | Default |
|---|---|---|---|
| json | No | JSON output | |
| type | Yes | Diff type | |
| target | No | Target URL | |
| session | No | Session name | |
| baseline | No | Baseline file/URL | |
| selector | No | Scope to element |
browser_doctorD
Diagnose install
| Name | Required | Description | Default |
|---|---|---|---|
| fix | No | Run destructive repairs | |
| offline | No | Skip network probes |
browser_evalD
Execute JavaScript
| Name | Required | Description | Default |
|---|---|---|---|
| script | Yes | JavaScript to execute | |
| session | No | Session name |
browser_fillC
Clear and fill input
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | Text to fill | |
| session | No | Session name | |
| selector | Yes | CSS selector or @ref |
browser_findC
Find elements semantically
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Accessible name filter | |
| type | Yes | Find method | |
| value | Yes | Value to find | |
| action | Yes | Action to perform | |
| session | No | Session name |
browser_frameD
Switch frame
| Name | Required | Description | Default |
|---|---|---|---|
| session | No | Session name | |
| selector | No | Frame selector (omit for main) |
browser_getC
Get text/html/value/url/title
| Name | Required | Description | Default |
|---|---|---|---|
| session | No | Session name | |
| property | Yes | Property to get | |
| selector | No | CSS selector (required for text/html/value) |
browser_hoverD
Hover element
| Name | Required | Description | Default |
|---|---|---|---|
| session | No | Session name | |
| selector | Yes | CSS selector or @ref |
browser_installC
Install Chrome
| Name | Required | Description | Default |
|---|---|---|---|
| deps | No | Install system deps |
browser_networkD
Network requests/routes
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | URL pattern for route/unroute | |
| body | No | Mock response body | |
| type | No | Filter by resource type (xhr, fetch, script, etc) | |
| abort | No | Block requests | |
| action | Yes | Network action | |
| filter | No | Filter requests by text | |
| method | No | Filter by HTTP method (GET, POST, etc) | |
| status | No | Filter by status (200, 2xx, 4xx, etc) | |
| content | No | HAR content embedding | |
| session | No | Session name | |
| requestId | No | Request ID for detail view |
browser_openC
Open URL in browser
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | URL to navigate to | |
| session | No | Session name for isolation |
browser_pressC
Press key (Enter, Tab, etc)
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Key to press (Enter, Tab, Control+a, etc) | |
| session | No | Session name |
browser_profileD
Chrome profiles
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Profile name | |
| action | Yes | Profile action |
browser_reactD
React devtools
| Name | Required | Description | Default |
|---|---|---|---|
| json | No | JSON output | |
| action | Yes | React action | |
| fiberId | No | Fiber ID for inspect | |
| session | No | Session name |
browser_readC
Read page content or fetch URL
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | URL to fetch (omit for active tab) | |
| filter | No | Filter content sections | |
| session | No | Session name |
browser_screenshotD
Take screenshot
| Name | Required | Description | Default |
|---|---|---|---|
| full | No | Full page screenshot | |
| path | No | Output file path | |
| session | No | Session name |
browser_scrollC
Scroll page
| Name | Required | Description | Default |
|---|---|---|---|
| pixels | No | Pixels to scroll | |
| session | No | Session name | |
| selector | No | Element to scroll | |
| direction | Yes | Scroll direction |
browser_selectC
Select dropdown option
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | Option value | |
| session | No | Session name | |
| selector | Yes | CSS selector or @ref |
browser_sessionD
Session management
| Name | Required | Description | Default |
|---|---|---|---|
| scope | No | Session scope | |
| action | Yes | Session action | |
| prefix | No | Session prefix |
browser_setC
Set viewport/device/geo/media
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | Setting value | |
| session | No | Session name | |
| setting | Yes | Setting to change |
browser_skillsD
List/get skills
| Name | Required | Description | Default |
|---|---|---|---|
| all | No | Get all skills | |
| name | No | Skill name | |
| action | Yes | Skills action |
browser_snapshotC
Get accessibility tree with refs
| Name | Required | Description | Default |
|---|---|---|---|
| session | No | Session name |
browser_stateC
Save/load auth state
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | File path for save/load | |
| action | Yes | State action | |
| session | No | Session name |
browser_storageC
Manage localStorage/sessionStorage
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | Storage key | |
| type | Yes | Storage type | |
| value | No | Storage value | |
| action | Yes | Storage action | |
| session | No | Session name |
browser_streamD
WebSocket streaming
| Name | Required | Description | Default |
|---|---|---|---|
| port | No | WebSocket port | |
| action | Yes | Stream action | |
| session | No | Session name |
browser_tabD
Manage tabs
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | URL for new tab | |
| label | No | Label for new tab | |
| action | Yes | Tab action | |
| target | No | Tab id or label | |
| session | No | Session name |
browser_traceC
Record trace
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | Output file path | |
| action | Yes | Trace action | |
| session | No | Session name |
browser_typeC
Type text into input
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | Text to type | |
| session | No | Session name | |
| selector | Yes | CSS selector or @ref |
browser_vitalsD
Web Vitals metrics
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | URL to measure | |
| json | No | JSON output | |
| session | No | Session name |
browser_waitC
Wait for element/text/URL
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | Wait for URL pattern | |
| text | No | Wait for text | |
| session | No | Session name | |
| timeout | No | Timeout in ms | |
| selector | No | Wait for element |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
39 tool updates
v1.0.0- First observed
browser_a11y - First observed
browser_batch - First observed
browser_chat - First observed
browser_click - First observed
browser_close - First observed
browser_console - First observed
browser_cookie - First observed
browser_dialog - First observed
browser_diff - First observed
browser_doctor - First observed
browser_eval - First observed
browser_fill - First observed
browser_find - First observed
browser_frame - First observed
browser_get - First observed
browser_hover - First observed
browser_install - First observed
browser_navigate - First observed
browser_network - First observed
browser_open - First observed
browser_press - First observed
browser_profile - First observed
browser_react - First observed
browser_read - First observed
browser_screenshot - First observed
browser_scroll - First observed
browser_select - First observed
browser_session - First observed
browser_set - First observed
browser_skills - First observed
browser_snapshot - First observed
browser_state - First observed
browser_storage - First observed
browser_stream - First observed
browser_tab - First observed
browser_trace - First observed
browser_type - First observed
browser_vitals - First observed
browser_wait
TDQS
Scored across 39 tools
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.
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.
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.
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
Related MCP Connectors
Control a real browser from AI agents: navigate, click, type, screenshot, read the page.
Web scraping, browser automation, screenshots and AI data extraction for AI agents via MCP.
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…
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to automate web tasks such as browsing, clicking, typing, and taking screenshots via the Model Context Protocol.1MIT
- AlicenseAqualityBmaintenanceEnables browser automation through the Model Context Protocol, allowing AI agents to control Chrome, Firefox, or Edge for tasks like navigation, clicking, typing, and screenshots.4192 npmMIT
- AlicenseAqualityDmaintenanceEnables 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.10MIT

Browseagent MCPofficial
AlicenseAqualityDmaintenanceEnables AI agents to control web browsers through the Model Context Protocol, supporting navigation, clicking, typing, and screenshots.125 npm1MIT