---
title: "Browserless MCP server for AI agents - actionlake"
description: "Give Claude 64 Browserless actions through one MCP server: profiles, chrome, chromium. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/browserless
updated: 2026-10-23
---

Connectors · Developer & infrastructure

# Browserless MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Browserless and the rest of your systems. It gives your agent 64 Browserless actions (35 reads, 20 writes and 9 that wait for a confirmation) and holds the Browserless credential itself, so the agent never does. It paces Browserless's limits and records every call.

[Connect Browserless free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

`claude mcp add --transport http actionlake https://connect.actionlake.com/mcp`

the first call

```
do {
  action: "browserless.onepassword_integrations.list",
  intent: "check which Browserless account is connected"
}
# List 1Password integrations · read · 1 upstream call
```

- 64 actions in one signed file
- 35 read look, never change
- 20 write create and update
- 9 wait for a yes destructive, confirmed first

Set up

## Connect Browserless in three steps.

1. 01
   ### Add actionlake to Claude.
   Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
   `https://connect.actionlake.com/mcp`
2. 02
   ### Connect Browserless.
   Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.
   - `api_token` Browserless API token: browserless.io > Account dashboard > API token (self-hosted: the TOKEN environment variable)
   - `host` Where your Browserless lives: your host
   ```
   account { op: "connections.requirements", service: "browserless" }
   # free: exactly what to paste, and what is found for you
   ```
3. 03
   ### Make the first call. Check before a write.
   Ask in plain words; Claude picks the action. Before anything changes, `check` validates the call and prices it, for free.
   ```
   do    { action: "browserless.onepassword_integrations.list" }
   # list 1password integrations · read · 1 upstream call
   check { action: "browserless.onepassword_integrations.create", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

Browserless at a glance

**Sign-in**

Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.

**You provide**

`api_token`

**Setup fields**

`host`

**Limits we pace to**

60 calls a minute, per connection

**API covered**

Browserless Enterprise and Cloud REST API 2.57.3, at your Browserless instance's API base URL, which you enter when connecting

**Built from**

Browserless's documentation, read 23 October 2026[docs.browserless.io](https://docs.browserless.io/openapi.json) [docs.browserless.io](https://docs.browserless.io/baas/connection)

**Service file**

Version 1.0.0, signed (Ed25519)

**Cached reads**

29 of 35 reads, for up to an hour; a write clears what it affects

**Shared entities**

2, so ask can line Browserless up with your other systems

**Data**

Processed and stored in Sydney, Australia. No US region yet

Capabilities

## What an AI agent can do in Browserless.

64 actions in 24 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

- **35** read look, never change
- **20** write create and update
- **9** destructive wait for a confirmation

1. ### Profiles
   9
   3 read · 4 write · 2 destructive
   List authentication profiles · Get an authentication profile · Start a profile-authoring session · Create a profile from captured state
2. ### Chrome
   6
   3 read · 3 write · 0 destructive
   Run a BrowserQL query with Chrome · Export a page with Chrome · Run a function in Chrome · Run a Lighthouse audit with Chrome
3. ### Chromium
   6
   4 read · 2 write · 0 destructive
   Run a BrowserQL query with Chromium · Export a page with Chromium · Run a function in Chromium · Run a Lighthouse audit with Chromium
4. ### Agent runs
   4
   2 read · 1 write · 1 destructive
   Start an agent run · List agent runs · Get an agent run · Cancel or delete an agent run
5. ### Crawls
   4
   2 read · 1 write · 1 destructive
   List crawl jobs · Start a crawl job · Get a crawl job and its pages · Cancel a crawl job
6. ### Onepassword integrations
   4
   2 read · 1 write · 1 destructive
   List 1Password integrations · Register a 1Password integration · Get a 1Password integration · Delete a 1Password integration
7. ### Devtools
   3
   2 read · 1 write · 0 destructive
   Open a new DevTools target · Get the DevTools protocol · Get DevTools version info
8. ### Edge
   3
   2 read · 1 write · 0 destructive
   Run a function in Edge · Run a Lighthouse audit with Edge · Scrape elements with Edge

**16 more areas · 25 actions**

- Live urls **3**
- Onepassword autologin **3**
- Sessions **3**
- Browsers **2**
- Scrapers **2**
- System **2**
- Browser pages **1**
- Onepassword audit **1**
- Proxy cities **1**
- Scrape **1**
- Site map **1**
- Skills **1**
- Smart scrape **1**
- Stealth **1**
- Unblock **1**
- Web search **1**

Top actions

## The Browserless API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 12 of Browserless's 12 action names are shared with at least one other connector, so an agent learns them once.

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `browserless.onepassword_integrations.list` List 1Password integrations | Lists the 1Password integrations owned by the requesting token. | read | `identity.service_account.list` 35 connectors |
| `browserless.profiles.list` List authentication profiles | Lists authentication profiles owned by the requesting token. | read | `identity.user_session.list` 16 connectors |
| `browserless.onepassword_integrations.create` Register a 1Password integration | Registers a 1Password integration for the requesting token. | write | `identity.service_account.create` 32 connectors |
| `browserless.onepassword_integrations.delete` Delete a 1Password integration | Deletes a 1Password integration owned by the requesting token. | destructive | `identity.service_account.delete` 25 connectors |
| `browserless.profiles.get` Get an authentication profile | Returns metadata for a specific authentication profile. | read | `identity.user_session.get` 10 connectors |
| `browserless.crawls.list` List crawl jobs | List all crawl jobs owned by the authenticated account (or, for keys not yet mapped to an account, the token). | read | `automation.background_job.list` 34 connectors |
| `browserless.crawls.create` Start a crawl job | Start an asynchronous crawl job that spiders a website and scrapes every discovered page. | write | `automation.background_job.create` 29 connectors |
| `browserless.web_search.search` Search the web and scrape results | Search the web and optionally scrape result pages. | read | `platform.search_result.search` 18 connectors |
| `browserless.system.active` Check the service is up | Returns a simple "204" HTTP code, with no response, indicating that the service itself is up and running. | read | `platform.health.get` 18 connectors |
| `browserless.chrome.bql` Run a BrowserQL query with Chrome | Parses and executes BrowserQL requests, powered by the BrowserQL Editor or by other API integrations. | write | this connector |
| `browserless.scrape.run` Scrape elements from a page | A JSON-based API that returns text, html, and meta-data from a given list of selectors. | read | this connector |
| `browserless.edge.scrape` Scrape elements with Edge | Returns text, HTML, and metadata from a given list of CSS selectors against the rendered DOM (Edge). | read | this connector |

Try it

## Prompts to paste into Claude.

Each one names the Browserless actions it will call, so you know what it reads and what it changes before you send it.

1. Read read
   List 1Password integrations in Browserless and tell me what stands out.
   calls `browserless.onepassword_integrations.list`
2. Write write
   Register a 1Password integration in Browserless. Show me exactly what you will send before you save it.
   calls `browserless.onepassword_integrations.create`

Governance for Browserless

## Destructive actions wait for a yes.

9 Browserless actions are destructive. These are all of them:

- Delete a 1Password integration `browserless.onepassword_integrations.delete`
- Cancel a crawl job `browserless.crawls.cancel`
- Kill browser sessions `browserless.browsers.kill`
- Terminate a browser `browserless.browsers.delete`
- Delete an authentication profile `browserless.profiles.delete`
- Delete a browser session `browserless.sessions.delete`
- Close a live URL `browserless.live_urls.delete`
- Cancel or delete an agent run `browserless.agent_runs.delete`
- Remove sites from a profile `browserless.profiles.remove_domains`

A destructive action runs only with `confirm: true`. Under the `human` policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

do browserless.onepassword_integrations.delete confirm_policy: **human**

Delete a 1Password integration?

**intent:** the user asked me to delete a 1Password integration

run suspended · waiting for a named person · key _browserless-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "browserless-agent",
  allowed_actions: ["browserless.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "browserless.onepassword_integrations.delete", approver: "lead@example.com" },
    { match: "browserless.crawls.cancel", approver: "lead@example.com" },
    { match: "browserless.browsers.kill", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to Browserless only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

## What Browserless costs on actionlake.

Every Browserless action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call Browserless refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

- 1 upstream call per action all 64 Browserless actions
- 64 actions page each page of a long list is one call
- 29 reads can be cached a cache hit costs nothing
- 100,000 calls a month, free paid plans from US$49 a month for 250,000

[See pricing](https://actionlake.com/pricing)

Action index

## Every Browserless action.

64 actions by area: the id your agent calls, what it does, and its effect.

**Profiles 9**

- `browserless.profiles.create` Start a profile-authoring session write
- `browserless.profiles.delete` Delete an authentication profile destructive
- `browserless.profiles.download_state` Download a profile's captured state read
- `browserless.profiles.get` Get an authentication profile read
- `browserless.profiles.list` List authentication profiles read
- `browserless.profiles.refresh` Replace a profile's captured state write
- `browserless.profiles.remove_domains` Remove sites from a profile destructive
- `browserless.profiles.rename` Rename an authentication profile write
- `browserless.profiles.upload` Create a profile from captured state write

**Chrome 6**

- `browserless.chrome.bql` Run a BrowserQL query with Chrome write
- `browserless.chrome.export` Export a page with Chrome read
- `browserless.chrome.function` Run a function in Chrome write
- `browserless.chrome.performance` Run a Lighthouse audit with Chrome read
- `browserless.chrome.scrape` Scrape elements with Chrome read
- `browserless.chrome.unblock` Unblock a URL with Chrome write

**Chromium 6**

- `browserless.chromium.agent_capabilities` Get Chromium agent route capabilities read
- `browserless.chromium.bql` Run a BrowserQL query with Chromium write
- `browserless.chromium.export` Export a page with Chromium read
- `browserless.chromium.function` Run a function in Chromium write
- `browserless.chromium.performance` Run a Lighthouse audit with Chromium read
- `browserless.chromium.scrape` Scrape elements with Chromium read

**Agent runs 4**

- `browserless.agent_runs.create` Start an agent run write
- `browserless.agent_runs.delete` Cancel or delete an agent run destructive
- `browserless.agent_runs.get` Get an agent run read
- `browserless.agent_runs.list` List agent runs read

**Crawls 4**

- `browserless.crawls.cancel` Cancel a crawl job destructive
- `browserless.crawls.create` Start a crawl job write
- `browserless.crawls.get` Get a crawl job and its pages read
- `browserless.crawls.list` List crawl jobs read

**Onepassword integrations 4**

- `browserless.onepassword_integrations.create` Register a 1Password integration write
- `browserless.onepassword_integrations.delete` Delete a 1Password integration destructive
- `browserless.onepassword_integrations.get` Get a 1Password integration read
- `browserless.onepassword_integrations.list` List 1Password integrations read

**Devtools 3**

- `browserless.devtools.new_target` Open a new DevTools target write
- `browserless.devtools.protocol` Get the DevTools protocol read
- `browserless.devtools.version` Get DevTools version info read

**Edge 3**

- `browserless.edge.function` Run a function in Edge write
- `browserless.edge.performance` Run a Lighthouse audit with Edge read
- `browserless.edge.scrape` Scrape elements with Edge read

**Live urls 3**

- `browserless.live_urls.create` Create a live URL for a browser write
- `browserless.live_urls.delete` Close a live URL destructive
- `browserless.live_urls.get` Get a live URL's status read

**Onepassword autologin 3**

- `browserless.onepassword_autologin.create` Start a 1Password autologin task write
- `browserless.onepassword_autologin.form` Get autologin form choices read
- `browserless.onepassword_autologin.get` Get a 1Password autologin task read

**Sessions 3**

- `browserless.sessions.bql` Run a BrowserQL query in a session write
- `browserless.sessions.create` Create a browser session write
- `browserless.sessions.delete` Delete a browser session destructive

**Browsers 2**

- `browserless.browsers.delete` Terminate a browser destructive
- `browserless.browsers.kill` Kill browser sessions destructive

**Scrapers 2**

- `browserless.scrapers.list` List predefined scrapers read
- `browserless.scrapers.run` Run a predefined scraper read

**System 2**

- `browserless.system.active` Check the service is up read
- `browserless.system.meta` Get system versions read

**Browser pages 1**

- `browserless.browser_pages.list` List a browser's open tabs read

**Onepassword audit 1**

- `browserless.onepassword_audit.list` List a 1Password integration's credential audit read

**Proxy cities 1**

- `browserless.proxy_cities.get` List proxy cities read

**Scrape 1**

- `browserless.scrape.run` Scrape elements from a page read

**Site map 1**

- `browserless.site_map.query` Discover a site's URLs read

**Skills 1**

- `browserless.skills.list` List automation skills for a site read

**Smart scrape 1**

- `browserless.smart_scrape.run` Smart-scrape a URL read

**Stealth 1**

- `browserless.stealth.bql` Run a BrowserQL query with the stealth browser write

**Unblock 1**

- `browserless.unblock.run` Unblock a URL past bot detection write

**Web search 1**

- `browserless.web_search.search` Search the web and scrape results read

Questions

## The Browserless MCP server, answered.

**Is there a Browserless MCP server for Claude?**

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 64 Browserless actions across profiles, chrome, chromium and agent runs, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Browserless.

**What do I need to connect Browserless?**

Browserless API token: browserless.io > Account dashboard > API token (self-hosted: the TOKEN environment variable). Plus your host. The free call account { op: "connections.requirements", service: "browserless" } lists exactly what to paste.

**Can an AI agent delete or change things in Browserless?**

Only if its key allows it, and only with an explicit confirmation. 9 Browserless actions are destructive, including delete a 1Password integration, cancel a crawl job and kill browser sessions. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

**Will an AI agent use up my Browserless API limit?**

actionlake paces every call to the limits in the Browserless service file: 60 calls a minute per connection. Repeated reads are answered from cache (29 Browserless actions can be), which never reaches Browserless.

**What does a Browserless action cost?**

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (64 Browserless actions page). Cache hits, searches, dry runs and calls Browserless refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

**Which Browserless API does it cover?**

The Browserless Enterprise and Cloud REST API 2.57.3 at your Browserless instance's API base URL, which you enter when connecting. It is built from Browserless's documentation as read on 23 October 2026. 64 actions in 24 areas, each one in the signed service file (version 1.0.0).

**Does actionlake keep my Browserless data, and where?**

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to an hour, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Browserless credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

**Which AI clients can use it?**

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

## More connectors like Browserless

Shares the most action names with

- [ZenRows 4](https://actionlake.com/connectors/zenrows)
- [Sumo Logic 4](https://actionlake.com/connectors/sumo-logic)
- [Grist 4](https://actionlake.com/connectors/grist)
- [Harbor 4](https://actionlake.com/connectors/harbor)
- [Oxylabs Web API 3](https://actionlake.com/connectors/oxylabs-web-api)
- [CockroachDB Cloud 2](https://actionlake.com/connectors/cockroachdb-cloud)

Joins with, on shared entities

- [Microsoft 365 Users 1](https://actionlake.com/connectors/microsoft-365-users)
- [Infisical 1](https://actionlake.com/connectors/infisical)
- [Rubrik Security Cloud 1](https://actionlake.com/connectors/rubrik-security-cloud)
- [Hugging Face 1](https://actionlake.com/connectors/hugging-face)
- [Snyk 1](https://actionlake.com/connectors/snyk)
- [Confluent Cloud 1](https://actionlake.com/connectors/confluent-cloud)

Browse

- [All Developer & infrastructure connectors](https://actionlake.com/connectors/category/developer-and-infrastructure)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by Browserless; the name is the vendor's own. Counts are from the Browserless service file, version 1.0.0.

## Give your agent Browserless today.

[Connect Browserless free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.

---

Source: https://actionlake.com/connectors/browserless
More: https://actionlake.com/llms.txt
