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
- AsecurityAlicenseAqualityA Model Context Protocol server that facilitates communication between ABAP systems and MCP clients, providing tools for managing ABAP objects, handling transport requests, and performing code analysis to enhance ABAP development workflows.Last updated -12840TypeScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol (MCP) server that enables AI assistants to control and interact with Android devices, allowing for device management, app debugging, system analysis, and UI automation through natural language commands.Last updated -29198PythonApache 2.0
- AsecurityAlicenseAqualityA Model Context Protocol server that enables scalable mobile automation through a platform-agnostic interface for iOS and Android devices, allowing agents and LLMs to interact with mobile applications using accessibility snapshots or coordinate-based interactions.Last updated -113,6511,570TypeScriptApache 2.0
- AsecurityAlicenseAqualityA Model Context Protocol server that enables scalable mobile automation for iOS and Android through a platform-agnostic interface, allowing LLMs to interact with mobile applications via accessibility snapshots or screenshot-based inputs.Last updated -173,6511TypeScriptApache 2.0