> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://platform.bctrl.ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://platform.bctrl.ai/_mcp/server.

# Open page

> Open a page in an active browser Runtime.

Open a new page in an active browser Runtime. The returned `page.id` is the
`pageId` used by the other browser page Tools and by Stagehand.

## Open a page

```ts
const page = await bctrl.tools.call("browser.pages.open", {
  url: "https://example.com/checkout",
}, { runtimeId: runtime.id });

console.log(page.id, page.url, page.title);
```

`url` is optional. If omitted, the Runtime opens a blank page. The Runtime
must be active and use the browser runtime type.

## Request parameters

| Parameter | Type     | Required | Description  |
| --------- | -------- | -------- | ------------ |
| `url`     | `string` | No       | URL to open. |

## Response

| Field    | Type      | Always present | Description                                             |
| -------- | --------- | -------------- | ------------------------------------------------------- |
| `id`     | `PageId`  | Yes            | Identifier used by other browser page Tools.            |
| `url`    | `string`  | Yes            | Current page URL.                                       |
| `title`  | `string`  | Yes            | Current page title.                                     |
| `active` | `boolean` | Yes            | Whether the page is active for subsequent browser work. |

## Run asynchronously

```ts
const call = await bctrl.tools.start("browser.pages.open", {
  url: "https://example.com",
}, { runtimeId: runtime.id });

const page = await bctrl.toolCalls.result(call.id, {
  waitSeconds: 30,
});
```

Use `bctrl.toolCalls.get(call.id)` to inspect progress or
`bctrl.toolCalls.cancel(call.id)` to cancel an active call.

## Next

* [List pages](/sdk/tools/browser/browser-pages-list) — find pages in the Runtime
* [Activate page](/sdk/tools/browser/browser-pages-activate) — choose the active page
* [Stagehand act](/sdk/tools/stagehand/stagehand-act) — automate the page semantically