Skip to main content
Glama
JaDi03

Browser Intelligence MCP

by JaDi03
README.md
# Browser Intelligence MCP

> A Model Context Protocol (MCP) server that gives AI agents real browser capabilities:
> take screenshots, scrape structured content, and run visual page tests.

---

## Overview

**Browser Intelligence MCP** is a standard MCP server built with Node.js and TypeScript.
It exposes three powerful tools that allow AI agents to interact with the real web
through a headless Chromium browser powered by Playwright.

This server is the demo component of a per-usage billing infrastructure for agent-native services.

---

## Tools

| Tool | Description |
|------|-------------|
| `take_screenshot` | Captures a full or viewport screenshot of any URL as a PNG image |
| `scrape_page` | Extracts structured content (title, description, links) from any URL |
| `run_visual_test` | Runs a set of checks against a page and returns pass/fail results |

---

## Requirements

- Node.js >= 22
- npm >= 10

---

## Getting Started

```bash
# 1. Clone the repository
git clone https://github.com/your-org/browser-intelligence-mcp.git
cd browser-intelligence-mcp

# 2. Install dependencies
npm install

# 3. Install Playwright browsers
npx playwright install chromium

# 4. Copy environment variables
cp .env.example .env

# 5. Run in development mode
npm run dev
```

---

## MCP Configuration

Add to your MCP client config (e.g., Claude Desktop `claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "browser-intelligence": {
      "command": "node",
      "args": ["dist/index.js"],
      "cwd": "/path/to/browser-intelligence-mcp"
    }
  }
}
```

---

## Scripts

| Command | Description |
|---------|-------------|
| `npm run dev` | Run in development mode with hot reload |
| `npm run build` | Compile TypeScript to JavaScript |
| `npm start` | Run compiled production build |
| `npm run lint` | Run ESLint checks |

---

## License

MIT

TDQS

A4/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clear, non-overlapping purpose: take_screenshot captures visual state, scrape_page extracts content and links, and run_visual_test performs assertion-based checks. No ambiguity in usage.

Naming Consistency5/5

All three tools follow a consistent verb_noun pattern (take_screenshot, scrape_page, run_visual_test) with clear, descriptive verbs. Naming is uniform and predictable.

Tool Count5/5

With 3 tools, the set is minimal but well-scoped for a focused browser intelligence server. Each tool serves a distinct core function (capturing, extracting, testing) and earns its place without unnecessary bloat.

Completeness4/5

The surface covers the primary browser intelligence workflows (screenshot, scrape, and visual checks). Minor gaps exist—such as no support for full HTML extraction or waiting for dynamic content—but for the stated purpose, the coverage is solid and workable.

Maintenance

ActivityMaintained
ResponsivenessSyncing