MCP-сервер с использованием браузера
MCP-сервер для использования в браузере .
Обзор
Этот репозиторий содержит сервер для библиотеки браузера , которая обеспечивает мощную систему автоматизации браузера, позволяющую агентам ИИ взаимодействовать с веб-браузерами посредством естественного языка. Сервер построен на протоколе контекста модели (MCP) Anthropic и обеспечивает бесшовную интеграцию с библиотекой браузера .
Related MCP server: browser-use MCP server
Функции
Управление браузером
Автоматизированное взаимодействие с браузером посредством естественного языка
Возможности навигации, заполнения форм, нажатия и прокрутки
Управление вкладками и функциональность скриншотов
Управление файлами cookie и состоянием
Система Агентов
Реализация пользовательского агента в custom_agent.py
Обнаружение элементов на основе зрения
Структурированные ответы JSON для действий
Управление историей сообщений и ее обобщение
Конфигурация
Конфигурация API-ключей и настроек на основе среды
Настройки браузера Chrome (порт отладки, сохранение)
Выбор поставщика модели и параметры
Зависимости
Этот проект использует следующие пакеты Python:
Упаковка | Версия | Описание |
>=10.1.0 | Форк библиотеки Python Imaging Library (PIL), добавляющий возможности обработки изображений в ваш интерпретатор Python. | |
==0.1.19 | Мощная система автоматизации браузера, которая позволяет агентам ИИ взаимодействовать с веб-браузерами посредством естественного языка. Основная библиотека, которая обеспечивает возможности автоматизации браузера этого проекта. | |
>=0,115,6 | Современный, быстрый (высокопроизводительный) веб-фреймворк для создания API с Python 3.7+ на основе стандартных подсказок типов Python. Используется для создания сервера, который раскрывает функциональность агента. | |
>=0.4.1 | Фреймворк, оборачивающий FastAPI для создания серверов MCP (Model Context Protocol). | |
>=1.7.2 | Библиотека для структурированного вывода подсказок и проверки с моделями OpenAI. Позволяет извлекать структурированные данные из ответов модели. | |
>=0.3.14 | Фреймворк для разработки приложений с большими языковыми моделями (LLM). Предоставляет инструменты для объединения различных компонентов языковой модели и взаимодействия с различными API и источниками данных. | |
>=2.1.1 | Интеграция LangChain для моделей Google GenAI, позволяющая использовать возможности генеративного ИИ Google в рамках LangChain. | |
>=0.2.14 | Интеграция LangChain с моделями OpenAI. Позволяет использовать модели OpenAI (например, GPT-4) в рамках LangChain. Используется в этом проекте для взаимодействия с моделями языка и зрения OpenAI. | |
>=0.2.2 | Интеграция Langchain для Ollama, обеспечивающая локальное выполнение LLM. | |
>=1.59.5 | Официальная клиентская библиотека Python для API OpenAI. Используется для прямого взаимодействия с моделями OpenAI (при необходимости, в дополнение к LangChain). | |
>=1.0.1 | Считывает пары ключ-значение из файла | |
>=2.10.5 | Проверка данных и управление настройками с использованием аннотаций типов Python. Обеспечивает принудительное применение типов во время выполнения и автоматическое создание моделей. Необходим для определения структурированных моделей данных в агенте. | |
>=1.9.0 | Кроссплатформенный модуль Python для функций копирования и вставки буфера обмена. | |
>=0,22,0 | Реализация веб-сервера ASGI для Python. Используется для обслуживания приложения FastAPI. |
Компоненты
Ресурсы
На сервере реализована система автоматизации браузера с:
Интеграция с библиотекой браузера для расширенного управления браузером
Возможности автоматизации пользовательского браузера
Система взаимодействия на основе агентов с возможностями визуализации
Постоянное управление состоянием
Настраиваемые параметры модели
Требования
Операционные системы (Linux, macOS, Windows; мы не тестировали Docker или Microsoft WSL)
Python 3.11 или выше
uv (быстрый установщик пакетов Python)
Браузер Chrome/Chromium
Быстрый старт
Клод Десктоп
В MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json В Windows: %APPDATA%/Claude/claude_desktop_config.json
Установка через Smithery
Для автоматической установки Browser Use for Claude Desktop через 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"
}
}
}Переменные среды
Ключевые переменные среды:
# 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Разработка
Настраивать
Клонируйте репозиторий:
git clone https://github.com/JovaniPink/mcp-browser-use.git
cd mcp-browser-useСоздать и активировать виртуальную среду:
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activateУстановить зависимости:
uv syncЗапустить сервер
uv run mcp-browser-useОтладка
Для отладки используйте MCP Inspector :
npx @modelcontextprotocol/inspector uv --directory /path/to/project run mcp-server-browser-useИнспектор отобразит URL-адрес интерфейса отладки.
Действия браузера
Сервер поддерживает различные действия браузера посредством естественного языка:
Навигация: переход по URL-адресам, назад/вперед, обновление
Взаимодействие: щелчок, ввод текста, прокрутка, наведение курсора.
Формы: заполните формы, отправьте, выберите параметры
Состояние: Получить содержимое страницы, сделать скриншоты
Вкладки: создание, закрытие, переключение между вкладками
Видение: поиск элементов по внешнему виду
Файлы cookie и хранилище: управление состоянием браузера
Безопасность
Хочу отметить, что некоторые настройки Chrome настроены так, чтобы сервер мог управлять браузером. Это риск для безопасности и должно использоваться с осторожностью. Сервер не предназначен для использования в производственной среде.
Подробности безопасности: SECURITY.MD
Внося вклад
Мы приветствуем вклады в этот проект. Пожалуйста, выполните следующие шаги:
Сделайте форк этого репозитория.
Создайте ветку функций:
git checkout -b my-new-feature.Зафиксируйте изменения:
git commit -m 'Add some feature'.Отправка в ветку:
git push origin my-new-feature.Отправьте запрос на извлечение.
Для крупных изменений сначала откройте вопрос, чтобы обсудить, что вы хотели бы изменить. Пожалуйста, обновите тесты соответствующим образом, чтобы отразить любые внесенные изменения.