appium
AI-powered mobile automation with Model Context Protocol (MCP) integration. Seamlessly control Android & iOS devices through Appium with intelligent visual element detection and recovery. Built for AI agents like Claude to perform complex mobile testing workflows.
claude mcp add --transport stdio rahulec08-appium-mcp node path/to/server.js \ --env PATH="existing PATH plus $ANDROID_HOME/tools and $ANDROID_HOME/platform-tools" \ --env JAVA_HOME="path to your JDK" \ --env ANDROID_HOME="path to your Android SDK"
How to use
This MCP server exposes Appium-based mobile automation capabilities with integrated MCP support. It enables AI-assisted control of Android and iOS devices, leveraging Appium for device interaction, and adds visual element detection and recovery powered by AI. With MCP, you can orchestrate agent-driven testing workflows, manage context between Native and WebView, and perform advanced actions like custom gestures or scripted sequences. You will be able to launch apps, interact with UI elements, scroll, take screenshots, and query device state, all within an MCP-enabled workflow.
To use it, install dependencies and start the server, then run tests or automation scripts that leverage the MCP endpoints. The server includes examples showing Android and iOS configurations, W3C WebDriver Actions-based gestures, and capabilities for element interaction, app management, and device controls. The library supports standard Appium actions such as tapping, typing, launching apps, and switching contexts, and extends them with MCP-driven orchestration for AI agents to drive tests more intelligently.
How to install
Prerequisites:
- Node.js v14+ installed
- Java Development Kit (JDK)
- Android SDK (for Android testing)
- Xcode (for iOS testing, macOS only)
- Appium server installed
Install and run:
- Install dependencies
npm install
- Install and start Appium server (global)
npm install -g appium
appium
- Start the MCP Appium server
npm run dev
- Run tests
npm test
Android setup (example):
- Enable Developer Options, USB Debugging
- Connect device or start emulator
- Verify with adb devices
adb devices
iOS setup (macOS only):
- Ensure Xcode command line tools are installed
- Set up iOS simulator or connect a real device
- Trust the computer on the iOS device if using a real device
xcode-select --install
Additional notes
Environment variables:
- JAVA_HOME: path to JDK
- ANDROID_HOME: path to Android SDK
- PATH should include Android SDK tools and platform-tools
Common issues:
- Ensure Appium server is running before tests
- Verify device connectivity with adb devices for Android or Xcode/iOS tooling for iOS
- If environment variables are not loaded, source your shell config (e.g., source ~/.bash_profile or source ~/.zshrc)
MCP-specific tips:
- The MCP server supports Android and iOS configurations as shown in the examples; adjust deviceName, app, appPackage/appActivity (Android) or bundleId/udid (iOS) as needed
- W3C Actions-based gestures are supported for more reliable interactions; fallback paths exist for compatibility
- Use the examples directory to tailor your own test configurations and capabilities
Related MCP Servers
iterm
A Model Context Protocol server that executes commands in the current iTerm session - useful for REPL and CLI assistance
mcp
Octopus Deploy Official MCP Server
furi
CLI & API for MCP management
editor
MCP Server for Phaser Editor
DoorDash
MCP server from JordanDalton/DoorDash-MCP-Server
mcp
MCP сервер для автоматического создания и развертывания приложений в Timeweb Cloud