agent-browser
🌐 Agent Browser API
Un navegador headless universal y totalmente funcional para agentes de IA. Dale a cualquier agente — Zapier Agents, Custom GPTs, Claude, Cursor, LangChain, CrewAI, n8n, Make, o tu propio código — un navegador Chromium real: renderizado de JavaScript, búsqueda web, clics, escritura, relleno de formularios, menús desplegables, capturas de pantalla, extracción de tablas y datos, y generación de PDF.
🇮🇳 Hindi TL;DR: Yeh ek real browser hai jo koi bhi AI agent use kar sakta hai — 3 tarike: simple REST API, OpenAPI import (Custom GPT), ya native MCP (Claude/Cursor/ChatGPT). Deploy karo, API key set karo, ho gaya. ✅ 26/26 tests passing.
🔌 Funciona con CUALQUIER agente — tres formas de conectarse
Modo | Para | Cómo |
REST API | Agentes de Zapier, n8n, Make, LangChain, CrewAI, cualquier código |
|
OpenAPI | Custom GPTs de OpenAI (Acciones), herramientas de API | Importa |
MCP 🆕 | Claude Desktop/Code, Cursor, Windsurf, ChatGPT, VS Code, n8n MCP | Apunta tu cliente MCP a |
Guías completas de copiar y pegar por plataforma: INTEGRATIONS.md · Específicos de Zapier: ZAPIER_SETUP.md
Related MCP server: WebControl
✨ Características
Capacidad | Endpoint | Qué hace |
📖 Navegar |
| Renderiza cualquier página (incluido JS) → Markdown limpio + título + enlaces + metadatos. Listo para LLM. |
🔍 Buscar |
| Búsqueda web vía Brave/Bing/DDG con respaldo automático. No se necesita clave de API de búsqueda. |
📸 Captura de pantalla |
| PNG de la página, página completa o un elemento único; viewport personalizado; binario o base64. |
🧲 Extraer |
| Datos estructurados vía selectores CSS → JSON. |
📊 Tablas |
| Todas las tablas de datos de una página → JSON (cabeceras + filas), se omiten tablas de diseño/ocultas. |
🖱️ Elementos |
| Enlaces/botones/entradas visibles con selectores CSS listos para usar — los agentes pueden ver qué es clicable. |
| Renderiza cualquier página a PDF (vertical/horizontal). | |
🧭 Sesiones |
| Flujos multi-paso con estado: |
🤝 MCP |
| Todo lo anterior como herramientas MCP nativas (las capturas de pantalla se devuelven como imágenes reales). |
Además: autenticación por clave de API, CORS, limitación de tasa, protección SSRF, caducidad automática de sesiones + expulsión LRU, conceptos básicos de stealth, esperas de asentamiento SPA, truncamiento de salida para seguridad del contexto LLM, hints de error útiles, /llms.txt y una especificación OpenAPI completa.
🚀 Inicio rápido
Despliegue gratuito (Render) — recomendado
Haz fork/sube este repositorio a GitHub.
Ve a render.com → Nuevo → Blueprint → elige este repositorio (
render.yamlse detecta automáticamente).Copia la
API_KEYgenerada desde la pestaña Entorno del servicio.En vivo en
https://your-service.onrender.com🎉
También funciona en Railway, Fly.io o cualquier host Docker.
Docker
docker build -t agent-browser .
docker run -p 8080:8080 -e API_KEY=your-secret-key agent-browserEjecutar localmente
npm install # installs deps + Chromium
API_KEY=your-secret-key npm start
# → agent-browser v2.0.0 listening on :8080🧪 Pruébalo
BASE=http://localhost:8080; KEY=your-secret-key
# Read a JS-heavy page as markdown
curl -X POST $BASE/v1/browse -H "X-API-Key: $KEY" -H "Content-Type: application/json" \
-d '{"url":"https://news.ycombinator.com"}'
# Search the web
curl -X POST $BASE/v1/search -H "X-API-Key: $KEY" -H "Content-Type: application/json" \
-d '{"query":"best CRM for startups","limit":5}'
# Extract every table on a page as JSON
curl -X POST $BASE/v1/tables -H "X-API-Key: $KEY" -H "Content-Type: application/json" \
-d '{"url":"https://www.scrapethissite.com/pages/forms/"}'
# Multi-step: search Wikipedia interactively
SID=$(curl -s -X POST $BASE/v1/sessions -H "X-API-Key: $KEY" -H "Content-Type: application/json" \
-d '{"url":"https://en.wikipedia.org"}' | jq -r .sessionId)
curl -X POST $BASE/v1/sessions/$SID/fill -H "X-API-Key: $KEY" -H "Content-Type: application/json" \
-d '{"fields":{"input[name=search]":"Artificial intelligence"}}'
curl -X POST $BASE/v1/sessions/$SID/press -H "X-API-Key: $KEY" -H "Content-Type: application/json" \
-d '{"key":"Enter"}'
curl $BASE/v1/sessions/$SID/content -H "X-API-Key: $KEY"
curl -X DELETE $BASE/v1/sessions/$SID -H "X-API-Key: $KEY"Ejecuta la suite completa de pruebas de humo: npm test — 26 comprobaciones que cubren cada endpoint y un viaje de ida y vuelta real con un cliente MCP.
⚙️ Configuración (variables de entorno)
Variable | Por defecto | Descripción |
| (vacío = autenticación desactivada, ¡solo desarrollo!) | Clave requerida para todos los endpoints no públicos. |
|
| Puerto HTTP. |
|
| Máximo de sesiones con estado concurrentes (expulsión LRU). |
|
| Caducidad de sesión inactiva (10 min). |
|
| Tiempo de espera de navegación. |
|
| Solicitudes/min por clave de API o IP ( |
|
| Origen CORS permitido. |
|
| Permitir navegación a direcciones privadas/internas (protección SSRF desactivada). |
🔒 Notas de seguridad
Siempre establece
API_KEYen producción (el blueprint de Render genera una automáticamente).Solo se permiten URLs
http/https; las direcciones localhost/privadas/metadatos están bloqueadas por defecto.Ejecuta detrás de HTTPS (Render/Railway te dan TLS gratis).
evaluateejecuta JS arbitrario dentro de la página sandbox — mantén tu clave de API en secreto.Los endpoints públicos (sin clave) son información de solo lectura:
/,/health,/openapi.yaml,/llms.txt,/v1/tools.
📁 Estructura del proyecto
src/server.js # Express API: auth, CORS, rate limit, routes
src/actions.js # Shared high-level actions (used by REST + MCP)
src/browser.js # Chromium lifecycle, sessions, TTL/LRU, SSRF guard
src/extract.js # HTML → markdown, CSS extraction, tables, elements
src/search.js # Multi-engine web search with fallback
src/mcp.js # MCP server (Streamable HTTP, 22 tools)
src/tools-manifest.js # GET /v1/tools (OpenAI function format)
openapi.yaml # Full API specification
test/run-tests.sh # 26-check smoke-test suite (incl. MCP round-trip)
Dockerfile # Production image (Playwright base, version-pinned)
render.yaml # One-click Render deployLicencia
MIT
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
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to control the Google Chrome browser through a Node.js WebSocket bridge and a dedicated browser extension. It provides tools for capturing screenshots, executing JavaScript, managing tabs, and extracting page content via the MCP protocol.2
- FlicenseNot gradedqualityCmaintenanceHeadless browser automation for LLM agents via REST API or MCP tools. Enables navigating pages, reading structured content, clicking elements, filling forms, and executing JavaScript.
- AlicenseNot gradedqualityDmaintenanceProvides a real browser that bypasses bot detection (Cloudflare, Turnstile) for AI agents, enabling navigation, clicking, typing, screenshots, and data collection through MCP tools.71MIT
- AlicenseNot gradedqualityBmaintenanceHosted Chrome as an MCP skill. Enables any MCP-compatible agent to drive a real Chromium browser for tasks like navigation, clicking, typing, and taking screenshots.20MIT
Related MCP Connectors
Stealth web browser for agents: search, fetch, click and type through persistent sessions over MCP.
Hosted real Google Chrome MCP with per-user persistent state. Navigate, click, type, screenshot.
Screenshot, diff, audit and sitemap-capture any web page — 5 MCP tools for AI agents.
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/gopendrasharma89-tech/agent-browser'
If you have feedback or need assistance with the MCP directory API, please join our Discord server