Click to start with voiceover
30s • 5 slides • auto-advance
EDIT MODE — click any text to edit • Ctrl+S to save
01/05
$  curl -X GET "eyez.app/capture?url=..."
  402 Payment Required | $0.001 USDC
$  arc pay --amount 0.001 --send
 ███████╗██╗   ██╗███████╗███████╗
 ██╔════╝╚██╗ ██╔╝██╔════╝╚══███╔╝
 █████╗   ╚████╔╝ █████╗    ███╔╝
 ██╔══╝    ╚██╔╝  ██╔══╝   ███╔╝
 ███████╗   ██║   ███████╗███████╗
 ╚══════╝   ╚═╝   ╚══════╝╚══════╝
SERVICE Headless browser API for AI agents PRICE $0.001 USDC per capture NETWORK Arc x402 payments ENGINE Playwright + Chromium
eyez live arc:testnet Arc USDC
02/05
The Problem
// AI agents are HTTP clients — they can't execute JavaScript
fetch("https://app.uniswap.org")
  // → Returns empty <div id="root"></div>
  // → Zero useful content from any SPA
// "Just install Chromium" isn't a solution for agents
apt install chromium // +500MB disk, libnss3, libgbm...
browser.launch() // +200-500MB RAM per instance
// Crashes, timeouts, memory leaks, zombie processes
500MB+ Chromium install
200-500MB RAM per capture
90%+ SPAs need JS
problem space agents can't see the modern web
03/05
How It Works
1
Agent requests GET /capture?url=target
// Any public URL — social, DeFi, analytics, news
2
Server returns 402 Payment Required
// Includes Arc payment details via x402 header
3
Agent signs $0.001 USDC on Arc Testnet
// x402.org facilitator verifies — ~5s settlement
4
Playwright captures page with smart waiting
// Lazy-load handling, dynamic scroll, SPA hydration
5
Returns structured JSON: title, headings, links, content
// Blocked page? Auto-refund on-chain. Zero risk.
x402 flow request → 402 → sign → capture → JSON
04/05
What Works
Returns structured JSON — title, headings, links, and full page content.
Works (40+ domains)
Uniswap Aave Compound CoinGecko DeFiLlama Dune X / Twitter LinkedIn TikTok Coinbase OKX Kraken Arcscan Soroswap LOBSTR Blur DexScreener Freighter
Blocked
Reddit Binance Etherscan Instagram OpenSea ProductHunt
// IP reputation / Cloudflare — not a capture issue
// Blocked pages get auto-refunded on-chain
coverage structured JSON output blocked = auto-refund
05/05
Get Started
Option 1: MCP Tool
// .mcp.json — transparent payment handling
{
  "mcpServers": {
    "eyez": {
      "command": "node",
      "args": ["dist/mcpServer.js"]
    }
  }
}
Option 2: x402 Fetch (Node.js)
import { wrapFetch } from "@x402/fetch";
const res = await fetch402(
  `eyez.app/capture?url=${url}`
);
github.com/fozagtx/eyez
Built for Arc agents
ready $0.001 USDC • zero agent overhead github.com/fozagtx/eyez