Give Claude Code a real browser.

Glance is an MCP server that gives your AI agent eyes. Navigate, click, screenshot, and test — Claude literally sees your app.

One command to start

Works with Claude Code, Cursor, Windsurf, Claude Desktop, and any MCP-compatible client.

Add Glance to Claude Code

claudemcp add glance -- npx glance-mcp

With headed mode (watch the browser in real-time)

claudemcp add glance \ 
 -e BROWSER_HEADLESS=false \ 
 -- npx glance-mcp

Then just ask Claude:

$"Open localhost:3000 and test the login flow"

MCP Configuration Example

{
  "mcpServers": {
    "glance": {
      "command": "npx",
      "args": ["glance-mcp"],
      "env": {
        "BROWSER_HEADLESS": "false"
      }
    }
  }
}

Install globally

npminstall -g glance-mcp

Install browser (first time only)

npxplaywright install chromium

Run as standalone server

glance

Claude Code Extensions

Install agent for Claude Code

curl -o ~/.claude/agents/glance-e2e-tester.md \
https://raw.githubusercontent.com/DebugBase/glance/main/agents/e2e-browser-tester.md

Install skill for Claude Code

mkdir -p ~/.claude/skills/glance-test
curl -o ~/.claude/skills/glance-test/SKILL.md \
https://raw.githubusercontent.com/DebugBase/glance/main/skills/glance-test/SKILL.md

How it works

Claude sees what the browser sees

Screenshots returned inline. Accessibility snapshots as structured text. Claude doesn't guess — it looks.

Inline Screenshots

Screenshots returned as base64 images directly in Claude's response. Claude sees the actual rendered pixels.

Accessibility Snapshots

Full page structure as a text tree. Every link, button, input, heading — with labels, roles, and states.

Security Profiles

URL allowlist/denylist, rate limiting, JS execution policies. Three profiles: local-dev, restricted, open.

Test Scenario Runner

Define multi-step tests in JSON or plain English. 12 assertion types, form filling, auth flow testing.

Visual Regression

Pixel-level screenshot comparison. Save baselines, detect changes. Powered by pixelmatch.

Network & Console

Monitor all HTTP requests and console messages. Catch failed API calls, CSP errors, JS exceptions.

Complete browser control

Browser Control

19 tools: navigate, click, type, hover, drag, select, press_key, scroll, screenshot, evaluate, console, network, go_back, go_forward, tab_new, tab_list, tab_select, close.

Test Automation

7 tools: scenario_run, scenario_status, assert, fill_form, auth_flow, watch_events, stop_watch.

Session & Visual

4 tools: session_start, session_end, session_list, visual_baseline, visual_compare.

Assertion Types

12 types: exists, notExists, textContains, textEquals, hasAttribute, hasClass, isVisible, isEnabled, urlContains, urlEquals, countEquals, consoleNoErrors.

Environment Variables

Variable Default Description
BROWSER_HEADLESS true Show browser window
BROWSER_SECURITY_PROFILE local-dev local-dev / restricted / open
BROWSER_VIEWPORT_WIDTH 1280 Viewport width (px)
BROWSER_VIEWPORT_HEIGHT 720 Viewport height (px)
BROWSER_TIMEOUT 30000 Default timeout (ms)

Built by DebugBase

Open-source, MIT licensed, community-driven.