UNPKG

levisnkyyy-browser-use-mcp

Version:

MCP server for Browser-Use API

341 lines 8.03 kB
export const tools = [ { name: 'browser_use_create_task', description: 'Create a new browser automation task', inputSchema: { type: 'object', properties: { task: { type: 'string', description: 'The task description for the browser agent to execute', }, project_folder: { type: 'string', description: 'Project folder path for saving files and as unique browser session identifier', }, temperature: { type: 'number', description: 'LLM temperature (0.0 to 1.0)', default: 0.0, minimum: 0, maximum: 1, }, browser_config: { type: 'object', description: 'Browser configuration options', properties: { headless: { type: 'boolean', description: 'Run browser in headless mode', default: true, }, viewport: { type: 'object', properties: { width: { type: 'number' }, height: { type: 'number' }, }, }, user_agent: { type: 'string', description: 'Custom user agent string', }, }, }, agent_settings: { type: 'object', description: 'Agent configuration options', properties: { max_steps: { type: 'number', description: 'Maximum number of steps the agent can take', }, use_screenshot: { type: 'boolean', description: 'Whether to use screenshots for navigation', }, }, }, output_format: { type: 'object', description: 'Custom output format schema', }, session_id: { type: 'string', description: 'Reuse an existing browser session', }, }, required: ['task', 'project_folder'], }, }, { name: 'browser_use_create_task_sync', description: 'Create and execute a browser automation task synchronously, waiting for completion', inputSchema: { type: 'object', properties: { task: { type: 'string', description: 'The task description for the browser agent to execute', }, project_folder: { type: 'string', description: 'Project folder path for saving files and as unique browser session identifier', }, temperature: { type: 'number', description: 'LLM temperature (0.0 to 1.0)', default: 0.0, minimum: 0, maximum: 1, }, browser_config: { type: 'object', description: 'Browser configuration options', properties: { headless: { type: 'boolean', description: 'Run browser in headless mode', default: true, }, viewport: { type: 'object', properties: { width: { type: 'number' }, height: { type: 'number' }, }, }, user_agent: { type: 'string', description: 'Custom user agent string', }, }, }, agent_settings: { type: 'object', description: 'Agent configuration options', properties: { max_steps: { type: 'number', description: 'Maximum number of steps the agent can take', }, use_screenshot: { type: 'boolean', description: 'Whether to use screenshots for navigation', }, }, }, output_format: { type: 'object', description: 'Custom output format schema', }, session_id: { type: 'string', description: 'Reuse an existing browser session', }, }, required: ['task', 'project_folder'], }, }, { name: 'browser_use_get_task', description: 'Get the status and result of a browser automation task', inputSchema: { type: 'object', properties: { task_id: { type: 'string', description: 'The ID of the task to retrieve', }, }, required: ['task_id'], }, }, { name: 'browser_use_list_tasks', description: 'List all browser automation tasks', inputSchema: { type: 'object', properties: {}, }, }, { name: 'browser_use_cancel_task', description: 'Cancel a running browser automation task', inputSchema: { type: 'object', properties: { task_id: { type: 'string', description: 'The ID of the task to cancel', }, }, required: ['task_id'], }, }, { name: 'browser_use_pause_task', description: 'Pause a running browser automation task', inputSchema: { type: 'object', properties: { task_id: { type: 'string', description: 'The ID of the task to pause', }, }, required: ['task_id'], }, }, { name: 'browser_use_get_task_history', description: 'Get the execution history of a browser automation task', inputSchema: { type: 'object', properties: { task_id: { type: 'string', description: 'The ID of the task', }, }, required: ['task_id'], }, }, { name: 'browser_use_get_screenshot', description: 'Get an AI-generated description of the current browser state for a task and save the screenshot', inputSchema: { type: 'object', properties: { task_id: { type: 'string', description: 'The ID of the task', }, project_folder: { type: 'string', description: 'Project folder path for saving the screenshot', }, filename: { type: 'string', description: 'Optional filename for the screenshot (without extension)', }, }, required: ['task_id', 'project_folder'], }, }, { name: 'browser_use_create_session', description: 'Create a new browser session that can be reused across tasks', inputSchema: { type: 'object', properties: { headless: { type: 'boolean', description: 'Run browser in headless mode', default: true, }, viewport: { type: 'object', description: 'Browser viewport dimensions', properties: { width: { type: 'number', default: 1280 }, height: { type: 'number', default: 720 }, }, }, user_agent: { type: 'string', description: 'Custom user agent string', }, proxy: { type: 'string', description: 'Proxy server URL', }, cookies: { type: 'array', description: 'Initial cookies to set', items: { type: 'object', properties: { name: { type: 'string' }, value: { type: 'string' }, domain: { type: 'string' }, }, required: ['name', 'value', 'domain'], }, }, }, }, }, { name: 'browser_use_close_session', description: 'Close a browser session', inputSchema: { type: 'object', properties: { session_id: { type: 'string', description: 'The ID of the session to close', }, }, required: ['session_id'], }, }, { name: 'browser_use_stream_task', description: 'Stream real-time updates from a running task', inputSchema: { type: 'object', properties: { task_id: { type: 'string', description: 'The ID of the task to stream', }, }, required: ['task_id'], }, }, { name: 'browser_use_health', description: 'Check the health status of the Browser-Use API', inputSchema: { type: 'object', properties: {}, }, }, { name: 'browser_use_scan', description: 'Scan a URL to take a screenshot, save it, and get an AI-generated description of the webpage', inputSchema: { type: 'object', properties: { url: { type: 'string', description: 'The URL to scan (must start with http:// or https://)', }, filename: { type: 'string', description: 'Unique filename for saving the screenshot (without extension)', }, project_folder: { type: 'string', description: 'Project folder path for saving the screenshot', }, }, required: ['url', 'filename', 'project_folder'], }, }, { name: 'browser_use_get_snapshot', description: 'Get a snapshot (base64 encoded screenshot) of the current browser state for a task', inputSchema: { type: 'object', properties: { task_id: { type: 'string', description: 'The ID of the task to get a snapshot from', }, }, required: ['task_id'], }, }, ];