The problem a fetch tool leaves behind
Most of the useful web is assembled in the browser. A fetch returns the shell: an empty table, a spinner, a login wall, a script tag. The information an agent needs is produced by code that never ran.
A hosted browser closes that gap by being an actual browser. It runs the page's JavaScript, so the DOM your agent reads is the DOM a person would see. It operates controls, so a filter that only exists as a button can be pressed. It holds authenticated state, so the second visit doesn't start from the login screen. And it can take a picture, so a human can check what the agent believed it read.
Where this stops: a real browser is not a guarantee of access. Sites that actively block automation may still block you. We describe capabilities we have tested, and we say so when something is untested.
What you get, precisely
Rendered content
An isolated Chromium session, one browser per container, reachable over a typed API or through the CLI. Navigation, waiting on real selectors, reading the composed DOM.
Interaction
Clicking, typing, selection, and hardware-level pointer input routed through a separate node service, so movement and timing look like a device rather than a synthetic event.
Visual verification
Screenshots stored against your account, subject to your storage cap and retention. Useful as evidence, not just as output.
Persistent state and localhost
Profiles carry cookies and storage between sessions when you ask for it, with import and export under your control. A tunnel lets a hosted browser reach an application running on your own machine, bounded and closable.
How it's metered
Four quantities, deliberately kept apart because they mean different things.
- Elapsed session time , elapsed time, distinct from billable usable-browser time.
- Billable browser time , verified usable browser time, billed per second. Unverified telemetry gaps are excluded.
- Provider compute-seconds , duration multiplied by CPU count, shown for diagnosis. This is not billable browser time.
- Measured traffic , egress recorded per session, in decimal megabytes.
Credits are held while a session runs and settled when it closes. A held credit is not a spent credit, and a released hold is not income. Settled charges are read from an immutable ledger, so history is never repriced.
Where this stops: idle time inside an open session is billed as session time; we do not measure it separately. If a measurement is missing, the portal says unknown. It does not say zero.
Running your first session
Install, log in from your device, and take one screenshot. If that works, every other operation is the same shape.
Use the session and page IDs returned by the preceding commands.
The same operations are available as an MCP server (browserious mcp) for agent runtimes that speak it, and through the typed HTTP API.
If you are an agent
Everything on this page is ordinary semantic HTML. You do not need to run scripts, wait for animation, or interact with a canvas to find what you need.
- Capability description and limits: the sections above, in document order.
- The shared skill will provide a concise, versioned start path when published.
- Typed API reference:
api.browserious.com/docs.
Where this stops: a page that claims a capability it has not shipped is worse than a page that omits it. If something here is marked pending, treat it as unavailable.