browserless-mcp
OfficialBrowserless MCP Server
Browserless.io용 MCP(Model Context Protocol) 서버 — Browserless 스마트 스크래퍼 API를 Claude Desktop, Cursor, VS Code, Windsurf와 같은 LLM 클라이언트에 노출합니다.
빠른 시작
browserless.io에서 API 토큰을 받고(무료 티어 사용 가능), MCP 클라이언트를 호스팅 서버에 연결하세요:
{
"mcpServers": {
"browserless": {
"url": "https://mcp.browserless.io/mcp?token=your-token-here"
}
}
}로컬 설치가 필요 없습니다 — 클라이언트별 스니펫은 구성을 참조하세요.
Related MCP server: Pinchtab MCP Wrapper
도구
도구 | 설명 |
| 단일 웹페이지를 스크레이핑하여 콘텐츠를 markdown 또는 HTML로 반환합니다. JavaScript가 많은 페이지와 봇 방지 조치를 자동으로 처리합니다. 여러 페이지에 걸친 콘텐츠는 |
| Browserless를 사용해 웹을 검색하고 선택적으로 각 결과를 스크레이핑합니다. 지역 타게팅과 시간 필터를 지원하는 웹, 뉴스, 이미지 검색을 제공합니다. |
| 웹사이트의 모든 URL을 발견하고 매핑합니다. 사이트맵과 링크 추출을 통해 스캔합니다. 선택적으로 제목과 설명을 포함한 URL을 반환합니다. 사이트 감사와 콘텐츠 발견에 유용합니다. |
| 웹사이트를 크롤링하여 발견된 모든 페이지를 스크레이핑합니다. 깊이 제어, 경로 필터링, 사이트맵 전략, 구성 가능한 스크레이핑 옵션을 지원합니다. 각 페이지의 스크레이핑된 콘텐츠와 메타데이터를 반환합니다. |
| 모든 URL에 대해 Lighthouse 감사를 실행합니다. 접근성, 모범 사례, 성능, PWA, SEO에 대한 점수와 지표를 반환합니다. 선택적으로 카테고리로 필터링하거나 성능 예산을 지정할 수 있습니다. |
| Browserless 클라우드에서 사용자 정의 Puppeteer JavaScript를 실행합니다. 함수는 |
| Browserless |
| ReAct 루프를 통해 지속적인 브라우저 세션을 구동합니다. 페이지 스냅샷, 계획, 일괄 상호작용(클릭, 입력, 스크롤, evaluate 등) 및 다시 스냅샷을 수행합니다. 스냅샷에서 파생된 ref 기반 선택기를 사용하며, 다중 탭 워크플로, 스크린샷, 캡차 해결, 라이브 URL, 파일 업로드/다운로드를 지원합니다. 캡처된 다운로드는 자동으로 핸들로 표시되며, 바이트가 컨텍스트에 들어가지 않습니다. |
| 복잡한 페이지 메커니즘(shadow DOM, 쿠키 동의, 모달, 캡차, 동적 콘텐츠, 스냅샷 누락, 스크린샷, 탭)을 위한 온디맨드 레시피를 로드합니다. |
| 현재 토큰에 저장된 인증 프로필을 쿠키 및 오리진 개수와 함께 나열합니다. 다른 도구에 |
| 현재 토큰의 계정 정보(플랜, 단위 잔액, 청구 기간, API 키 이름)를 읽습니다. API 토큰 값은 절대 반환하지 않습니다. |
| 요청 및 단위 소비량(성공, 오류, 시간 초과, 대기열, 최대 동시성, 캡차, 프록시 바이트와 단위)을 읽습니다. 선택적으로 특정 API 키로 범위를 제한할 수 있습니다. |
| 계정의 세션(현재 실행 중인 브라우저, 전용 워커의 영구 세션, 기록된 세션 리플레이, 1Password 자격 증명 통합)을 검사합니다. 또한 렌더링에 네트워크가 필요 없는 완전히 독립적인 rrweb 플레이어 페이지로 리플레이를 다운로드합니다( |
| Browserless의 최근 요청 기록(시도한 내용, 실패 여부, 중단 이유, 소요 시간, 비용)을 읽습니다. Browserless 쪽에서 실패한 실행을 진단하는 도구입니다. 사용 가능한 기간은 플랜에 따라 다릅니다. |
스킬
이 서버에는 스킬(Skills) 내장 라이브러리가 포함되어 있습니다. 에이전트가 까다로운 페이지 메커니즘을 처리하기 위해 로드할 수 있는 온디맨드 레시피입니다. 스킬은 트리거가 발생하면(예: 에이전트가 쿠키 배너를 만남) browserless_agent 응답에 자동으로 주입되며, browserless_skill 도구를 통해 수동으로 로드할 수도 있습니다.
스킬 | 출처 | 목적 |
| shadow root를 통한 깊은 선택자와 iframe 타게팅. | |
| 공급업체별 닫기 레시피(OneTrust, Cookiebot, Didomi, TrustArc 등). | |
| 대화상자, 경고 대화상자 및 오버레이 닫기 버튼 휴리스틱을 닫는 방법. | |
|
| |
| async/AJAX/SPA 콘텐츠에 적합한 | |
| 잘리거나 빈 스냅샷과 이미지로 렌더링된 콘텐츠 처리. | |
| 스크린샷과 스냅샷을 각각 언제 사용할지, 범위와 형식 선택. | |
| 다중 탭 워크플로와 |
스킬을 명시적으로 로드하려면:
{
"method": "tools/call",
"params": {
"name": "browserless_skill",
"arguments": { "id": "cookie-consent" },
},
}리지덴셜 프록시 (browserless_agent)
browserless_agent에 최상위 proxy 객체를 전달하여 세션을 리지덴셜 IP로 라우팅하세요. 대상 사이트가 데이터센터 트래픽을 IP로 차단할 때 사용합니다.
{
"method": "tools/call",
"params": {
"name": "browserless_agent",
"arguments": {
"method": "goto",
"params": { "url": "https://example.com" },
"proxy": {
"proxy": "residential",
"proxyCountry": "us",
"proxySticky": true,
},
},
},
}필드 | 참고 |
|
|
| ISO-2 국가 코드( |
| 공백을 밑줄로 바꾼 미국 주 이름( |
| 도시 대상. 유료/엔터프라이즈 플랜 전용 — 자격이 없는 토큰은 401을 받습니다. |
| 기본 WebSocket이 열려 있는 동안 안정적인 IP를 유지합니다. 재연결(유휴 연결 끊김, 네트워크 일시 장애, 브라우저 충돌) 시 새 sticky id와 새 IP가 할당됩니다. |
|
|
| 명명된 프리셋(예: |
| 자체 업스트림 사용(byo), 예: |
참고:
proxyCountry/proxyState/proxyCity/proxySticky/proxyLocaleMatch/proxyPreset을 사용하려면proxy: "residential"또는externalProxyServer가 설정되어야 합니다. MCP는 유효성 검사 시 이 조합을 거부합니다. 설정하지 않으면 API가 자동으로 무시합니다.
proxy 객체는 세션 생성 시 한 번만 읽힙니다. 이를 변경하려면 close를 호출하고 새 세션을 시작하세요 — 에이전트 클라이언트는 프록시 지문(proxy fingerprint)을 기준으로 세션을 키잉하므로, 다른 config를 전달하면 새 WebSocket에 연결됩니다.
구성
서버는 https://mcp.browserless.io/mcp에서 호스팅됩니다. 헤더(권장) 또는 ?token= 쿼리 매개변수로 인증하세요.
AI 에이전트를 통해 설치하시나요? 에이전트가 읽을 수 있는 설정 지침은 install.md를 참조하세요.
헤더 사용 (헤더를 지원하는 클라이언트에 권장):
{
"mcpServers": {
"browserless": {
"url": "https://mcp.browserless.io/mcp",
"headers": {
"Authorization": "Bearer your-token-here"
}
}
}
}URL 쿼리 매개변수 사용 (URL만 허용하는 Claude.ai 사용자 지정 커넥터와 같은 클라이언트용):
https://mcp.browserless.io/mcp?token=your-token-here특정 Browserless 리전 엔드포인트에 연결하려면 x-browserless-api-url 헤더 또는 browserlessUrl 쿼리 매개변수를 추가하세요:
{
"mcpServers": {
"browserless": {
"url": "https://mcp.browserless.io/mcp",
"headers": {
"Authorization": "Bearer your-token-here",
"x-browserless-api-url": "https://production-lon.browserless.io"
}
}
}
}https://mcp.browserless.io/mcp?token=your-token-here&browserlessUrl=https://production-lon.browserless.io헤더와 쿼리 매개변수가 모두 있는 경우 헤더가 우선합니다.
Claude Desktop
claude_desktop_config.json에 추가하세요:
{
"mcpServers": {
"browserless": {
"url": "https://mcp.browserless.io/mcp?token=your-token-here"
}
}
}Cursor
Cursor MCP 설정에 추가하세요:
{
"mcpServers": {
"browserless": {
"url": "https://mcp.browserless.io/mcp?token=your-token-here"
}
}
}VS Code
VS Code 설정(settings.json)에 추가하세요:
{
"mcp": {
"servers": {
"browserless": {
"url": "https://mcp.browserless.io/mcp",
"headers": {
"Authorization": "Bearer your-token-here"
}
}
}
}
}Windsurf
Windsurf MCP 구성에 추가하세요:
{
"mcpServers": {
"browserless": {
"url": "https://mcp.browserless.io/mcp?token=your-token-here"
}
}
}자체 호스팅
서버는 로컬에서도 실행할 수 있습니다 — 폐쇄망(air-gapped) 배포 또는 자체 호스팅 Browserless 인스턴스를 가리킬 때 유용합니다. 이 저장소를 클론하고 Docker 이미지를 빌드하세요:
docker build -f docker/Dockerfile -t browserless-mcp .
docker run \
-e BROWSERLESS_TOKEN=your-token \
-e BROWSERLESS_API_URL=https://your-browserless-instance.example.com \
-p 8080:8080 \
browserless-mcp그런 다음 위와 동일한 헤더/쿼리 매개변수 인증을 사용하여 MCP 클라이언트를 http://localhost:8080/mcp로 지정하세요.
자체 호스팅 환경 변수
변수 | 필수 | 기본값 | 설명 |
| 예 | — | 사용자의 Browserless API 토큰 |
| 아니요 |
| API 엔드포인트(자체 호스팅 Browserless용) |
| 아니요 |
| 계정 API 호스트 — |
| 아니요 |
| 세션 리플레이 아티팩트를 제공하는 오리진입니다. 리플레이 경로는 이 오리진에 대해 검증됩니다. |
| 아니요 |
| 전송 유형: |
| 아니요 |
| HTTP 서버 포트( |
| 아니요 |
| 요청 타임아웃(밀리초) |
| 아니요 |
| 실패한 요청의 최대 재시도 횟수 |
| 아니요 |
| 캐시 TTL(밀리초, 0이면 비활성화) |
| 아니요 | — | Amplitude 프로젝트 API 키. MCP 사용 분석을 전송합니다 — SDK 수명 주기 이벤트와 자체 도구/스킬 이벤트를 포함합니다. |
| 아니요 | 설정 안 됨(전체 표면) | 축소된 디렉터리 준수 표면을 제공합니다. 실패 시 잠금(fails closed): |
MCP 리소스
Resource URI | 설명 |
| 스마트 스크레이퍼 API 문서 |
| 실시간 서비스 상태 |
MCP 프롬프트
Prompt | 설명 |
| 웹페이지를 스크레이핑하고 콘텐츠를 요약합니다 |
| 웹페이지에서 특정 정보를 추출합니다 |
개발
npm install
npm run build
npm test
npm run coverage테스트
테스트 스위트는 Mocha를 Chai 및 Sinon과 함께 사용합니다. 스펙은 test/(test/lib/, test/tools/, test/prompts/, test/resources/, test/integration/)에 코드와 함께 있으며 build/의 컴파일된 출력에 대해 실행됩니다.
npm test— TypeScript를 컴파일하고build/test/아래의 모든*.spec.js를 실행합니다. 외부 서비스나BROWSERLESS_TOKEN은 필요하지 않습니다. API 클라이언트는 스텁 처리됩니다.npm run coverage—package.json에 구성된 임계값(라인 ≥ 80%, 브랜치 ≥ 70%, 함수 ≥ 80%)으로 c8 기반으로 스위트를 실행합니다.
테스트는 Node 24의 Test workflow를 통해 모든 풀 리퀘스트에 대해 자동으로 실행됩니다. PR은 병합되기 전에 스위트를 계속 통과 상태로 유지해야 합니다.
API 토큰
browserless.io에서 API 토큰을 받으세요. 이 토큰은 Browserless API에 대한 모든 요청을 인증합니다.
라이선스
SSPL-1.0
Maintenance
Related MCP Servers
- AlicenseAqualityDmaintenanceA server that provides browser automation capabilities using Playwright, enabling LLMs to interact with web pages through structured accessibility snapshots without requiring screenshots or vision models.224,588,7131Apache 2.0
- FlicenseNot gradedqualityCmaintenanceMCP server that exposes the Pinchtab browser API for token-efficient web scraping, change detection, and automated testing workflows.15
- AlicenseAqualityBmaintenanceMCP server for browser automation with anti-detection. Scout pages, find elements, interact with websites, and monitor network traffic from any AI client that supports the Model Context Protocol.211MIT
- AlicenseNot gradedqualityAmaintenanceRemote MCP server for web scraping with anti-bot evasion. Provides stealth HTTP fetching, headless browser with Cloudflare bypass, CSS selectors, YouTube transcripts, and Markdown conversion.MIT
Related MCP Connectors
Zenrows MCP server — Fetch, Extract, Batch, and Browser Sessions for AI coding assistants
Official Octoparse MCP server for template discovery, cloud tasks, and structured data export.
Hosted real Google Chrome MCP with per-user persistent state. Navigate, click, type, screenshot.
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/browserless/browserless-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server