Как подключить Cursor к настоящему браузеру через CDP — иллюстрация к статье Clawbrowser

Как подключить Cursor к настоящему браузеру через CDP

Clawbrowser Teamai-agentycdpcursortutorial

Встроенный browser tool в Cursor удобен, когда надо посмотреть свой localhost. Он умеет открывать страницы, кликать, вводить текст и делать screenshots. Но для реального веба это изолированный webview: нет нормальной персистентности cookies, нет управляемого fingerprint, нет proxy identity, которая совпадает с географией и профилем.

TL;DR: подключите Cursor к Clawbrowser через CDP (Chrome DevTools Protocol). Agent получает настоящий Chromium с persistent profiles, managed fingerprints и proxy routing. Установили runtime, подняли профиль, отдали Cursor локальный endpoint — и агент работает не через sandboxed webview.


Почему встроенного браузера Cursor недостаточно

Cursor поставляет browser tool на базе sandboxed webview, который работает как MCP server extension. Для разработки этого хватает: navigate, click, type, scroll, screenshot, console output и network traffic.

За пределами localhost начинаются ограничения:

Ограничение Что происходит
Sandboxed webview Это не настоящий Chromium instance. Сайты видят отсутствующие APIs и нестандартные window properties.
Нет session persistence Cookies и localStorage привязаны к workspace и не живут надежно между запусками.
Нет fingerprint management Один и тот же canvas hash, WebGL renderer и navigator properties светятся каждый раз.
Нет proxy support Весь traffic идет через дефолтный IP машины. Datacenter IP быстро получают флаг.
Проблемы надежности В Cursor 2.3.18+ были regression issues с clicks, scroll и поиском элементов.

Если агент логинится, парсит данные за Cloudflare или проходит многошаговый workflow на production-сайте, встроенный webview быстро упрется в anti-bot.


Что дает CDP

CDP (Chrome DevTools Protocol) — стандартный интерфейс для программного управления Chromium. Playwright вызывает connectOverCDP, Puppeteer вызывает puppeteer.connect, а низкоуровневые CDP clients открывают WebSocket к debugging port.

Когда Cursor подключается к внешнему браузеру через CDP, вы получаете:

  • Настоящий browser с полноценным rendering engine, extensions и стандартными APIs
  • Persistent sessions с cookies и login state между запусками агента
  • Полный контроль страницы тем же протоколом, которым пользуются Playwright и Puppeteer
  • Anti-detection, если браузер держит fingerprint и proxy в одной согласованной identity

Соединение — обычный WebSocket URL. Любой tool, который говорит CDP, может подключиться к браузеру с CDP endpoint. Clawbrowser поднимает такой endpoint для каждого профиля.


Подключаем Cursor к Clawbrowser: пошагово

Требования

  • macOS (Apple Silicon), Linux (x64 или arm64) или Windows
  • Установленный Cursor
  • Clawbrowser API key из app.clawbrowser.ai

Шаг 1: установите Clawbrowser

Скачайте и распакуйте 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"

Для Linux используйте clawctl-linux-amd64.tar.gz или clawctl-linux-arm64.tar.gz. Docker и sudo не нужны.

Укажите API key:

./clawctl config set api-key

Шаг 2: запустите browser profile

Запустите Clawbrowser с именованным профилем. У каждого профиля свой fingerprint, cookie storage и опциональный proxy:

# 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

Команда endpoint возвращает URL вроде http://127.0.0.1:9222. Это CDP endpoint, к которому подключится Cursor agent.

Шаг 3: подключитесь из Cursor через MCP

Самая простая интеграция — встроенный MCP server Clawbrowser. Он дает Cursor tools для navigation, screenshots, clicks, tab management и profile startup. CDP-соединение сервер держит внутри.

Запустите installer, чтобы записать локальную MCP-конфигурацию:

clawctl install --agent all --json

Cursor загрузит MCP server из этой конфигурации.

Альтернатива: Microsoft Playwright MCP

Если хотите использовать официальный Microsoft Playwright MCP server, укажите endpoint Clawbrowser в Cursor Settings > MCP > Add Server:

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

Оба варианта дают Cursor высокоуровневые browser actions. MCP server Clawbrowser добавляет управление профилями и fingerprint поверх стандартных действий.

Шаг 4: проверьте подключение

Попросите Cursor agent открыть тестовую страницу:

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

Если все работает, вы увидите реальный canvas fingerprint из профиля Clawbrowser, а не generic hash от sandboxed webview.


Прямое CDP-подключение из кода

Если Cursor agent пишет и запускает скрипты вместо MCP tools, подключайтесь напрямую через Playwright или 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'
});

Все три framework подключаются к одному CDP endpoint. Clawbrowser держит identity layer снизу: Canvas, WebGL, AudioContext, fonts, screen resolution, timezone, navigator properties и proxy routing остаются согласованными внутри профиля.


Почему anti-detection важен для Cursor agents

Когда Cursor agent ходит в веб через стандартный browser, anti-bot системы проверяют browser identity сразу по нескольким surfaces:

Сигнал Что проверяется Standard Chrome 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

Обычный Chromium, подключенный через CDP, оставляет следы, которые anti-bot scripts читают за секунды. Clawbrowser патчит их на уровне engine, а не через JavaScript overrides, которые палятся по descriptors или prototype chains.

Это разница между Cursor + chrome --remote-debugging-port=9222, который ловит блок, и Cursor + Clawbrowser, где identity браузера выглядит цельной.


Управление несколькими профилями

Каждый профиль Clawbrowser полностью изолирован. Можно запускать несколько профилей для разных аккаунтов или проектов:

# 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

У каждого профиля уникальный fingerprint, свой proxy IP и изолированное хранилище. Платформа видит независимых пользователей на разных машинах в разных странах.

Cursor agent может переключаться между профилями через разные CDP endpoints или управлять несколькими параллельно из одного скрипта.


Встроенный browser Cursor vs CDP vs Clawbrowser

Cursor built-in Chrome via CDP Clawbrowser via 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

Встроенный browser оставьте для localhost. Clawbrowser через CDP используйте там, где агент работает с реальным вебом.


FAQ

Это работает с agent mode в Cursor?

Да. Agent mode в Cursor может использовать любой MCP server, включая тот, который подключается к внешнему browser через CDP. Действия выполняются в Clawbrowser, а не в sandboxed webview.

Нужно ставить Playwright или Puppeteer?

Только если агент пишет и запускает automation scripts. Для обычного MCP workflow CDP-соединение внутри держит server.

Можно переиспользовать login sessions между проектами Cursor?

Да. Clawbrowser profiles сохраняют cookies, localStorage и IndexedDB. Залогинились один раз и используете тот же profile в другом workspace.

Что если browser tool Cursor путается с внешним browser?

Можно выключить встроенный browser в Settings > Features > Browser. Или оставить оба: они независимы.

Clawbrowser бесплатный?

Да. Clawbrowser бесплатный, open source и MIT-licensed. Нет seat fees, usage limits или browser runtime subscription. Для валидации установки нужна API key из app.clawbrowser.ai.


Начать

Три команды, чтобы подключить Cursor agent к настоящему browser:

# Install Clawbrowser
clawctl install --json

# Set your API key
clawctl config set api-key

Укажите MCP server или Playwright script на возвращенный endpoint. Cursor agent будет ходить в веб через browser с managed fingerprints, persistent sessions и proxy routing.

Подробнее про CDP: CDP Browser for AI Agents: руководство для разработчиков. Про fingerprinting: Отпечатки браузера: 20 anti-bot сигналов.

Читайте дальше

Все статьи →