Browser-Use MCP Server

by Saik0s
Verified

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Integration with Google's Gemini language models via their API for AI-driven browser automation

  • Integration with Ollama for local language model inference to power browser automation

  • Integration with OpenAI's language models via their API for AI-driven browser automation

browser-use MCP server

Project Note: This MCP server implementation builds upon the browser-use/web-ui foundation. Core browser automation logic and configuration patterns are adapted from the original project.

AI-driven browser automation server implementing the Model Context Protocol (MCP) for natural language browser control.

Features

  • 🧠 MCP Integration - Full protocol implementation for AI agent communication
  • 🌐 Browser Automation - Page navigation, form filling, and element interaction
  • πŸ‘οΈ Visual Understanding - Screenshot analysis and vision-based interactions
  • πŸ”„ State Persistence - Maintain browser sessions between tasks
  • πŸ”Œ Multi-LLM Support - OpenAI, Anthropic, Azure, DeepSeek integration

Quick Start

Prerequisites

  • Python 3.11 or higher
  • uv (fast Python package installer)
  • Chrome/Chromium browser

Installation

Claude Desktop

On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json On Windows: %APPDATA%/Claude/claude_desktop_config.json

"mcpServers": { "browser-use": { "command": "uvx", "args": [ "mcp-server-browser-use", ], "env": { "OPENROUTER_API_KEY": "", "OPENROUTER_ENDPOINT": "https://openrouter.ai/api/v1", "OPENAI_ENDPOINT": "https://api.openai.com/v1", "OPENAI_API_KEY": "", "ANTHROPIC_ENDPOINT": "https://api.anthropic.com", "ANTHROPIC_API_KEY": "", "GOOGLE_API_KEY": "", "AZURE_OPENAI_ENDPOINT": "", "AZURE_OPENAI_API_KEY": "", "DEEPSEEK_ENDPOINT": "https://api.deepseek.com", "DEEPSEEK_API_KEY": "", "MISTRAL_API_KEY": "", "MISTRAL_ENDPOINT": "https://api.mistral.ai/v1", "OLLAMA_ENDPOINT": "http://localhost:11434", "ANONYMIZED_TELEMETRY": "true", "BROWSER_USE_LOGGING_LEVEL": "info", "CHROME_PATH": "", "CHROME_USER_DATA": "", "CHROME_DEBUGGING_PORT": "9222", "CHROME_DEBUGGING_HOST": "localhost", "CHROME_PERSISTENT_SESSION": "false", "BROWSER_HEADLESS": "false", "BROWSER_DISABLE_SECURITY": "false", "BROWSER_WINDOW_WIDTH": "1280", "BROWSER_WINDOW_HEIGHT": "720", "BROWSER_TRACE_PATH": "trace.json", "BROWSER_RECORDING_PATH": "recording.mp4", "RESOLUTION": "1920x1080x24", "RESOLUTION_WIDTH": "1920", "RESOLUTION_HEIGHT": "1080", "VNC_PASSWORD": "youvncpassword", "MCP_MODEL_PROVIDER": "anthropic", "MCP_MODEL_NAME": "claude-3-5-sonnet-20241022", "MCP_TEMPERATURE": "0.3", "MCP_MAX_STEPS": "30", "MCP_USE_VISION": "true", "MCP_MAX_ACTIONS_PER_STEP": "5", "MCP_TOOL_CALL_IN_CONTENT": "true" } }

Local Development

"browser-use": { "command": "uv", "args": [ "--directory", "/path/to/mcp-browser-use", "run", "mcp-server-browser-use" ], "env": { ... } }

Development

# Install dev dependencies uv sync # Run with debugger npx @modelcontextprotocol/inspector uv --directory . run mcp-server-browser-use

Troubleshooting

  • Browser Conflicts: Close all Chrome instances before starting.
  • API Errors: Verify API keys in environment variables match your LLM provider.
  • Vision Support: Ensure MCP_USE_VISION=true for screenshot analysis.

Provider Configuration

The server supports multiple LLM providers through environment variables. Here are the available options for MCP_MODEL_PROVIDER:

ProviderValueRequired Env Variables
AnthropicanthropicANTHROPIC_API_KEYANTHROPIC_ENDPOINT (optional)
OpenAIopenaiOPENAI_API_KEYOPENAI_ENDPOINT (optional)
Azure OpenAIazure_openaiAZURE_OPENAI_API_KEYAZURE_OPENAI_ENDPOINT
DeepSeekdeepseekDEEPSEEK_API_KEYDEEPSEEK_ENDPOINT (optional)
GeminigeminiGOOGLE_API_KEY
MistralmistralMISTRAL_API_KEYMISTRAL_ENDPOINT (optional)
OllamaollamaOLLAMA_ENDPOINT (optional, defaults to localhost:11434)
OpenRouteropenrouterOPENROUTER_API_KEYOPENROUTER_ENDPOINT (optional)

Notes:

  • For endpoints marked as optional, default values will be used if not specified
  • Temperature can be configured using MCP_TEMPERATURE (default: 0.3)
  • Model can be specified using MCP_MODEL_NAME
  • For Ollama models, additional context settings like num_ctx and num_predict are configurable

Credits

This project extends the browser-use/web-ui under MIT License. Special thanks to the original authors for their browser automation framework.

License

MIT - See LICENSE for details.

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Facilitates browser automation with custom capabilities and agent-based interactions, integrated through the browser-use library.

  1. Features
    1. Quick Start
      1. Prerequisites
      2. Installation
      3. Local Development
    2. Development
      1. Troubleshooting
        1. Provider Configuration
          1. Notes:
        2. Credits
          1. License