Skip to main content
Glama
Raghu6798

Browser Automation MCP Server

by Raghu6798

🤖 Browser-Automatisierungsagent

Ein leistungsstarkes Browser-Automatisierungstool mit MCP (Model Controlled Program), das Web-Scraping-Funktionen mit LLM-gestützter Intelligenz kombiniert. Dieser Agent kann Google durchsuchen, Webseiten aufrufen und Inhalte von verschiedenen Websites wie GitHub, Stack Overflow und Dokumentationsseiten intelligent extrahieren.

🚀 Funktionen

  • 🔍 Google-Suchintegration : Findet und ruft die besten Suchergebnisse für jede Abfrage ab

  • 🕸️ Intelligentes Web Scraping : Maßgeschneiderte Scraping-Strategien für verschiedene Website-Typen:

    • 📂 GitHub-Repositorys

    • 💬 Fragen und Antworten zu Stack Overflow

    • 📚 Dokumentationsseiten

    • 🌐 Generische Websites

  • 🧠 KI-gestützte Verarbeitung : Verwendet Mistral AI zum Verstehen und Verarbeiten von Scraped-Inhalten

  • 🥷 Stealth-Modus : Implementiert den Browser-Fingerabdruckschutz, um eine Erkennung zu vermeiden

  • 💾 Inhaltsspeicherung : Speichert automatisch sowohl Screenshots als auch Textinhalte von Scraped-Seiten

Related MCP server: Web Search MCP

🏗️ Architektur

Dieses Projekt verwendet eine Client-Server-Architektur, die von MCP unterstützt wird:

  • 🖥️ Server : Bewältigt Browserautomatisierung und Web-Scraping-Aufgaben

  • 👤 Client : Stellt die KI-Schnittstelle mit Mistral AI und LangGraph bereit

  • 📡 Kommunikation : Verwendet stdio für die Client-Server-Kommunikation

⚙️ Voraussetzungen

  • 🐍 Python 3.8+

  • 🎭 Dramatiker

  • 🧩 MCP (Modellgesteuertes Programm)

  • 🔑 Mistral AI API-Schlüssel

📥 Installation

  1. Klonen Sie das Repository:

git clone https://github.com/yourusername/browser-automation-agent.git
cd browser-automation-agent
  1. Installieren Sie Abhängigkeiten:

pip install -r requirements.txt
  1. Installieren Sie Playwright-Browser:

playwright install
  1. Erstellen Sie eine .env Datei im Projektstammverzeichnis und fügen Sie Ihren Mistral AI-API-Schlüssel hinzu:

MISTRAL_API_KEY=your_api_key_here

📋 Verwendung

Ausführen des Servers

python main.py

Ausführen des Clients

python client.py

Beispielinteraktion

Sobald sowohl der Server als auch der Client ausgeführt werden:

  1. Geben Sie Ihre Abfrage ein, wenn Sie dazu aufgefordert werden

  2. Der Agent wird:

    • 🔍 Suchen Sie bei Google nach relevanten Ergebnissen

    • 🧭 Navigieren Sie zum Top-Ergebnis

    • 📊 Scrapen Sie Inhalte basierend auf dem Website-Typ

    • 📸 Screenshots und Inhalte in Dateien speichern

    • 📤 Verarbeitete Informationen zurückgeben

🛠️ Werkzeugfunktionen

get_top_google_url

🔍 Durchsucht Google und gibt die URL mit dem höchsten Ergebnis für eine bestimmte Abfrage zurück.

browse_and_scrape

🌐 Navigiert zu einer URL und kratzt Inhalte basierend auf dem Websitetyp.

scrape_github

📂 Spezialisiert auf das Extrahieren von README-Inhalten und Codeblöcken aus GitHub-Repositorys.

scrape_stackoverflow

💬 Extrahiert Fragen, Antworten, Kommentare und Codeblöcke von Stack Overflow-Seiten.

scrape_documentation

📚 Optimiert für das Extrahieren von Dokumentationsinhalten und Codebeispielen.

scrape_generic

🌐 Extrahiert Absatztext und Codeblöcke von generischen Websites.

📁 Dateistruktur

browser-automation-agent/
├── main.py            # MCP server implementation
├── client.py          # Mistral AI client implementation
├── requirements.txt   # Project dependencies
├── .env               # Environment variables (API keys)
└── README.md          # Project documentation

📤 Ausgabedateien

Der Agent generiert zwei Arten von Ausgabedateien mit Zeitstempeln:

  • 📸 final_page_YYYYMMDD_HHMMSS.png : Screenshot des endgültigen Seitenstatus

  • 📄 scraped_content_YYYYMMDD_HHMMSS.txt : Extrahierter Textinhalt von der Seite

⚙️ Anpassung

Sie können die folgenden Parameter im Code ändern:

  • 🖥️ Browserfenstergröße: Passen Sie width und height in browse_and_scrape

  • 👻 Headless-Modus: Setzen Sie headless=True für unsichtbaren Browserbetrieb

  • 🔢 Anzahl der Google-Ergebnisse: Ändern Sie num_results in get_top_google_url

❓ Fehlerbehebung

  • 🔌 Verbindungsprobleme : Stellen Sie sicher, dass Server und Client in separaten Terminals ausgeführt werden

  • 🎭 Playwright-Fehler : Stellen Sie sicher, dass Browser mit playwright install installiert sind

  • 🔑 API-Schlüsselfehler : Überprüfen Sie, ob Ihr Mistral-API-Schlüssel in der .env Datei korrekt festgelegt ist

  • 🛣️ Pfadfehler : Aktualisieren Sie bei Bedarf den Pfad zu main.py in client.py

📜 Lizenz

MIT-Lizenz

🤝 Beitragen

Beiträge sind willkommen! Senden Sie gerne einen Pull Request.


Erstellt mit 🧩 MCP, 🎭 Playwright und 🧠 Mistral AI

Related MCP Connectors

Related MCP Servers

  • F
    license
    B
    quality
    D
    maintenance
    Enables web searching and content scraping through Google Custom Search API. Provides tools to search the internet, extract webpage content, and automatically scrape search results for comprehensive information gathering.
    3
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables web searching through Google, DuckDuckGo, and Bing using a headless Chrome browser, returning structured results with titles, URLs, and snippets. Also supports fetching and extracting text content from any webpage.
    16
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables LLMs to fetch and extract web content using browser automation, OCR, and multiple extraction methods, handling JavaScript rendering and anti-scraping techniques.
    17
    MIT