Browser Intelligence MCP
# 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
Scored across 3 tools
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.
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.
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.
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.