browser_screenshot
Take a screenshot of the current tab.
Returns an image of the current tab, so the model can see the page.
Inputs
| Name | Type | Default | Allowed values | Description |
|---|---|---|---|---|
sessionIdrequired | string | – | – | The session's id, from session_create. |
fullPage | boolean | false | – | The whole page instead of the visible part. |
This tool works in a session with a browser. On a shell-only session (created with browser: false) it answers browser_disabled. See the three kinds of session.
sessionId is the id that session_create returned. The server keeps no default session. This tool only reads, so it never resumes a session: if the session is stopped, it says so and tells the model to call session_resume and try again.
Example call
This is what an MCP client sends. You do not write it yourself: ask the model in plain words and it calls the tool.
{ "name": "browser_screenshot", "arguments": { "sessionId": "6c1f3c9e-1d2a-4f67-9b0e-1b2c3d4e5f60", "fullPage": false }}What it returns
An image (JPEG, quality 60) as MCP image content.
[image/jpeg]When a call fails, the result is marked as an error. Its text starts with the API’s error code, such as unauthorized or session_not_running, followed by its message.
Annotations
The server tells every client what this tool does to the world, so a client can decide what to ask you about before it runs.
| Annotation | Value |
|---|---|
title | Screenshot the page |
readOnlyHint | true |
destructiveHint | false |
openWorldHint | true |
The same thing with the API
| Endpoint | Reference |
|---|---|
POST /v1/sessions/{id}/browser/actions | Run browser actions |
These docs describe a beta API. Endpoints, fields and SDK methods may change before general availability; breaking changes will be listed in the changelog.