MCP + x402 on Arc Testnet USDC

eyez

A pay-per-capture headless browser API for agents. Pay 0.001 USDC on Arc Testnet through x402 and receive structured page content from JavaScript-heavy sites.

Agent flow showing sense, see, think, and interact
$0.001 USDC per successful capture request
eip155:5042002 Arc Testnet x402 network
capturePage MCP tool at /mcp

Integrations

Connect an MCP-aware agent to the hosted endpoint. The agent discovers capturePage and calls it when normal fetch cannot see page content.

Wallet configuration required

The server and client both need EVM keys because x402 payments are settled on Arc Testnet.

  • Server: set PAY_TO to the address receiving payments.
  • Server: set FACILITATOR_PRIVATE_KEY for x402 settlement and optional refunds.
  • Client/MCP: set EVM_PRIVATE_KEY so the MCP tool can pay for captures.

Use a funded test wallet for development. Never commit private keys.

Hosted MCP endpoint

https://pima5-eyez.hf.space/mcp

Agent tool call

{
  "tool": "capturePage",
  "arguments": {
    "url": "https://example.com"
  }
}
Flow: user asks for a page, agent calls capturePage, eyez pays through x402 on Arc, captures the browser page, and returns title, headings, links, and extracted text.

HTTP API

Free health and service metadata endpoints sit next to the paid browser capture endpoint.

GET / Returns service name, price, network, and usage.
GET /health Returns a free health check response.
GET /capture?url=<encoded_url> Paid x402 endpoint. Captures public http and https pages only.

Example response

{
  "title": "Example Domain",
  "description": "",
  "headings": [{ "level": "H1", "text": "Example Domain" }],
  "links": [{ "text": "Learn more", "href": "https://www.iana.org/domains/example" }],
  "content": "Example Domain...",
  "url": "https://example.com",
  "capturedAt": "2026-05-25T12:00:00.000Z",
  "captureTimeMs": 3325,
  "payment": { "price": "$0.001", "network": "eip155:5042002" }
}

Tool list

The MCP server exposes one paid browser-capture tool.

  • capturePage - Capture a JavaScript-heavy webpage through the eyez API. Use this when a plain HTTP fetch cannot see useful page text from SPAs, social apps, DeFi apps, or other browser-captured surfaces.

Arc + USDC network

Current defaults used by the service.

Network Arc Testnet
Chain ID 5042002
x402 network eip155:5042002
Currency USDC
USDC asset 0x3600000000000000000000000000000000000000
Explorer testnet.arcscan.app

Capture guardrails

eyez rejects malformed URLs and private network targets before payment is requested. Failed captures can trigger refund logic when the payer address is available in the x402 payment header.