Give AI agents a real cloud Chrome: open sessions, navigate, read pages, click, type and screenshot.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Show your active browsers and saved sessions in a workspace beside the conversation. Does not allocate or connect a browser. Optionally show a connected browser and its current screenshot. Use the sessionId and address from the selected browser to continue work.
Optional owned browser to inspect.
Show your active browsers and saved sessions in a workspace beside the conversation. Does not allocate or connect a browser. Optionally show a connected browser and its current screenshot. Use the sessionId and address from the selected browser to continue work.
| Argument | Type | Description |
|---|---|---|
| browserAddress | string | Optional owned browser to inspect. |
{
"type": "object",
"properties": {
"browserAddress": {
"type": "string",
"description": "Optional owned browser to inspect."
}
}
}Click on a page element
| Argument | Type | Description |
|---|---|---|
| selector* | string | CSS selector of the element to click |
| sessionId* | string | ID de sesión del navegador conectado |
{
"type": "object",
"required": [
"sessionId",
"selector"
],
"properties": {
"selector": {
"type": "string",
"description": "CSS selector of the element to click"
},
"sessionId": {
"type": "string",
"description": "ID de sesión del navegador conectado"
}
}
}Close a specific browser
| Argument | Type | Description |
|---|---|---|
| address* | string | Address of the browser to close |
{
"type": "object",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"description": "Address of the browser to close"
}
}
}Connect to CloudBrowser browser for direct control
| Argument | Type | Description |
|---|---|---|
| sessionId* | string | Unique ID for the control session |
| browserAddress* | string | WebSocket URL of the CloudBrowser browser (format: ws://browser.cloudbrowser.ai/devtools/browser/[ID]) |
{
"type": "object",
"required": [
"browserAddress",
"sessionId"
],
"properties": {
"sessionId": {
"type": "string",
"description": "Unique ID for the control session"
},
"browserAddress": {
"type": "string",
"description": "WebSocket URL of the CloudBrowser browser (format: ws://browser.cloudbrowser.ai/devtools/browser/[ID])"
}
}
}Detect captcha widgets in the current page
| Argument | Type | Description |
|---|---|---|
| sessionId* | string | Session ID of the connected browser |
| browserAddress | string | Optional websocket address for automatic reconnect if session state was lost |
{
"type": "object",
"required": [
"sessionId"
],
"properties": {
"sessionId": {
"type": "string",
"description": "Session ID of the connected browser"
},
"browserAddress": {
"type": "string",
"description": "Optional websocket address for automatic reconnect if session state was lost"
}
}
}Desconectar del navegador controlado
| Argument | Type | Description |
|---|---|---|
| sessionId* | string | Session ID of the browser to disconnect |
{
"type": "object",
"required": [
"sessionId"
],
"properties": {
"sessionId": {
"type": "string",
"description": "Session ID of the browser to disconnect"
}
}
}Execute JavaScript code on the page
| Argument | Type | Description |
|---|---|---|
| script* | string | JavaScript code to execute |
| sessionId* | string | ID de sesión del navegador conectado |
{
"type": "object",
"required": [
"sessionId",
"script"
],
"properties": {
"script": {
"type": "string",
"description": "JavaScript code to execute"
},
"sessionId": {
"type": "string",
"description": "ID de sesión del navegador conectado"
}
}
}Get list of active browsers
No arguments.
{
"type": "object",
"required": [],
"properties": {}
}Obtener lista de navegadores conectados
No arguments.
{
"type": "object",
"required": [],
"properties": {}
}Get information about elements matching a selector
| Argument | Type | Description |
|---|---|---|
| selector* | string | Selector CSS de los elementos |
| sessionId* | string | ID de sesión del navegador conectado |
{
"type": "object",
"required": [
"sessionId",
"selector"
],
"properties": {
"selector": {
"type": "string",
"description": "Selector CSS de los elementos"
},
"sessionId": {
"type": "string",
"description": "ID de sesión del navegador conectado"
}
}
}Get HTML content of the current page
| Argument | Type | Description |
|---|---|---|
| sessionId* | string | ID de sesión del navegador conectado |
{
"type": "object",
"required": [
"sessionId"
],
"properties": {
"sessionId": {
"type": "string",
"description": "ID de sesión del navegador conectado"
}
}
}Get list of saved sessions
No arguments.
{
"type": "object",
"required": [],
"properties": {}
}Navigate to a specific URL
| Argument | Type | Description |
|---|---|---|
| url* | string | URL to navigate to |
| sessionId* | string | Session ID of the connected browser |
| waitUntil | string | When to consider navigation complete |
| captchaType | string | Preferred captcha type to solve if multiple are detected |
| detectCaptcha | boolean | Detect captcha widgets after navigation |
| browserAddress | string | Optional websocket address for automatic reconnect if session state was lost |
| autoSolveCaptcha | boolean | Automatically solve detected captcha using CloudBrowserPublicApi /solve and inject token |
| captchaExtraData | object | Additional data forwarded to CloudBrowserPublicApi /solve |
| autoSubmitCaptcha | boolean |
Open a remote browser in the cloud using CloudBrowser.ai
| Argument | Type | Description |
|---|---|---|
| args | array | List of custom browser arguments. If null, default arguments will be used |
| label | string | Specifies the instance name, useful for recognizing it in the list of open remote desktops |
| browser | number | Browser type: 0 = Chrome, 2 = Chromium, 3 = ChromeHeadlessShell. Default 0 |
| stealth | boolean | Enable or disable stealth mode. Default true |
| headless | boolean | Indicates whether the browser should open in headless mode (true) or with GUI (false). Default false |
| keepOpen | number | Seconds of inactivity before browser closes automatically. Value 0 is never, default 300 seconds |
| saveSession | boolean | If true, browser session is saved periodically and at the end, cookies and local storage, but not open tabs. Default false |
| recoverSession | boolean | If true, loads the label when starting a previous session (if it exists), to know which session we save/restore. Default false |
| ignoredDefaultArgs |
Delete a saved session
| Argument | Type | Description |
|---|---|---|
| label* | string | Label of the session to delete |
{
"type": "object",
"required": [
"label"
],
"properties": {
"label": {
"type": "string",
"description": "Label of the session to delete"
}
}
}Resume an existing saved session owned by the connected account. Reuses an active browser with the label, otherwise opens one metered browser with a 180-second idle timeout, restoring cookies and storage, not tabs. Only call after the user requests resume. Never retry an ambiguous allocation or change requestId to retry. Close the returned browser when finished.
| Argument | Type | Description |
|---|---|---|
| label* | string | |
| requestId* | string | Unique operation ID. Repeated calls for the same operation must use the same ID. |
{
"type": "object",
"required": [
"label",
"requestId"
],
"properties": {
"label": {
"type": "string",
"maxLength": 256,
"minLength": 1
},
"requestId": {
"type": "string",
"maxLength": 80,
"minLength": 16,
"description": "Unique operation ID. Repeated calls for the same operation must use the same ID."
}
}
}Start remote desktop access to a browser
| Argument | Type | Description |
|---|---|---|
| address* | string | Dirección del navegador |
{
"type": "object",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"description": "Dirección del navegador"
}
}
}Stop remote desktop access to a browser
| Argument | Type | Description |
|---|---|---|
| address* | string | Dirección del navegador |
{
"type": "object",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"description": "Dirección del navegador"
}
}
}Take screenshot of the current page
| Argument | Type | Description |
|---|---|---|
| type | string | Formato de imagen |
| fullPage | boolean | Capture full page or viewport only |
| sessionId* | string | ID de sesión del navegador conectado |
{
"type": "object",
"required": [
"sessionId"
],
"properties": {
"type": {
"enum": [
"png",
"jpeg"
],
"type": "string",
"default": "png",
"description": "Formato de imagen"
},
"fullPage": {
"type": "boolean",
"default": false,
"description": "Capture full page or viewport only"
},
"sessionId": {
"type": "string",
"description": "ID de sesión del navegador conectado"
}
}
}Type text into an element
| Argument | Type | Description |
|---|---|---|
| text* | string | Text to type |
| clear | boolean | Clear the field before typing |
| selector* | string | CSS selector of the element to type into |
| sessionId* | string | ID de sesión del navegador conectado |
{
"type": "object",
"required": [
"sessionId",
"selector",
"text"
],
"properties": {
"text": {
"type": "string",
"description": "Text to type"
},
"clear": {
"type": "boolean",
"default": true,
"description": "Clear the field before typing"
},
"selector": {
"type": "string",
"description": "CSS selector of the element to type into"
},
"sessionId": {
"type": "string",
"description": "ID de sesión del navegador conectado"
}
}
}| Attempt form submit after injecting solved captcha token |
{
"type": "object",
"required": [
"sessionId",
"url"
],
"properties": {
"url": {
"type": "string",
"description": "URL to navigate to"
},
"sessionId": {
"type": "string",
"description": "Session ID of the connected browser"
},
"waitUntil": {
"enum": [
"load",
"domcontentloaded",
"networkidle0",
"networkidle2"
],
"type": "string",
"default": "load",
"description": "When to consider navigation complete"
},
"captchaType": {
"enum": [
"recaptcha",
"hcaptcha",
"turnstile"
],
"type": "string",
"description": "Preferred captcha type to solve if multiple are detected"
},
"detectCaptcha": {
"type": "boolean",
"default": false,
"description": "Detect captcha widgets after navigation"
},
"browserAddress": {
"type": "string",
"description": "Optional websocket address for automatic reconnect if session state was lost"
},
"autoSolveCaptcha": {
"type": "boolean",
"default": false,
"description": "Automatically solve detected captcha using CloudBrowserPublicApi /solve and inject token"
},
"captchaExtraData": {
"type": "object",
"description": "Additional data forwarded to CloudBrowserPublicApi /solve",
"additionalProperties": true
},
"autoSubmitCaptcha": {
"type": "boolean",
"default": false,
"description": "Attempt form submit after injecting solved captcha token"
}
}
}| array |
| List of default arguments to ignore. If null, default ignored arguments will be used |
{
"type": "object",
"required": [],
"properties": {
"args": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of custom browser arguments. If null, default arguments will be used"
},
"label": {
"type": "string",
"description": "Specifies the instance name, useful for recognizing it in the list of open remote desktops"
},
"browser": {
"enum": [
0,
2,
3
],
"type": "number",
"default": 0,
"description": "Browser type: 0 = Chrome, 2 = Chromium, 3 = ChromeHeadlessShell. Default 0"
},
"stealth": {
"type": "boolean",
"default": true,
"description": "Enable or disable stealth mode. Default true"
},
"headless": {
"type": "boolean",
"default": false,
"description": "Indicates whether the browser should open in headless mode (true) or with GUI (false). Default false"
},
"keepOpen": {
"type": "number",
"default": 300,
"description": "Seconds of inactivity before browser closes automatically. Value 0 is never, default 300 seconds"
},
"saveSession": {
"type": "boolean",
"default": false,
"description": "If true, browser session is saved periodically and at the end, cookies and local storage, but not open tabs. Default false"
},
"recoverSession": {
"type": "boolean",
"default": false,
"description": "If true, loads the label when starting a previous session (if it exists), to know which session we save/restore. Default false"
},
"ignoredDefaultArgs": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of default arguments to ignore. If null, default ignored arguments will be used"
}
}
}