Integrations
Supports browser automation in Firefox, allowing for navigation, DOM manipulation, form filling, and JavaScript execution through Playwright.
Demonstrated capability to navigate to Google, perform searches, and interact with search results through browser automation.
Enables execution of arbitrary JavaScript code in browser context, with the ability to capture console logs and return results.
MCP-Browser-Agent
Merkmale
- Erweiterte Browserautomatisierung
- Navigieren Sie mit anpassbaren Ladestrategien zu jeder URL
- Erfassen Sie Screenshots der gesamten Seite oder bestimmter Elemente
- Führen Sie präzise DOM-Interaktionen durch (Klicken, Füllen, Auswählen, Hovern)
- Führen Sie beliebiges JavaScript im Browserkontext mit der Erfassung von Konsolenprotokollen aus
- Leistungsstarker API-Client
- HTTP-Anfragen ausführen (GET, POST, PUT, PATCH, DELETE)
- Konfigurieren von Anforderungsheadern und Textinhalten
- Antwortdaten mit JSON-Formatierung verarbeiten
- Fehlerbehandlung mit detailliertem Feedback
- MCP-Ressourcenmanagement
- Greifen Sie auf Browserkonsolenprotokolle als Ressourcen zu
- Abrufen von Screenshots über die MCP-Ressourcenschnittstelle
- Dauerhafte Sitzung mit Headful-Browserinstanz
- KI-Agentenfunktionen
- Verketten Sie mehrere Browservorgänge für komplexe Aufgaben
- Befolgen Sie mehrstufige Anweisungen mit intelligenter Fehlerbehebung
- Automatisierung technischer Aufgaben durch Anweisungen in natürlicher Sprache
Demo
Klicken Sie auf einen beliebigen Zeitstempel, um zu diesem Abschnitt des Videos zu springen
00:00 – Google-Suche nach MCP
Navigieren Sie zur Google-Startseite und suchen Sie nach „Model Context Protocol“. Demonstration von Claude Desktop mithilfe der MCP-Integration, um eine einfache Websuche durchzuführen und die Ergebnisse zu verarbeiten.
00:33 – Screenshot-Aufnahme
Erstellen Sie einen Screenshot der Suchergebnisse mit einem benutzerdefinierten Dateinamen und präsentieren Sie ihn im Finder. Zeigt, wie Claude während der Browserautomatisierung visuelle Inhalte von Webseiten erfassen und speichern kann.
01:00 – Wikipedia-Suche
Navigieren Sie zu Wikipedia.org und suchen Sie nach „Model Context Protocol“. Dies veranschaulicht Claudes Fähigkeit, über die MCP-Integration mit verschiedenen Websites und deren Suchfunktionen zu interagieren.
01:38 – Dropdown-Menü-Interaktion I
Navigation zu einer Testwebsite (the-internet.herokuapp.com/dropdown) und Auswahl von „Option 1“ aus einem Dropdown-Menü. Demonstriert Claudes Fähigkeit, mit Formularelementen zu interagieren und Auswahlen zu treffen.
01:56 – Dropdown-Menü-Interaktion II
Ändern der Auswahl im selben Dropdown-Menü auf „Option 2“. Zeigt Claudes Fähigkeit, dasselbe Formularelement mehrfach zu bearbeiten und unterschiedliche Auswahlen zu treffen.
02:09 – Ausfüllen des Anmeldeformulars
Navigieren Sie zu einer Anmeldeseite (the-internet.herokuapp.com/login) und füllen Sie das Feld für den Benutzernamen mit „tomsmith“ und das Feld für das Passwort mit „SuperSecretPassword!“ aus. Demonstriert die Automatisierung des Formularausfüllens.
02:28 - Login-Übermittlung
Übermittlung der Anmeldeinformationen und Abschluss des Authentifizierungsprozesses. Zeigt Claudes Fähigkeit, Formulareinreichungen auszulösen und durch mehrstufige Prozesse zu navigieren.
02:36 – Ausführung der API-Anforderung
Ausführen einer GET-Anfrage an den JSONPlaceholder-API-Endpunkt. Demonstriert Claudes Fähigkeit, direkte API-Aufrufe zu tätigen und die zurückgegebenen Daten über die MCP-Integration zu verarbeiten.
Anforderungen
- Node.js 16 oder höher
- Claude Desktop
- Dramatikerabhängigkeiten
Browserunterstützung
Dieses Paket enthält Playwright und die notwendigen Abhängigkeiten für die Browserautomatisierung. Wenn Sie npm install
ausführen, werden die erforderlichen Playwright-Abhängigkeiten installiert. Das Paket unterstützt die folgenden Browser:
- Chrome (Standard)
- Feuerfuchs
- Microsoft Edge
- WebKit (Safari-Engine)
Wenn Sie einen Browsertyp zum ersten Mal verwenden, installiert Playwright automatisch die entsprechenden Browsertreiber. Sie können sie auch manuell mit den folgenden Befehlen installieren:
Hinweis zu Safari : Playwright bietet keine direkte Unterstützung für den Safari-Browser. Stattdessen verwendet es WebKit, die Browser-Engine von Safari.
Hinweis zu Edge : Wenn Sie Edge als Browsertyp auswählen, startet der Agent tatsächlich Microsoft Edge (nicht Chromium). Technisch gesehen wird Edge in Playwright mit der Chromium-Browserinstanz und dem Kanalparameter „msedge“ gestartet, da Microsoft Edge auf Chromium basiert.
Installation
Manuelle Installation
- Klonen oder laden Sie dieses Repository herunter:
- Installieren Sie Abhängigkeiten:
- Erstellen Sie das Projekt:
Ausführen des MCP-Servers
Es gibt zwei Möglichkeiten, den MCP-Server auszuführen:
Option 1: Manuell ausführen
- Öffnen Sie ein Terminal oder eine Eingabeaufforderung
- Navigieren Sie zum Projektverzeichnis
- Führen Sie den Server direkt aus:
Lassen Sie dieses Terminalfenster geöffnet, während Sie Claude Desktop verwenden. Der Server läuft, bis Sie das Terminal schließen.
Option 2: Autostart mit Claude Desktop (empfohlen für den regelmäßigen Gebrauch)
Der Claude Desktop kann den MCP-Server bei Bedarf automatisch starten. So richten Sie dies ein:
Konfiguration
Die Konfigurationsdatei von Claude Desktop befindet sich unter:
- macOS :
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows :
%APPDATA%\Claude\claude_desktop_config.json
- Linux :
~/.config/Claude/claude_desktop_config.json
Bearbeiten Sie diese Datei, um die MCP-Konfiguration des Browser-Agenten hinzuzufügen. Falls die Datei nicht vorhanden ist, erstellen Sie sie:
Wichtig : Ersetzen Sie ABSOLUTE_PATH_TO_DIRECTORY
durch den vollständigen absoluten Pfad , in dem Sie MCP installiert haben
- macOS/Linux-Beispiel:
/Users/username/mcp-browser-agent
- Windows-Beispiel:
C:\\Users\\username\\mcp-browser-agent
Wenn Sie bereits andere MCPs konfiguriert haben, fügen Sie einfach den Abschnitt „browserAgent“ innerhalb des Objekts „mcpServers“ hinzu. Hier ist ein Beispiel für eine Konfiguration mit mehreren MCPs:
Browserauswahl
Der MCP Browser Agent unterstützt mehrere Browsertypen. Standardmäßig wird Chrome verwendet. Sie können jedoch auf verschiedene Weise einen anderen Browser angeben:
Option 1: Konfigurationsdatei
Erstellen oder bearbeiten Sie die Datei .mcp_browser_agent_config.json
in Ihrem Home-Verzeichnis:
Unterstützte Werte für browserType
sind:
chrome
– Verwendet installiertes Chrome (Standard)firefox
– Verwendet den Firefox-Browser „Nightly“webkit
– Verwendet die WebKit-Engine (Hinweis: Dies ist nicht Safari selbst, sondern die WebKit-Rendering-Engine, auf der Safari basiert)edge
– Verwendet Microsoft Edge
Hinweis zu Safari : Playwright bietet keine direkte Unterstützung für den Safari-Browser. Stattdessen verwendet es WebKit, die Browser-Engine von Safari. Die WebKit-Implementierung in Playwright bietet ähnliche Funktionen, ist aber nicht identisch mit der Safari-Browser-Erfahrung.
Option 2: Befehlszeilenargument
Beim manuellen Starten des MCP-Servers können Sie den Browsertyp angeben:
Option 3: Umgebungsvariable
Legen Sie die Umgebungsvariable MCP_BROWSER_TYPE
fest:
Option 4: Claude Desktop-Konfiguration
Beim Konfigurieren des MCP in claude_desktop_config.json
von Claude Desktop können Sie den Browsertyp angeben:
Technische Umsetzung
Der MCP Browser Agent basiert auf dem Model Context Protocol und ermöglicht Claude die Interaktion mit einem Headful-Browser über Playwright. Die Implementierung besteht aus vier Hauptkomponenten:
- Server (index.ts)
- Initialisiert den MCP-Server mit dem Standardprotokoll Model Context Protocol
- Konfiguriert Serverfunktionen für Tools und Ressourcen
- Stellt die Kommunikation mit Claude über den stdio-Transport her
- Tools-Registrierung (tools.ts)
- Definiert Browser- und API-Tool-Schemas
- Gibt Parameter, Validierungsregeln und Beschreibungen an
- Registriert Tools beim MCP-Server für Claudes Entdeckung
- Anforderungshandler (handlers.ts)
- Verwaltet MCP-Protokollanforderungen für Tools und Ressourcen
- Stellt Browserprotokolle und Screenshots als abfragbare Ressourcen bereit
- Leitet Anfragen zur Tool-Ausführung an die entsprechenden Handler weiter
- Executor (executor.ts)
- Verwaltet den Lebenszyklus von Browsern und API-Clients
- Implementiert Browser-Automatisierungsfunktionen mit Playwright
- Verarbeitet API-Anfragen mit ordnungsgemäßer Fehlerbehandlung und Antwortanalyse
- Behält die statusbehaftete Browsersitzung zwischen Befehlen bei
Agentenfunktionen
Im Gegensatz zu grundlegenden Integrationen fungiert der MCP Browser Agent als echter KI-Agent durch:
- Beibehalten des persistenten Browserstatus über mehrere Befehle hinweg
- Erfassen detaillierter Konsolenprotokolle zum Debuggen
- Speichern von Screenshots zur Referenz und Überprüfung
- Komplexe Interaktionsabläufe managen
- Bereitstellung detaillierter Fehlerinformationen zur Wiederherstellung
- Unterstützung verketteter Vorgänge für komplexe Arbeitsabläufe
Verfügbare Tools
Browser-Tools
Werkzeugname | Beschreibung | Parameter |
---|---|---|
browser_navigate | Navigieren Sie zu einer URL | url (erforderlich), timeout , waitUntil |
browser_screenshot | Screenshot aufnehmen | name (erforderlich), selector , fullPage , mask , savePath |
browser_click | Klickelement | selector (erforderlich) |
browser_fill | Formulareingaben ausfüllen | selector (erforderlich), value (erforderlich) |
browser_select | Dropdown-Option auswählen | selector (erforderlich), value (erforderlich) |
browser_hover | Bewegen Sie den Mauszeiger über das Element | selector (erforderlich) |
browser_evaluate | JavaScript ausführen | script (erforderlich) |
API-Tools
Werkzeugname | Beschreibung | Parameter |
---|---|---|
api_get | GET-Anfrage | url (erforderlich), headers |
api_post | POST-Anforderung | url (erforderlich), data (erforderlich), headers |
api_put | PUT-Anforderung | url (erforderlich), data (erforderlich), headers |
api_patch | PATCH-Anforderung | url (erforderlich), data (erforderlich), headers |
api_delete | DELETE-Anforderung | url (erforderlich), headers |
Ressourcenzugriff
Der MCP-Browser-Agent stellt die folgenden Ressourcen bereit:
browser://logs
- Zugriff auf Browser-Konsolenprotokollescreenshot://[name]
- Zugriff auf Screenshots nach Namen
Beispielverwendung
Hier sind einige realistische Beispiele für die Verwendung des MCP-Browser-Agenten mit Claude:
Grundlegende Browsernavigation
Einfache Interaktionen
Grundlegendes Ausfüllen von Formularen
Einfache JavaScript-Ausführung
Grundlegende API-Anfragen
Diese Beispiele stellen die tatsächlichen Fähigkeiten des MCP-Browser-Agenten dar und geben ein realistischeres Bild davon, was er in seinem aktuellen Zustand leisten kann.
Fehlerbehebung
Fehler „Server getrennt“
Wenn in Claude Desktop der Fehler „MCP Browser Agent: Server getrennt“ angezeigt wird:
- Überprüfen Sie, ob der Server läuft :
- Öffnen Sie ein Terminal und führen Sie
node dist/index.js
manuell aus dem Projektverzeichnis aus - Wenn der Server erfolgreich startet, verwenden Sie Claude, während Sie dieses Terminal geöffnet halten
- Öffnen Sie ein Terminal und führen Sie
- Überprüfen Sie Ihre Konfiguration :
- Stellen Sie sicher, dass der absolute Pfad in
claude_desktop_config.json
für Ihr System korrekt ist - Überprüfen Sie noch einmal, ob Sie doppelte Backslashes (
\\
) für Windows-Pfade verwendet haben - Stellen Sie sicher, dass Sie den vollständigen Pfad vom Stammverzeichnis Ihres Dateisystems verwenden.
- Stellen Sie sicher, dass der absolute Pfad in
Browser wird nicht angezeigt
Wenn der Browser nicht startet oder Sie ihn nicht sehen:
- Überprüfen Sie, ob der angegebene Browser installiert ist
- Stellen Sie sicher, dass der Browser (Chrome, Firefox, Edge oder Safari/WebKit) auf Ihrem System installiert ist
- Die Browsertreiber werden automatisch von Playwright verwaltet
- Starten Sie den Server und Claude Desktop neu
- Beenden Sie alle vorhandenen Knotenprozesse, die möglicherweise den Server ausführen.
- Starten Sie Claude Desktop neu, um eine neue Verbindung herzustellen
Browserprozess wird nicht ordnungsgemäß geschlossen
Es gibt bekannte Probleme mit den Browsern Chromium und Chrome, bei denen der Prozess nach der Verwendung manchmal nicht ordnungsgemäß beendet wird. Wenn dieses Problem auftritt:
- Schließen Sie den Browserprozess manuell :
- Windows : Drücken Sie Strg+Umschalt+Esc, um den Task-Manager zu öffnen, suchen Sie den Chrome/Chromium-Prozess und beenden Sie ihn
- macOS : Öffnen Sie den Aktivitätsmonitor (Programme > Dienstprogramme > Aktivitätsmonitor), suchen Sie den Chrome/Chromium-Prozess und klicken Sie auf das X, um ihn zu beenden
- Linux : Führen Sie
ps aux | grep chrome
oderps aux | grep chromium
aus, um den Prozess zu finden, und beenden Sie ihn anschließendkill <PID>
.
- Hinweis zur Browserkompatibilität :
- Dieses Problem wurde vor allem bei Chromium und Chrome beobachtet.
- Bei den integrierten Browsern von Firefox und Playwright tritt dieses Problem normalerweise nicht auf.
[!VORSICHT] Diese MCP-Integration basiert auf Playwright. Dieses System weist bekannte Probleme und Fehler auf, die den Betrieb beeinträchtigen können. Bitte melden Sie alle Probleme, die bei der Browserautomatisierung auftreten, an Playwrights GitHub-Probleme . Das Playwright-Team arbeitet kontinuierlich an der Behebung dieser Probleme. Dieser Agent bietet trotz dieser Einschränkungen die Grundlage für die Browserautomatisierung mit Claude Desktop.
Entwicklung
Projektstruktur
src/index.ts
: Haupteinstiegspunkt und Initialisierung des MCP-Serverssrc/tools.ts
: Toolschemata und Registrierungsrc/handlers.ts
: MCP-Anforderungshandler für Tools und Ressourcensrc/executor.ts
: Tool-Implementierungslogik mit Playwright
Gebäude
Auf Änderungen achten
Testen
Das Projekt umfasst Tests zur Überprüfung der Kernfunktionalität und der Browserhandhabung.
Die Tests überprüfen die Konfigurationsintegrität, die Browser-Automatisierungsfunktionen, die Fehlerbehandlung und die Prozessbereinigung. Der Schwerpunkt der Testsuite liegt insbesondere auf der Sicherstellung der ordnungsgemäßen Verarbeitung von Browserprozessen aufgrund bekannter Probleme bei der Beendigung von Chrome/Chromium.
Sicherheitsüberlegungen
[!VORSICHT] Diese MCP-Integration bietet Claude die Möglichkeit zur autonomen Browsersteuerung. Bitte lesen Sie unsere Sicherheitsrichtlinie, um wichtige Informationen zu verbotenen Verwendungen, Sicherheitsauswirkungen und bewährten Methoden zu erhalten.
Der MCP Browser Agent ist für legitime Automatisierungsaufgaben konzipiert, könnte aber potenziell missbraucht werden. Benutzer sind dafür verantwortlich, dass die Nutzung alle geltenden Gesetze, Nutzungsbedingungen und ethischen Richtlinien einhält. Weitere Informationen finden Sie in unserer detaillierten Sicherheitsrichtlinie .
Beitragen
Beiträge zum MCP Browser Agent sind willkommen! Hier sind einige Bereiche, in denen Sie helfen können:
- Hinzufügen neuer Browser-Automatisierungsfunktionen
- Verbesserung der Fehlerbehandlung und -behebung
- Verbesserung der Screenshot- und Ressourcenverwaltung
- Erstellen nützlicher Arbeitsabläufe und Beispiele
- Leistungsoptimierung für komplexe Vorgänge
Lizenz
Dieses Projekt ist unter der Mozilla Public License 2.0 lizenziert – Einzelheiten finden Sie in der Datei LICENSE .
Weiterführende Links
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Eine Model Context Protocol (MCP)-Integration, die Claude Desktop mit autonomen Browser-Automatisierungsfunktionen ausstattet. Dieser Agent ermöglicht Claude die Interaktion mit Webinhalten, die Bearbeitung von DOM-Elementen, die Ausführung von JavaScript und die Durchführung von API-Anfragen.
Related MCP Servers
- AsecurityAlicenseAqualityA headless browser MCP server that allows AI agents to fetch web content and perform Google searches without API keys, supporting various output formats like Markdown, JSON, HTML, and text.Last updated -24TypeScriptMIT License
- -securityAlicense-qualityA MCP server that provides browser automation tools, allowing users to navigate websites, take screenshots, click elements, fill forms, and execute JavaScript through Playwright.Last updated -PythonApache 2.0
- -securityFlicense-qualityA MCP server that allows AI assistants to interact with the browser, including getting page content as markdown, modifying page styles, and searching browser history.Last updated -5TypeScript
- -security-license-qualitySelf-hosted Browser Using Agent with built-in MCP, A2A support.Last updated -1JavaScriptApache 2.0