MCP Appium Server
Eine Model Context Protocol (MCP)-Serverimplementierung für die Automatisierung mobiler Apps mit Appium.
Voraussetzungen
- Node.js (v14 oder höher)
- Java Development Kit (JDK)
- Android SDK (zum Testen von Android)
- Xcode (für iOS-Tests, nur macOS)
- Appium Server
- Android-Gerät oder -Emulator / iOS-Gerät oder -Simulator
Umgebungs-Setup
Stellen Sie vor der Ausführung von Befehlen sicher, dass Ihre Umgebungsvariablen richtig eingerichtet sind:
- Stellen Sie sicher, dass Ihre
.bash_profile
,.zshrc
oder andere Shell-Konfigurationsdatei die erforderlichen Umgebungsvariablen enthält:
- Geben Sie Ihre Umgebungsdatei als Quelle ein, bevor Sie MCP-Appium ausführen:
Hinweis : Das System versucht beim Initialisieren des Treibers automatisch, Ihr
.bash_profile
zu beziehen. Es wird jedoch empfohlen, vor dem Ausführen von Tests in einer neuen Terminalsitzung manuell für eine ordnungsgemäße Umgebungseinrichtung zu sorgen.
Konfiguration der Xcode-Befehlszeilentools
Für iOS-Tests ist die richtige Konfiguration der Xcode-Befehlszeilentools unerlässlich:
- Installieren Sie die Xcode-Befehlszeilentools, falls sie noch nicht installiert sind:
- Überprüfen Sie die Installation und prüfen Sie den aktuellen Xcode-Pfad:
- Legen Sie bei Bedarf den richtigen Xcode-Pfad fest (insbesondere, wenn Sie mehrere Xcode-Versionen haben):
- Akzeptieren Sie die Xcode-Lizenzvereinbarungen:
- Stellen Sie zum Testen von iOS-Geräten sicher, dass Ihr Apple-Entwicklerkonto in Xcode richtig konfiguriert ist:
- Öffnen Sie Xcode
- Gehen Sie zu Einstellungen > Konten
- Fügen Sie Ihre Apple-ID hinzu, falls sie noch nicht hinzugefügt wurde
- Laden Sie die erforderlichen Bereitstellungsprofile herunter
- Richten Sie Umgebungsvariablen für die iOS-Entwicklung ein:
- Quelle Ihrer aktualisierten Konfiguration:
Aufstellen
- Installieren Sie Abhängigkeiten:
- Installieren und starten Sie den Appium-Server:
- Android-Gerät/Emulator einrichten:
- Aktivieren Sie die Entwickleroptionen auf Ihrem Android-Gerät
- USB-Debugging aktivieren
- Gerät per USB verbinden oder einen Emulator starten
- Überprüfen Sie, ob das Gerät mit
adb devices
verbunden ist
- Für iOS-Tests (nur macOS):
- Stellen Sie sicher, dass die Xcode-Befehlszeilentools installiert sind:
xcode-select --install
- Richten Sie einen iOS-Simulator ein oder verbinden Sie ein echtes Gerät
- Vertrauen Sie dem Entwicklungscomputer auf dem iOS-Gerät, wenn Sie ein echtes Gerät verwenden
- Stellen Sie sicher, dass die Xcode-Befehlszeilentools installiert sind:
Ausführen von Tests
- Erstellen Sie das Projekt:
- Starten Sie den MCP-Server:
- Führen Sie den Test in einem neuen Terminal aus:
Testkonfiguration
Android-Konfiguration
Der Beispieltest verwendet die Android-Einstellungen-App als Demo. So testen Sie Ihre eigene App:
- Bearbeiten Sie
examples/appium-test.ts
:- Aktualisieren Sie
deviceName
, damit er mit Ihrem Gerät übereinstimmt. - Legen Sie
app
-Pfad zu Ihrer APK-Datei fest, oder - Aktualisieren Sie
appPackage
undappActivity
für eine installierte App
- Aktualisieren Sie
- Konfiguration allgemeiner Funktionen:
iOS-Konfiguration
Für iOS-Tests mit der neuen Xcode-Befehlszeilenunterstützung:
- Beispielkonfiguration in
examples/xcode-appium-example.ts
:
Verfügbare Aktionen
Der MCP-Server unterstützt verschiedene Appium-Aktionen:
- Elementinteraktionen:
- Elemente suchen
- Tippen/Klicken Sie auf Elemente mit der W3C Actions API (siehe Abschnitt „W3C-Standardgesten“)
- Text eingeben
- Mit der W3C Actions API zum Element scrollen
- Langes Drücken
- App-Verwaltung:
- App starten/schließen
- App zurücksetzen
- Aktuelles Paket/Aktuelle Aktivität abrufen
- Gerätesteuerung:
- Bildschirmausrichtung
- Tastaturbedienung
- Gerät sperren/entsperren
- Screenshots
- Batterieinformationen
- Erweiterte Funktionen:
- Kontextwechsel (Native/WebView)
- Dateivorgänge
- Benachrichtigungen
- Benutzerdefinierte Gesten
- Xcode-Befehlszeilentools (nur iOS):
- iOS-Simulatoren verwalten (Booten, Herunterfahren)
- Apps auf Simulatoren installieren/deinstallieren
- Apps starten/beenden
- Screenshots machen
- Videos aufnehmen
- Simulatoren erstellen/löschen
- Abrufen von Gerätetypen und Laufzeiten
W3C-Standardgesten
Die MCP-Appium-Bibliothek implementiert jetzt die W3C WebDriver Actions API für Touch-Gesten, den modernen Standard für mobile Automatisierung.
W3C-Aktionen für Tap-Elemente
Die Methode tapElement
verwendet jetzt die W3C Actions API mit intelligenten Fallbacks:
W3C-Aktionen zum Scrollen
Die Methode scrollToElement
verwendet jetzt die W3C Actions API:
Benutzerdefinierte W3C-Gesten
Sie können Ihre eigenen benutzerdefinierten W3C-Gesten mit der Methode executeMobileCommand
erstellen:
Weitere Beispiele für die Implementierung von Gesten nach W3C-Standard finden Sie examples/w3c-actions-swipe-demo.ts
.
Verwenden von Xcode-Befehlszeilentools
Die neue XcodeCommands
Klasse bietet leistungsstarke Tools für iOS-Tests:
Verwenden der Klickfunktion
Die Methode click()
bietet eine intuitivere Alternative zu tapElement()
:
Fehlerbehebung
- Gerät nicht gefunden:
- Überprüfen Sie die Ausgabe
adb devices
- Überprüfen Sie, ob das USB-Debugging aktiviert ist
- Versuchen Sie, das Gerät erneut zu verbinden
- Überprüfen Sie die Ausgabe
- App wird nicht installiert:
- Überprüfen Sie, ob der APK-Pfad korrekt ist
- Überprüfen Sie, ob das Gerät über genügend Speicherplatz verfügt
- Stellen Sie sicher, dass die App zum Debuggen signiert ist
- Elemente nicht gefunden:
- Verwenden Sie Appium Inspector, um Selektoren zu überprüfen
- Überprüfen Sie, ob Elemente auf dem Bildschirm sichtbar sind
- Probieren Sie verschiedene Lokalisierungsstrategien aus
- Verbindungsprobleme:
- Überprüfen Sie, ob der Appium-Server ausgeführt wird
- Überprüfen Sie Portkonflikte
- Stellen Sie sicher, dass die richtigen Funktionen eingestellt sind
- Probleme mit dem iOS-Simulator:
- Überprüfen Sie, ob die Xcode-Befehlszeilentools installiert sind:
xcode-select -p
- Überprüfen Sie, ob die UDID des Simulators korrekt ist, indem Sie
xcrun simctl list devices
verwenden. - Schließen Sie den Simulator und starten Sie ihn neu, wenn er nicht mehr reagiert.
- Überprüfen Sie, ob die Xcode-Befehlszeilentools installiert sind:
Beitragen
Sie können gerne Probleme und Pull Requests für zusätzliche Funktionen oder Fehlerbehebungen einreichen.
Lizenz
MIT
local-only server
The server can only run on the client's local machine because it depends on local resources.
Tools
Ein Model Context Protocol (MCP)-Server, der die Automatisierung mobiler Apps mit Appium ermöglicht und verschiedene Geräteinteraktionen, Elementoperationen und App-Verwaltung über ein standardisiertes Protokoll unterstützt.
- Voraussetzungen
- Umgebungs-Setup
- Aufstellen
- Ausführen von Tests
- Testkonfiguration
- Verfügbare Aktionen
- W3C-Standardgesten
- Verwenden von Xcode-Befehlszeilentools
- Verwenden der Klickfunktion
- Fehlerbehebung
- Beitragen
- Lizenz
Related Resources
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol (MCP) server implementation for interacting with Phabricator API. This server allows LLMs to interact with Phabricator through a standardized interface.Last updated -5Python
- AsecurityAlicenseAqualityA beginner-friendly Model Context Protocol (MCP) server that helps users understand MCP concepts, provides interactive examples, and lists available MCP servers. This server is designed to be a helpful companion for developers working with MCP. Also comes with a huge list of servers you can install.Last updated -3936JavaScriptApache 2.0
- -securityAlicense-qualityThis MCP server implementation allows users to manage and expose actions as tools from their Integration App workspace through the Model Context Protocol.Last updated -1022TypeScriptISC License
- AsecurityFlicenseAqualityA Model Context Protocol (MCP) server that interacts with system APIs, allowing users to check connections, search employees, register breakfast, and update chemical information by shifts.Last updated -2176JavaScript