Browser MCP Server
Browser MCP Server
봇 차단(anti-bot)에 대응하는 실제 브라우저를 AI 에이전트에 제공하는 MCP(Model Context Protocol) 서버입니다. Zyte API를 통해 페이지 이동, 클릭/입력/스크롤, 스크린샷 캡처, 구조화된 데이터 추출을 수행할 수 있으며, 프록시/IP 자동 순환과 차단 방지(ban avoidance)를 제공합니다.
NestJS와 @nestjs-mcp/server로 구축되었으며, Zyte의 /extract 엔드포인트와 HTTP로 직접 통신합니다. 전송은 streamable HTTP만 지원하며, 상태를 저장하지 않는(stateless) 방식으로 단일 /mcp 엔드포인트에서 제공됩니다.
설정
.env.example을.env에 복사한 다음 내용을 입력합니다.변수
필수 여부
설명
ZYTE_API_KEY예
본인의 Zyte API 키
ZYTE_API_BASE_URL아니오
Zyte API 기본 URL을 재정의합니다 (기본값
https://api.zyte.com/v1)PORT아니오
HTTP 포트 (기본값
3000)BROWSER_TIMEOUT_MS아니오
Zyte 호출 건별 타임아웃 (기본값
30000)BROWSER_MAX_RETRIES아니오
rate-limit(429/503) 및 임시 차단(520) 응답에 대한 재시도 횟수이며, 지수 백오프를 적용합니다 (기본값
2)의존성을 설치하고 서버를 시작합니다.
pnpm install pnpm run start:devMCP 엔드포인트는
http://localhost:3000/mcp에서 제공됩니다.
Related MCP server: Stealth Browser MCP
도구
도구 | 반환값 |
| URL을 열고, 선택적으로 액션(click/type/select/scroll/wait)을 실행한 다음, |
| 페이지의 스크린샷입니다. 선택적으로 액션 실행 후에 촬영합니다. |
| 사용자가 제공한 JSON Schema와 일치하게 AI가 추출한 구조화된 JSON입니다. |
| Zyte의 Search API를 통한 구조화된 웹 검색 결과(title/url/snippet)입니다. 페이지를 찾기 위해 사용하고, 이어서 |
browser_browse, browser_screenshot, browser_extract는 선택적으로 sessionId(이전 호출에서 반환된 값)를 받아 여러 도구 호출에 걸쳐 동일한 IP 주소와 cookie jar를 재사용할 수 있습니다. 로그인 상태를 유지하거나 다단계 작업에서 IP를 일관되게 유지하는 데 유용합니다. 단, Zyte의 세션 문서에 따르면 이 기능은 호출 사이에 실제 브라우저/탭 상태(페이지 내 폼 입력, 스크롤 위치, 열려 있는 모달 등)를 유지하지 않습니다. 각 호출은 동일한 네트워크 식별자와 쿠키로 새 페이지를 로드합니다.
actions는 결과를 캡처하기 전에 실행되는 일련의 단계로, click, type, select, hover, keyPress, scrollBottom, scrollTo, waitForSelector, waitForTimeout, waitForNavigation, goto, evaluate를 지원합니다. 요소를 대상으로 하는 액션은 selector: { type: "css" | "xpath", value: string } 형태의 선택자를 받습니다.
browser_search는 Zyte의 별도 /v1/search 엔드포인트(/v1/extract 아님)에 요청을 보내며, domain(지원되는 검색 엔진, 예: "google.com"), query, 그리고 선택적으로 maxResults(10-100)/geolocation/locale를 받습니다.
rate-limit(429/503) 및 임시 차단(520)에 해당하는 Zyte 응답은 Zyte의 오류 처리 가이드에 따라 지수 백오프(exponential backoff)로 BROWSER_MAX_RETRIES회까지 자동으로 재시도됩니다. 그 외의 오류 응답(잘못된 요청, 영구 차단, 계정 정지)은 즉시 표시되며, 가능한 경우 Zyte 오류의 type이 메시지에 포함됩니다.
클라이언트 연결하기
실행 중인 인스턴스를 가리키는 원격 MCP 클라이언트 구성 예시(예: Claude Desktop / Claude Code):
{
"mcpServers": {
"browser": {
"url": "http://localhost:3000/mcp"
}
}
}테스트
pnpm test # unit tests (service + resolver, global fetch mocked)
pnpm run lint # eslint
pnpm run build # type-check + compile단위 테스트는 Zyte를 호출하는 데 사용되는 전역 fetch를 모킹합니다. 라이브 API에 대한 엔드투엔드 검증을 위해 실제 ZYTE_API_KEY로 서버를 실행하고, pnpm dlx @modelcontextprotocol/inspector http://localhost:3000/mcp 또는 curl을 사용하여 initialize → tools/list → tools/call을 실행하세요.
This server cannot be installed
Maintenance
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
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to interact with web browsers using natural language, featuring automated browsing, form filling, vision-based element detection, and structured JSON responses for systematic browser control.61MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to perform undetectable browser automation that bypasses Cloudflare, antibots, and social media blocks. Provides 105 tools for element extraction, network debugging, and real-world web scraping with a 98.7% success rate on protected sites.1,589MIT
- AlicenseAqualityBmaintenanceEnables AI agents to scrape any website by providing tools for JavaScript rendering, antibot bypass, and automatic captcha solving. It supports synchronous, asynchronous, and batch scraping operations with built-in proxy rotation.5207MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to fully control a browser for web automation, including navigation, clicking, typing, scrolling, screenshots, and DOM inspection, with session persistence and anti-bot bypass.21MIT
Related MCP Connectors
AI-powered browser automation — navigate, click, fill forms, and extract data from any website.
Reliable web access for AI agents: smart HTTP, rotating proxies, and full-browser rendering.
Enable language models to perform advanced AI-powered web scraping with enterprise-grade reliabili…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/feedmepos/browser-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server