Documentation

Overview

Use the service

Billing

Reference

Use the service

MCP

Give an AI agent captures, browser sessions and analytical jobs as tools, through the Model Context Protocol endpoint /mcp.

The endpoint

https://grid-lab.zyxio.xyz/mcp speaks MCP's Streamable HTTP transport, statelessly: every request is answered on its own, with no server-side MCP session.

Connect with an API key

Send the key as a header. For Claude Code:

claude mcp add --transport http browsergrid https://grid-lab.zyxio.xyz/mcp \
  --header "x-api-key: $BROWSERGRID_API_KEY"

A client that reads a JSON configuration takes the same two things:

{
  "mcpServers": {
    "browsergrid": {
      "type": "http",
      "url": "https://grid-lab.zyxio.xyz/mcp",
      "headers": { "x-api-key": "bgk_..." }
    }
  }
}

Keep a configuration file that holds a key out of version control.

Connect by signing in with Zyxio

Register the URL without a header. On the first call the endpoint answers 401 and points the client at its sign-in metadata; the client then opens Zyxio sign-in in your browser. Sign in with the identity you use on the panel. Remember that this identity is not the same as your API keys: what one creates, the other cannot see. Both are billed to your account.

Tools

Each tool is one API call, made with your own credential.

ToolCall
submit_batchPOST /batches
batch_statusGET /batches/{batchId}
job_statusGET /jobs/{jobId}
retry_jobPOST /jobs/{jobId}/retry
get_artifactGET /artifacts/{jobId}/{kind}
lease_sessionPOST /sessions
list_sessionsGET /sessions
release_sessionDELETE /sessions/{sessionId}
grid_statusGET /grid
submit_compute_jobPOST /jobs
compute_job_statusGET /jobs/{jobId}
list_compute_jobsGET /jobs
cancel_compute_jobPOST /jobs/{jobId}/cancel
get_compute_logsGET /jobs/{jobId}/logs
get_compute_artifactsGET /jobs/{jobId}/artifacts

A tool returns the call's JSON answer as text. An answer with status 400 or higher comes back as a tool error with the same body, 402 insufficient_credit included.

Driving a leased browser

lease_session returns a cdpUrl. Point a browser-automation MCP server at it, for example Playwright's (npx @playwright/mcp --cdp-endpoint "$CDP_URL"), once list_sessions shows the session running. Release it with release_session.

What it costs

Nothing extra. A tool costs exactly what its call costs, and the call is billed once: the MCP endpoint itself reserves and charges nothing.

See POST /mcp.