CrawlioCrawlio Docs

Install MCP Server

Prerequisites

Node.js v18 or later.

Quick setup

npx -y crawlio-browser init

The init wizard:

  1. Detects your AI clients: Claude Code, Claude Desktop, Cursor, Windsurf, VS Code, Cline, Copilot CLI, Gemini CLI, Codex CLI, Goose, OpenCode, Zed
  2. Configures each client with the correct MCP server entry
  3. Installs the browser-automation skill for Claude Code

Open your AI client and the browser tools are available.

Manual setup

If the init wizard did not detect your client, add the config manually.

Claude Code

claude mcp add crawlio-browser -- npx -y crawlio-browser

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "crawlio-browser": {
      "command": "npx",
      "args": ["-y", "crawlio-browser"]
    }
  }
}

Add to .cursor/mcp.json in your project root:

{
  "mcpServers": {
    "crawlio-browser": {
      "command": "npx",
      "args": ["-y", "crawlio-browser"]
    }
  }
}

Add to Windsurf Settings > MCP:

{
  "mcpServers": {
    "crawlio-browser": {
      "command": "npx",
      "args": ["-y", "crawlio-browser"]
    }
  }
}

Add to VS Code settings (settings.json):

{
  "cline.mcpServers": {
    "crawlio-browser": {
      "command": "npx",
      "args": ["-y", "crawlio-browser"]
    }
  }
}

The config pattern is the same for all MCP clients:

{
  "mcpServers": {
    "crawlio-browser": {
      "command": "npx",
      "args": ["-y", "crawlio-browser"]
    }
  }
}

Two browser modes

The MCP server connects to browsers in two ways.

Chrome extension (live browser)

The Chrome extension writes bridge info to ~/.crawlio/bridge/. The MCP server reads it and connects via WebSocket at 127.0.0.1:9333. This gives your AI control of your existing Chrome tabs, with your sessions, cookies, and login state intact.

96 tools. Install from the Chrome Web Store. See Install Chrome Extension.

Headless agent (background browser)

A Node.js process with embedded Chromium. Starts automatically when needed. No Chrome required.

~199 tools across 5 tiers:

Tier What it does
Browser Navigation, DOM manipulation, screenshots, network capture
Converter PDF generation, image conversion, format transformation
Pattern matching Search, regex, content analysis
Interceptor Request/response modification via network interception
Core File I/O, orchestration, multi-step coordination

The headless agent is bundled with the Direct distribution channel. For npm installs, it is included in @crawlio/mcp.

Routing

You do not need to choose a mode. The aggregator routes automatically: if a Chrome tab is connected, tools go to the extension. If not, they go to the headless agent. See Browser Agent Overview for details.

Config templates

Bundled variant (written by "Install MCP" in Crawlio Settings, includes all three pillars):

{
  "mcpServers": {
    "crawlio": {
      "command": "Crawlio.app/Contents/MacOS/CrawlioMCP"
    },
    "crawlio-browser": {
      "command": "node",
      "args": ["~/.crawlio/bridge/dist/mcp-server/index.js"]
    },
    "crawlio-agent-headless": {
      "command": "node",
      "args": ["~/.crawlio/agent-headless/index.js"]
    }
  }
}

npm variant (aggregator handles all pillars through a single entry):

{
  "mcpServers": {
    "crawlio": {
      "command": "npx",
      "args": ["@crawlio/mcp"]
    }
  }
}

Code mode (default)

By default, the server starts in code mode, collapsing 96 tools into 3 for ~95% schema token reduction:

Tool Description
search Discover available commands by keyword
execute Run async JS with bridge, crawlio, smart, and sleep in scope
connect_tab Connect to a browser tab

See Code Mode for the search-and-execute pattern.

Full mode

To expose all 96 tools individually, add --full:

{
  "mcpServers": {
    "crawlio-browser": {
      "command": "npx",
      "args": ["-y", "crawlio-browser", "--full"]
    }
  }
}

Troubleshooting

Issue Resolution
Bridge file stale Delete ~/.crawlio/bridge/bridge.json and restart the Chrome extension
Port conflict on 9333 WebSocket port scans from 127.0.0.1:9333+. Check for other processes binding that range.
CrawlioMCP not connecting Verify ~/Library/Logs/Crawlio/control.port exists and the app is running
Vault token rejected Tokens rotate on app restart. The vault client auto-retries. If persistent, restart both app and agent.

Next steps

© 2026 Crawlio. All rights reserved.