Browserbase tool

Learn how to use Browserbase tool with Composio

Overview

SLUG: BROWSERBASE_TOOL

Description

Browserbase is a serverless platform that enables developers to run, manage, and monitor headless browsers at scale, offering seamless integration with tools like Playwright, Puppeteer, and Selenium.

Authentication Details

generic_api_key
stringRequired

Connecting to Browserbase tool

Create an auth config

Use the dashboard to create an auth config for the Browserbase tool toolkit. This allows you to connect multiple Browserbase tool accounts to Composio for agents to use.

1

Select App

Navigate to [Browserbase tool](https://platform.composio.dev/marketplace/Browserbase tool).

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Browserbase tool Auth Config”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using API Key

1from composio import Composio
2
3# Replace these with your actual values
4browserbase_tool_auth_config_id = "ac_YOUR_BROWSERBASE_TOOL_CONFIG_ID" # Auth config ID created above
5user_id = "0000-0000-0000" # UUID from database/app
6
7composio = Composio()
8
9def authenticate_toolkit(user_id: str, auth_config_id: str):
10 # Replace this with a method to retrieve an API key from the user.
11 # Or supply your own.
12 user_api_key = input("[!] Enter API key")
13
14 connection_request = composio.connected_accounts.initiate(
15 user_id=user_id,
16 auth_config_id=auth_config_id,
17 config={"auth_scheme": "API_KEY", "val": user_api_key}
18 )
19
20 # API Key authentication is immediate - no redirect needed
21 print(f"Successfully connected Browserbase tool for user {user_id}")
22 print(f"Connection status: {connection_request.status}")
23
24 return connection_request.id
25
26
27connection_id = authenticate_toolkit(user_id, browserbase_tool_auth_config_id)
28
29# You can verify the connection using:
30connected_account = composio.connected_accounts.get(connection_id)
31print(f"Connected account: {connected_account}")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the [Browserbase tool toolkit’s playground](https://app.composio.dev/app/Browserbase tool)

Python
1from composio import Composio
2from openai import OpenAI
3import json
4
5openai = OpenAI()
6composio = Composio()
7
8# User ID must be a valid UUID format
9user_id = "0000-0000-0000" # Replace with actual user UUID from your database
10
11tools = composio.tools.get(user_id=user_id, toolkits=["BROWSERBASE_TOOL"])
12
13print("[!] Tools:")
14print(json.dumps(tools))
15
16def invoke_llm(task = "What can you do?"):
17 completion = openai.chat.completions.create(
18 model="gpt-4o",
19 messages=[
20 {
21 "role": "user",
22 "content": task, # Your task here!
23 },
24 ],
25 tools=tools,
26 )
27
28 # Handle Result from tool call
29 result = composio.provider.handle_tool_calls(user_id=user_id, response=completion)
30 print(f"[!] Completion: {completion}")
31 print(f"[!] Tool call result: {result}")
32
33invoke_llm()

Tool List

Tool Name: Create a new browser context

Description

Tool to create a new browser context. use when you need to obtain upload credentials for a custom user-data-directory in a project.

Action Parameters

projectId
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Retrieve a browser context

Description

Tool to retrieve details of a specific browser context. use when you have a context id and need its metadata.

Action Parameters

id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Browser Context

Description

Tool to update a specific browser context. use when you need fresh upload url and encryption details for an existing context, after obtaining a valid context id.

Action Parameters

id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Browser Session

Description

Tool to create a new browser session. use when you need an isolated browser context before performing any page interactions.

Action Parameters

browser
stringRequired
headless
boolean
locale
string
projectId
stringRequired
proxy
object
timezoneId
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Retrieve a browser session

Description

Tool to retrieve details of a specific browser session. use when you have a session id and need its metadata (status, urls, timestamps).

Action Parameters

id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Retrieve Session Debug URLs

Description

Tool to retrieve live debug urls for a specific session. use when you need to connect to a running session for debugging.

Action Parameters

id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Download Session Artifacts

Description

Tool to download files from a specific session. use after session completion to retrieve all generated artifacts in a zip archive.

Action Parameters

id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Retrieve Session Logs

Description

Tool to retrieve logs of a specific session. use after actions in a session to inspect network events and data exchange.

Action Parameters

id
stringRequired

Action Response

data
arrayRequired
error
string
successful
booleanRequired

Tool Name: List Browser Sessions

Description

Tool to list all browser sessions. use when you need to retrieve sessions with optional filtering by status or metadata query.

Action Parameters

q
string
status
string

Action Response

data
arrayRequired
error
string
successful
booleanRequired

Tool Name: Update Browser Session

Description

Tool to update the status of a specific browser session. use when you need to request session completion before timeout to avoid additional charges.

Action Parameters

id
stringRequired
projectId
stringRequired
status
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Browserbase load tool

Description

Load webpages url in a headless browser using browserbase and return the contents.

Action Parameters

url
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired