# nodriver — Chrome browser automation

MCP-сервер даёт ИИ-агенту 70 инструментов для управления Chrome, работы с вкладками и извлечения данных. Подходит для браузерной автоматизации и веб-скрейпинга.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 6
- Автор: andresolbach
- Лицензия: MIT · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/andresolbach/nodriver-mcp-server
- Обновлён: 2026-10-16
- HTML: https://affpapa.org/nevibecode/mcp/nodriver-chrome-browser-automation

## Что делает

nodriver подключает Chrome к ИИ-агенту через MCP и управляет браузером напрямую по CDP. Сервер умеет открывать страницы, заполнять формы, читать accessibility-снимки, делать скриншоты, сохранять PDF и проверять сетевые запросы. В нём 70 инструментов для навигации, ввода, cookies, хранилищ, профилей и эмуляции устройств.

Профили сохраняют cookies и авторизации между сессиями, а старт вкладок настраивается для каждого профиля. Для параллельных задач можно запускать изолированные браузеры со своими вкладками, cookies и идентификаторами элементов. nodriver работает без Selenium и отдельного ChromeDriver. Проверка Cloudflare зависит от самого испытания и конфигурации браузера, а помощнику `cf_verify` нужен extra `[cf]`.

Сервер запускается командой `uvx nodriver-mcp`; для Claude Code его можно добавить через `claude mcp add`. Переменные `NODRIVER_HEADLESS`, `NODRIVER_USER_DATA_DIR`, `NODRIVER_BROWSER_PATH` и `NODRIVER_PROXY` позволяют задать режим, профиль, путь к браузеру и прокси.

## Требования
- Нужно: Python и uv (команды через uvx)
- Переменные окружения: `NODRIVER_HEADLESS`, `NODRIVER_USER_DATA_DIR`, `NODRIVER_BROWSER_PATH`, `NODRIVER_PROXY` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.
- Работает с: Chrome

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add --env NODRIVER_HEADLESS=<NODRIVER_HEADLESS> --env NODRIVER_USER_DATA_DIR=<NODRIVER_USER_DATA_DIR> --env NODRIVER_BROWSER_PATH=<NODRIVER_BROWSER_PATH> --env NODRIVER_PROXY=<NODRIVER_PROXY> --transport stdio nodriver-chrome-browser-automation -- uvx nodriver-mcp
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from nodriver-mcp <команда>

### Codex

**Командой платформы**
```bash
codex mcp add nodriver-chrome-browser-automation --env NODRIVER_HEADLESS=<NODRIVER_HEADLESS> --env NODRIVER_USER_DATA_DIR=<NODRIVER_USER_DATA_DIR> --env NODRIVER_BROWSER_PATH=<NODRIVER_BROWSER_PATH> --env NODRIVER_PROXY=<NODRIVER_PROXY> -- uvx nodriver-mcp
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from nodriver-mcp <команда>

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "nodriver-chrome-browser-automation": {
            "command": "uvx",
            "args": [
                "nodriver-mcp"
            ],
            "env": {
                "NODRIVER_HEADLESS": "<NODRIVER_HEADLESS>",
                "NODRIVER_USER_DATA_DIR": "<NODRIVER_USER_DATA_DIR>",
                "NODRIVER_BROWSER_PATH": "<NODRIVER_BROWSER_PATH>",
                "NODRIVER_PROXY": "<NODRIVER_PROXY>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from nodriver-mcp <команда>

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "nodriver-chrome-browser-automation": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "nodriver-mcp"
            ],
            "env": {
                "NODRIVER_HEADLESS": "<NODRIVER_HEADLESS>",
                "NODRIVER_USER_DATA_DIR": "<NODRIVER_USER_DATA_DIR>",
                "NODRIVER_BROWSER_PATH": "<NODRIVER_BROWSER_PATH>",
                "NODRIVER_PROXY": "<NODRIVER_PROXY>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from nodriver-mcp <команда>

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add -e NODRIVER_HEADLESS=<NODRIVER_HEADLESS> -e NODRIVER_USER_DATA_DIR=<NODRIVER_USER_DATA_DIR> -e NODRIVER_BROWSER_PATH=<NODRIVER_BROWSER_PATH> -e NODRIVER_PROXY=<NODRIVER_PROXY> nodriver-chrome-browser-automation uvx nodriver-mcp
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from nodriver-mcp <команда>

## Когда брать
- открывать страницы и заполнять веб-формы
- извлекать текст и данные из вкладок
- сохранять cookies и авторизации между сессиями
- разделять браузеры для параллельных задач
- исследовать сетевые запросы и ответы страниц

## Примеры запросов агенту
- Открой сайт, заполни форму регистрации и покажи результат.
- Сними accessibility-снимок страницы и извлеки из него ссылки и текст.
- Запусти отдельный браузер для этой задачи и сохрани найденные данные из сетевых ответов.

## Похожие
- [Scrapling MCP Server](https://affpapa.org/nevibecode/mcp/scrapling-mcp-server.md) — MCP-сервер · ★ 89899
- [browser-use](https://affpapa.org/nevibecode/mcp/browser-use.md) — MCP-сервер · ★ 119231
- [AIHawk](https://affpapa.org/nevibecode/mcp/aihawk.md) — MCP-сервер · ★ 32260
- [Skyvern](https://affpapa.org/nevibecode/mcp/skyvern.md) — MCP-сервер · ★ 23283

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
