MCP Browser Use Server

local-only server

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

Integrations

  • Includes support for Google API integration as evidenced by the GOOGLE_API_KEY environment variable in the configuration.

  • Supports integration with Ollama for local execution of Large Language Models, providing an alternative to cloud-based AI providers.

  • Integrates with OpenAI's models for language and vision capabilities, allowing the browser automation system to leverage OpenAI's AI models for processing and generating content.

Servidor MCP con uso del navegador

Servidor MCP para uso del navegador .

Descripción general

Este repositorio contiene el servidor para la biblioteca de uso del navegador , que proporciona un potente sistema de automatización del navegador que permite a los agentes de IA interactuar con los navegadores web mediante lenguaje natural. El servidor se basa en el Protocolo de Contexto de Modelo (MCP) de Anthropic y se integra perfectamente con la biblioteca de uso del navegador .

Características

  1. Control del navegador
  • Interacciones automatizadas del navegador a través del lenguaje natural
  • Capacidades de navegación, llenado de formularios, clics y desplazamiento
  • Gestión de pestañas y funcionalidad de captura de pantalla
  • Gestión de cookies y estados
  1. Sistema de agentes
  • Implementación de agente personalizado en custom_agent.py
  • Detección de elementos basada en visión
  • Respuestas JSON estructuradas para acciones
  • Gestión y resumen del historial de mensajes
  1. Configuración
  • Configuración basada en el entorno para claves y configuraciones de API
  • Configuración del navegador Chrome (puerto de depuración, persistencia)
  • Selección del proveedor del modelo y parámetros

Dependencias

Este proyecto se basa en los siguientes paquetes de Python:

PaqueteVersiónDescripción
Almohada>=10.1.0Bifurcación de Python Imaging Library (PIL) que agrega capacidades de procesamiento de imágenes a su intérprete de Python.
uso del navegador==0.1.19Un potente sistema de automatización de navegadores que permite a los agentes de IA interactuar con los navegadores web mediante lenguaje natural. La biblioteca principal que impulsa las capacidades de automatización de navegadores de este proyecto.
Fastapi>=0.115.6Framework web moderno, rápido y de alto rendimiento para crear API con Python 3.7+, basado en sugerencias de tipos estándar de Python. Se utiliza para crear el servidor que expone la funcionalidad del agente.
fastmcp>=0,4,1Un marco que envuelve FastAPI para crear servidores MCP (Protocolo de contexto de modelo).
instructor>=1.7.2Biblioteca para la generación y validación de resultados estructurados con modelos OpenAI. Permite extraer datos estructurados de las respuestas de los modelos.
cadena larga>=0,3,14Marco para el desarrollo de aplicaciones con grandes modelos de lenguaje (LLM). Proporciona herramientas para encadenar diferentes componentes de modelos de lenguaje e interactuar con diversas API y fuentes de datos.
langchain-google-genai>=2.1.1Integración de LangChain con los modelos GenAI de Google, que permite el uso de las capacidades de inteligencia artificial generativa de Google dentro del marco de LangChain.
langchain-openai>=0,2,14Integración de LangChain con los modelos de OpenAI. Permite usar modelos de OpenAI (como GPT-4) dentro del framework LangChain. Se utiliza en este proyecto para interactuar con los modelos de lenguaje y visión de OpenAI.
langchain-ollama>=0,2,2Integración de Langchain para Ollama, que permite la ejecución local de LLM.
openai>=1,59,5Biblioteca cliente oficial de Python para la API de OpenAI. Se utiliza para interactuar directamente con los modelos de OpenAI (si es necesario, además de LangChain).
python-dotenv>=1.0.1Lee pares clave-valor de un archivo .env y los configura como variables de entorno. Simplifica el desarrollo local y la gestión de la configuración.
pidantico>=2.10.5Validación de datos y gestión de configuraciones mediante anotaciones de tipos de Python. Permite la aplicación de tipos en tiempo de ejecución y la creación automática de modelos. Esencial para definir modelos de datos estructurados en el agente.
clip de pyper>=1.9.0Módulo Python multiplataforma para funciones de copiar y pegar el portapapeles.
uvicornio>=0,22,0Implementación del servidor web ASGI para Python. Se utiliza para la aplicación FastAPI.

Componentes

Recursos

El servidor implementa un sistema de automatización del navegador con:

  • Integración con la biblioteca de uso del navegador para un control avanzado del navegador
  • Capacidades de automatización del navegador personalizado
  • Sistema de interacción basado en agentes con capacidades de visión
  • Gestión de estados persistentes
  • Configuraciones de modelo personalizables

Requisitos

  • Sistemas operativos (Linux, macOS, Windows; no hemos realizado pruebas con Docker ni Microsoft WSL)
  • Python 3.11 o superior
  • uv (instalador rápido de paquetes de Python)
  • Navegador Chrome/Chromium
  • Escritorio de Claude

Inicio rápido

Escritorio de Claude

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

Instalación mediante herrería

Para instalar Browser Use for Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install @JovaniPink/mcp-browser-use --client claude
"mcpServers": { "mcp_server_browser_use": { "command": "uvx", "args": [ "mcp-server-browser-use", ], "env": { "OPENAI_ENDPOINT": "https://api.openai.com/v1", "OPENAI_API_KEY": "", "ANTHROPIC_API_KEY": "", "GOOGLE_API_KEY": "", "AZURE_OPENAI_ENDPOINT": "", "AZURE_OPENAI_API_KEY": "", // "DEEPSEEK_ENDPOINT": "https://api.deepseek.com", // "DEEPSEEK_API_KEY": "", // Set to false to disable anonymized telemetry "ANONYMIZED_TELEMETRY": "false", // Chrome settings "CHROME_PATH": "", "CHROME_USER_DATA": "", "CHROME_DEBUGGING_PORT": "9222", "CHROME_DEBUGGING_HOST": "localhost", // Set to true to keep browser open between AI tasks "CHROME_PERSISTENT_SESSION": "false", // Model settings "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" } } }

Variables de entorno

Variables ambientales clave:

# API Keys ANTHROPIC_API_KEY=anthropic_key # Chrome Configuration # Optional: Path to Chrome executable CHROME_PATH=/path/to/chrome # Optional: Chrome user data directory CHROME_USER_DATA=/path/to/user/data # Default: 9222 CHROME_DEBUGGING_PORT=9222 # Default: localhost CHROME_DEBUGGING_HOST=localhost # Keep browser open between tasks CHROME_PERSISTENT_SESSION=false # Model Settings # Options: anthropic, openai, azure, deepseek MCP_MODEL_PROVIDER=anthropic # Model name 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

Desarrollo

Configuración

  1. Clonar el repositorio:
git clone https://github.com/JovaniPink/mcp-browser-use.git cd mcp-browser-use
  1. Crear y activar entorno virtual:
python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
  1. Instalar dependencias:
uv sync
  1. Iniciar el servidor
uv run mcp-browser-use

Depuración

Para depurar, utilice el Inspector MCP :

npx @modelcontextprotocol/inspector uv --directory /path/to/project run mcp-server-browser-use

El Inspector mostrará una URL para la interfaz de depuración.

Acciones del navegador

El servidor admite varias acciones del navegador a través del lenguaje natural:

  • Navegación: Ir a URL, retroceder/avanzar, actualizar
  • Interacción: hacer clic, escribir, desplazarse, pasar el cursor
  • Formularios: Complete formularios, envíelos, seleccione opciones
  • Estado: Obtener el contenido de la página, tomar capturas de pantalla
  • Pestañas: crear, cerrar, cambiar entre pestañas
  • Visión: Encuentra elementos por apariencia visual
  • Cookies y almacenamiento: Administrar el estado del navegador

Seguridad

Cabe señalar que existen algunas configuraciones de Chrome que permiten que el servidor controle el navegador. Esto representa un riesgo de seguridad y debe usarse con precaución. El servidor no está diseñado para usarse en un entorno de producción.

Detalles de seguridad: SECURITY.MD

Contribuyendo

Agradecemos las contribuciones a este proyecto. Siga estos pasos:

  1. Bifurcar este repositorio.
  2. Crea tu rama de características: git checkout -b my-new-feature .
  3. Confirme sus cambios: git commit -m 'Add some feature' .
  4. Empujar a la rama: git push origin my-new-feature .
  5. Enviar una solicitud de extracción.

Para cambios importantes, primero abra una incidencia para comentar qué desea cambiar. Actualice las pruebas según corresponda para reflejar los cambios realizados.

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Permite que los agentes de IA interactúen con los navegadores web utilizando lenguaje natural, presentando navegación automatizada, llenado de formularios, detección de elementos basada en visión y respuestas JSON estructuradas para el control sistemático del navegador.

  1. Overview
    1. Features
      1. Dependencies
        1. Components
          1. Resources
          2. Requirements
          3. Quick Start
          4. Environment Variables
        2. Development
          1. Setup
          2. Debugging
        3. Browser Actions
          1. Security
            1. Contributing
              ID: tjea5rgnbv