From mcp-browser-use
Executes AI browser agents for web interactions, data extraction, research, and workflow automation. Learns and reuses skills; supports background tasks and multi-source synthesis.
npx claudepluginhub saik0s/mcp-browser-use --plugin mcp-browser-useThis skill uses the workspace's default tool permissions.
AI-powered browser automation for web interactions, research, and data extraction powered by the browser-use library.
Builds reliable browser automation skills for specific websites by iteratively running tasks, analyzing traces, and refining strategy.md. Supports parallel sub-agent execution.
Provides cloud browser automation via Browser Use API for AI-driven web scraping, form filling, multi-step tasks, and screenshots when local browser unavailable.
Automates browser tasks with AI: navigate sites, fill forms, extract structured data, log in with credentials, build reusable workflows via CLI. Uses visual/a11y reasoning when selectors unavailable.
Share bugs, ideas, or general feedback.
AI-powered browser automation for web interactions, research, and data extraction powered by the browser-use library.
Execute a browser automation task using AI. Supports skill-based execution, learning mode, and background task execution.
Parameters:
task (string, required) - Natural language description of what to do in the browsermax_steps (integer, optional) - Maximum number of agent steps (default: from settings)skill_name (string, optional) - Name of a learned skill to use for hintsskill_params (string or dict, optional) - Parameters for the skill (JSON string or dict)learn (boolean, optional) - Enable learning mode to discover and extract APIssave_skill_as (string, optional) - Name to save learned skill (requires learn=True)Returns: Result of the browser automation task. In learning mode, includes skill extraction status.
Examples:
# Basic usage
Search for "Claude Code plugins" on Google and summarize the top 3 results
# With max steps
Fill out the contact form at https://example.com/contact with my information
max_steps: 20
# Learning mode - discover and save a skill
Go to GitHub trending page and extract the top 5 repositories
learn: true
save_skill_as: github_trending
# Using a learned skill
task: Get trending Python repositories
skill_name: github_trending
skill_params: {"language": "python", "limit": 10}
Perform multi-source research on a topic with AI-guided search and synthesis.
Parameters:
topic (string, required) - The research topic or question to investigatemax_searches (integer, optional) - Maximum number of web searches (default: from settings)save_to_file (string, optional) - Optional file path to save the research reportReturns: A comprehensive research report in markdown format
Examples:
# Basic research
What are the latest developments in AI-powered browser automation?
# With search limit
Research the security implications of CDP-based browser automation
max_searches: 10
# Save to file
Compare Playwright, Puppeteer, and Selenium for 2025
save_to_file: /path/to/research/browser-automation-comparison.md
List all available learned browser skills with usage statistics.
Parameters: None
Returns: JSON list of skill summaries with name, description, success rate, usage count, and last used timestamp
Example:
{
"skills": [
{
"name": "github_trending",
"description": "Extract trending repositories from GitHub",
"success_rate": 95.0,
"usage_count": 20,
"last_used": "2025-12-20T18:00:00"
}
],
"skills_directory": "/Users/user/.config/browser-skills"
}
Get full details of a specific skill including API endpoints, parameters, and execution hints.
Parameters:
skill_name (string, required) - Name of the skill to retrieveReturns: Full skill definition in YAML format
Example:
skill_name: github_trending
Delete a learned skill by name.
Parameters:
skill_name (string, required) - Name of the skill to deleteReturns: Success or error message
Example:
skill_name: outdated_skill
Check if the browser automation server is running and get system statistics.
Parameters: None
Returns: JSON with server health status, uptime, memory usage, and running tasks
Example Response:
{
"status": "healthy",
"uptime_seconds": 3600.5,
"memory_mb": 256.3,
"running_tasks": 2,
"tasks": [
{
"task_id": "a1b2c3d4",
"tool": "run_browser_agent",
"stage": "navigating",
"progress": "5/100",
"message": "Searching Google..."
}
],
"stats": {
"total_completed": 45,
"total_failed": 2,
"avg_duration_sec": 32.1
}
}
List recent browser automation and research tasks with filtering.
Parameters:
limit (integer, optional) - Maximum number of tasks to return (default: 20)status_filter (string, optional) - Filter by status: "running", "completed", "failed", "pending"Returns: JSON list of recent tasks
Example:
# List recent tasks
limit: 10
# List only running tasks
status_filter: running
limit: 5
# List failed tasks
status_filter: failed
Get detailed information about a specific task including input, output, and progress.
Parameters:
task_id (string, required) - Task ID (full UUID or prefix match)Returns: JSON with complete task details, timestamps, and result/error
Example:
task_id: a1b2c3d4
Cancel a running browser agent or research task.
Parameters:
task_id (string, required) - Task ID (full UUID or prefix match)Returns: JSON with success status and message
Example:
task_id: a1b2c3d4
run_deep_research with your research questionrun_browser_agent for follow-up exploration of specific sourcestask_list to monitor progress# Step 1: Deep research
run_deep_research
topic: What are the best practices for MCP server development in 2025?
max_searches: 8
# Step 2: Follow-up investigation
run_browser_agent
task: Go to the top-ranked article and extract code examples
run_browser_agent with task describing the formtask_get to verify completionrun_browser_agent
task: Fill out the contact form at https://example.com/contact with name "John Doe", email "john@example.com", and message "Request for demo"
max_steps: 30
run_browser_agent with learn: true to discover APIssave_skill_asskill_list to see learned skillsskill_name parameter for faster execution# Step 1: Learn a skill
run_browser_agent
task: Go to Hacker News and extract the top 10 stories with titles, URLs, and scores
learn: true
save_skill_as: hackernews_top_stories
# Step 2: List learned skills
skill_list
# Step 3: Reuse the skill (faster direct execution)
run_browser_agent
task: Get current top stories from Hacker News
skill_name: hackernews_top_stories
skill_params: {"limit": 5}
task_list to check statustask_get for detailed progresstask_cancel if needed# Step 1: Start task
run_browser_agent
task: Research all articles on example.com blog and create a summary
max_steps: 200
# Step 2: Check progress
task_list
status_filter: running
# Step 3: Get details
task_get
task_id: a1b2c3d4
# Step 4: Cancel if needed
task_cancel
task_id: a1b2c3d4
When a skill is learned with API endpoints, it supports direct execution which bypasses the AI agent for much faster performance:
Fallback behavior: If direct execution fails (auth required, API changed), automatically falls back to agent-based execution.
Both run_browser_agent and run_deep_research support real-time progress tracking:
Long-running tasks automatically run in background when requested by the MCP client:
task_list and task_gettask_cancelThe browser-use MCP server can be configured via ~/.config/mcp-server-browser-use/config.json or environment variables. Key settings:
browser.headless - Run browser in headless mode (default: true)browser.cdp_url - Connect to external Chrome via CDP (optional)agent.max_steps - Default maximum steps (default: 100)research.max_searches - Default research searches (default: 5)skills.enabled - Enable skill learning and execution (default: true)skills.directory - Where to store learned skills (default: ~/.config/browser-skills/)# Check server health
health_check
# Check if server is running
# In terminal: mcp-server-browser-use status
# List running tasks
task_list
status_filter: running
# Get task details
task_get
task_id: <task_id>
# Cancel if stuck
task_cancel
task_id: <task_id>
# Get skill details to verify parameters
skill_get
skill_name: my_skill
# Try without skill to re-learn
run_browser_agent
task: <original task>
learn: true
save_skill_as: my_skill_v2