Cómo conectar Cursor a un navegador real vía CDP — portada ilustrada del artículo de Clawbrowser

Cómo conectar Cursor a un navegador real vía CDP

Clawbrowser Teamagentes-aicdpcursortutorial

El browser integrado de Cursor sirve para mirar tu app local, hacer clicks simples y sacar screenshots. En cuanto el agente necesita mantener login, pasar por Cloudflare o trabajar con una web que valida identidad de navegador, ese webview aislado se queda corto. No tiene cookies duraderas, no gestiona fingerprint y todo sale por la IP por defecto de tu máquina.

TL;DR: conecta Cursor a Clawbrowser vía CDP (Chrome DevTools Protocol). El agente usa un Chromium real con perfiles persistentes, fingerprints gestionados y proxy routing. Instalación en pocos comandos, conexión por endpoint local y menos bloqueos en sitios reales.


Por qué el navegador integrado de Cursor no alcanza

Cursor incluye una herramienta de browser basada en un webview sandboxed expuesto como MCP server. Para localhost va bien: navegar, clickear, escribir, hacer scroll, capturar pantalla, leer consola y mirar tráfico de red.

Fuera de tu entorno de desarrollo aparecen los límites:

Limitación Qué ocurre
Webview aislado No es una instancia Chromium real. Los sitios detectan APIs ausentes y propiedades de ventana no estándar.
Sin persistencia de sesión Cookies y localStorage quedan atados al workspace y se pierden entre sesiones.
Sin gestión de fingerprint El webview expone el mismo canvas hash, WebGL renderer y propiedades de navigator en cada ejecución.
Sin proxy support Todo el tráfico sale por la IP por defecto. Las IPs de datacenter se marcan rápido.
Problemas de fiabilidad En Cursor 2.3.18+ hubo regresiones con clicks, scroll y búsqueda de elementos, con reportes abiertos en el foro.

No son casos raros. Si tu agente toca una web con Cloudflare, DataDome, PerimeterX o cualquier sistema anti-bot comercial, el browser integrado puede caer en el primer request.


Qué te da CDP

CDP (Chrome DevTools Protocol) es la interfaz estándar para controlar navegadores Chromium por código. Playwright usa connectOverCDP, Puppeteer usa puppeteer.connect y cualquier cliente CDP abre un WebSocket contra el puerto de debugging.

Al conectar Cursor a un navegador externo vía CDP consigues:

  • Un browser real con motor de render completo, extensiones y APIs estándar
  • Sesiones persistentes con cookies y estado de login que sobreviven a varias ejecuciones
  • Control completo de página usando el mismo protocolo interno de Playwright y Puppeteer
  • Anti-detection cuando el navegador gestiona fingerprint y proxy como una sola identidad

La conexión es una URL WebSocket estándar. Cualquier herramienta que hable CDP puede adjuntarse a un browser que exponga ese endpoint. Clawbrowser lo expone en cada perfil.


Conectar Cursor a Clawbrowser: paso a paso

Requisitos previos

  • macOS (Apple Silicon), Linux (x64 o arm64) o Windows
  • Cursor instalado
  • Una API key de Clawbrowser desde app.clawbrowser.ai

Paso 1: Instalar Clawbrowser

Descarga y extrae el bootstrapper clawctl:

# macOS (Apple Silicon)
archive="clawctl-macos-arm64.tar.gz"
curl -fL --retry 3 -o "$archive" \
  "https://github.com/clawbrowser/clawctl/releases/latest/download/${archive}"
tar -xzf "$archive"

Para Linux, usa clawctl-linux-amd64.tar.gz o clawctl-linux-arm64.tar.gz. No necesitas Docker ni sudo.

Configura tu API key:

./clawctl config set api-key

Paso 2: Iniciar un perfil de navegador

Arranca Clawbrowser con un perfil con nombre. Cada perfil tiene su propio fingerprint, almacenamiento de cookies y proxy opcional:

# Start a profile and open the verification page
clawctl start --profile cursor-dev --url clawbrowser://verify/ --json

# Get the CDP endpoint for this profile
clawctl endpoint --profile cursor-dev --json

El comando endpoint devuelve una URL como http://127.0.0.1:9222. Ese es el endpoint CDP al que se conectará tu agente de Cursor.

Paso 3: Conectar desde Cursor vía MCP

La integración más simple usa el MCP server integrado de Clawbrowser. Expone acciones de navegador, gestión de tabs y arranque de perfiles como herramientas MCP que Cursor puede llamar directamente. El server maneja CDP por dentro, así que el agente no necesita administrar endpoints.

Ejecuta el instalador para escribir la configuración MCP local:

clawctl install --agent all --json

Cursor detecta el MCP server después de guardar la configuración.

Alternativa: Microsoft Playwright MCP

Si prefieres el MCP server oficial de Microsoft Playwright, apúntalo al endpoint CDP de Clawbrowser en Cursor Settings > MCP > Add Server:

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": [

Ambos caminos dan a Cursor herramientas de alto nivel sobre el browser. El MCP server de Clawbrowser añade gestión de perfiles y fingerprints encima de las acciones estándar.

Paso 4: Verificar la conexión

Pide a tu agente de Cursor que abra una página de prueba:

Navigate to https://browserleaks.com/canvas and take a screenshot. Tell me what canvas fingerprint hash you see.

Si funciona, verás un canvas fingerprint real del perfil gestionado por Clawbrowser, no el hash genérico de un webview sandboxed.


Conexión CDP directa desde código

Si tu agente de Cursor escribe y ejecuta scripts en lugar de usar herramientas MCP, conecta directamente con Playwright o Puppeteer:

Playwright (Python)

from playwright.async_api import async_playwright

async def browse_with_clawbrowser():
    async with async_playwright() as p:
        # Connect to Clawbrowser's CDP endpoint

Playwright (Node.js)

const { chromium } = require('playwright');

const browser = await chromium.connectOverCDP('http://127.0.0.1:9222');
const page = browser.contexts()[0].pages()[0];

Puppeteer

const puppeteer = require('puppeteer');

const browser = await puppeteer.connect({
  browserURL: 'http://127.0.0.1:9222'
});

Los tres frameworks se conectan al mismo endpoint CDP. Clawbrowser gestiona debajo la identidad del navegador: Canvas, WebGL, AudioContext, fuentes, resolución, timezone, propiedades de navigator y proxy routing permanecen coherentes dentro del perfil.


Por qué la anti-detection importa para agentes Cursor

Cuando tu agente Cursor navega con un browser estándar, los sistemas anti-bot comprueban la identidad del navegador en muchas superficies:

Señal Qué se comprueba Chrome estándar Clawbrowser
Canvas hash GPU rendering fingerprint Static, matches known automation profiles Unique per profile, consistent with reported GPU
WebGL renderer Graphics card identifier Exposes real hardware Matches the profile's simulated hardware
Navigator properties Browser version, platform, language Generic Chromium values Consistent with profile's OS and locale
Timezone System timezone vs IP geo Mismatches with proxy location Auto-aligned with proxy geography
CDP detection Runtime.enable traces Detectable via leaked CDP artifacts Engine-level patches suppress CDP signals

Un Chromium normal conectado por CDP deja trazas que los anti-bot leen en segundos. Clawbrowser las corrige a nivel de engine, no con overrides JavaScript fáciles de detectar mirando descriptors o prototype chains.

Esa es la diferencia entre conectar Cursor a chrome --remote-debugging-port=9222, que termina bloqueado, y conectarlo a Clawbrowser, que mantiene una identidad de navegador consistente.


Gestionar múltiples perfiles

Cada perfil de Clawbrowser está aislado. Puedes ejecutar varios perfiles a la vez para cuentas o proyectos diferentes:

# Create three profiles with different locations
clawctl create --profile account-a --location sweden --json
clawctl create --profile account-b --location germany --json
clawctl create --profile account-c --location japan --json

Cada perfil obtiene un fingerprint único, su propia IP de proxy y almacenamiento aislado. Para la plataforma parecen usuarios independientes desde máquinas y países distintos.

Tu agente puede cambiar de perfil conectándose a otro endpoint CDP, o manejar varios en paralelo desde el mismo script.


Browser integrado de Cursor vs CDP vs Clawbrowser

Cursor integrado Chrome vía CDP Clawbrowser vía CDP
Browser engine Sandboxed webview Real Chromium Real Chromium (patched)
Session persistence Workspace-scoped Manual profile dirs Named profiles with auto-persistence
Fingerprint management None None 20+ surfaces managed per profile
Proxy support None Manual flag Profile-bound, geo-aligned
Anti-bot survival Blocked instantly Blocked within minutes Passes Cloudflare, DataDome, PerimeterX
Multi-account Not possible Separate --user-data-dir Built-in profile isolation
Setup complexity Zero (built in) Moderate Three commands

Usa el browser integrado para inspeccionar tu propia app en localhost. Usa Clawbrowser vía CDP para cualquier flujo que toque la web real.


FAQ

¿Funciona con el agent mode de Cursor?

Sí. El agent mode de Cursor puede usar cualquier MCP server, incluidos los que conectan con browsers externos vía CDP. El agente llama las herramientas MCP igual que llamaría al browser integrado, pero las acciones se ejecutan en Clawbrowser.

¿Necesito Playwright o Puppeteer instalados?

Solo si el agente escribe y ejecuta scripts de automatización. En el flujo MCP normal, el MCP server gestiona la conexión CDP internamente y tu agente usa acciones como "navigate" y "click".

¿Puedo reutilizar sesiones de login entre proyectos de Cursor?

Sí. Los perfiles de Clawbrowser conservan cookies, localStorage e IndexedDB. Inicia un perfil, entra manualmente o con el agente y reutiliza ese perfil en sesiones futuras.

¿Qué pasa si la herramienta de browser de Cursor se cruza con el browser externo?

Puedes desactivar el browser integrado en Settings > Features > Browser si quieres evitar confusión. También pueden convivir: son browsers independientes.

¿Clawbrowser es gratis?

Sí. Clawbrowser es gratis, open source y MIT-licensed. No hay cuotas por seat, límites de uso ni suscripción al runtime del browser. Necesitas una API key de app.clawbrowser.ai para validar la instalación.


Empieza

Tres comandos para conectar tu agente Cursor a un browser real:

# Install Clawbrowser
clawctl install --json

# Set your API key
clawctl config set api-key

Apunta tu MCP server o script de Playwright al endpoint devuelto. Tu agente Cursor navegará con fingerprints gestionados, sesiones persistentes y proxy routing.

Para profundizar en automatización con CDP, lee Navegador CDP para agentes AI: guía para desarrolladores. Para la parte completa de fingerprinting, lee Marcado del navegador: 20 señales anti-bot.

Sigue leyendo

Ver todos →