MCP-сервер с использованием браузера
MCP-сервер для использования в браузере .
Обзор
Этот репозиторий содержит сервер для библиотеки браузера , которая обеспечивает мощную систему автоматизации браузера, позвол��ющую агентам ИИ взаимодействовать с веб-браузерами посредством естественного языка. Сервер построен на протоколе контекста модели (MCP) Anthropic и обеспечивает бесшовную интеграцию с библиотекой браузера .
Функции
- Управление браузером
- Автоматизированное взаимодействие с браузером посредством естественного языка
- Возможности навигации, заполнения форм, нажатия и прокрутки
- Управление вкладками и функциональность скриншотов
- Управление файлами 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. Используется для создания сервера, который раскрывает функциональность агента. |
fastmcp | >=0.4.1 | Фреймворк, оборачивающий FastAPI для создания серверов MCP (Model Context Protocol). |
инструктор | >=1.7.2 | Библиотека для структурированного вывода подсказок и проверки с моделями OpenAI. Позволяет извлекать структурированные данные из ответов модели. |
langchain | >=0.3.14 | Фреймворк для разработки приложений с большими языковыми моделями (LLM). Предоставляет инструменты для объединения различных компонентов языковой модели и взаимодействия с различными API и источниками данных. |
langchain-google-genai | >=2.1.1 | Интеграция LangChain для моделей Google GenAI, позволяющая использовать возможности генеративного ИИ Google в рамках LangChain. |
langchain-openai | >=0.2.14 | Интеграция LangChain с моделями OpenAI. Позволяет использовать модели OpenAI (например, GPT-4) в рамках LangChain. Используется в этом проекте для взаимодействия с моделями языка и зрения OpenAI. |
langchain-ollama | >=0.2.2 | Интеграция Langchain для Ollama, обеспечивающая локальное выполнение LLM. |
опенай | >=1.59.5 | Официальная клиентская библиотека Python для API OpenAI. Используется для прямого взаимодействия с моделями OpenAI (при необходимости, в дополнение к LangChain). |
python-dotenv | >=1.0.1 | Считывает пары ключ-значение из файла .env и устанавливает их как переменные среды. Упрощает локальную разработку и управление конфигурацией. |
пидантический | >=2.10.5 | Проверка данных и управление настройками с использованием аннотаций типов Python. Обеспечивает принудительное применение типов во время выполнения и автоматическое создание моделей. Необходим для определения структурированных моделей данных в агенте. |
pyperclip | >=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 :
Переменные среды
Ключевые переменные среды:
Разработка
Настраивать
- Клонируйте репозиторий:
- Создать и активировать виртуальную среду:
- Установить зависимости:
- Запустить сервер
Отладка
Для отладки используйте MCP Inspector :
Инспектор отобразит URL-адрес интерфейса отладки.
Действия браузера
Сервер поддерживает различные действия браузера посредством естественного языка:
- Навигация: переход по URL-адресам, назад/вперед, обновление
- Взаимодействие: щелчок, ввод текста, прокрутка, наведение курсора.
- Формы: заполните формы, отправьте, выберите параметры
- Состояние: Получить содержимое страницы, сделать скриншоты
- Вкладки: создание, закрытие, переключение между вкладками
- Видение: поиск элементов по внешнему виду
- Файлы cookie и хранилище: управление состоянием браузера
Безопасность
Хочу отметить, что некоторые настройки Chrome настроены так, чтобы сервер мог управлять браузером. Это риск для безопасности и должно использоваться с осторожностью. Сервер не предназначен для использования в производственной среде.
Подробности безопасности: SECURITY.MD
Внося вклад
Мы приветствуем вклады в этот проект. Пожалуйста, выполните следующие шаги:
- Сделайте форк этого репозитория.
- Создайте ветку функций:
git checkout -b my-new-feature
. - Зафиксируйте изменения:
git commit -m 'Add some feature'
. - Отправка в ветку:
git push origin my-new-feature
. - Отправьте запрос на извлечение.
Для крупных изменений сначала откройте вопрос, чтобы обсудить, что вы хотели бы изменить. Пожалуйста, обновите тесты соответствующим образом, чтобы отразить любые внесенные изменения.
local-only server
The server can only run on the client's local machine because it depends on local resources.
Tools
Позволяет агентам ИИ взаимодействовать с веб-браузерами, используя естественный язык, обеспечивая автоматизированный просмотр, заполнение форм, обнаружение элементов на основе зрения и структурированные ответы JSON для систематического управления браузером.
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityFacilitates browser automation with custom capabilities and agent-based interactions, integrated through the browser-use library.Last updated -1646PythonMIT License
- -securityFlicense-qualityEnables AI agents to control web browsers via a standardized interface for operations like launching, interacting with, and closing browsers.Last updated -0JavaScript
- -securityAlicense-qualityAI-driven browser automation server that implements the Model Context Protocol to enable natural language control of web browsers for tasks like navigation, form filling, and visual interaction.Last updated -1PythonMIT License
- -securityAlicense-qualityEmpowers AI agents to perform web browsing, automation, and scraping tasks with minimal supervision using natural language instructions and Selenium.Last updated -1PythonApache 2.0