MCP Appium Server
A Model Context Protocol (MCP) server implementation for mobile app automation using Appium.
Prerequisites
- Node.js (v14 or higher)
- Java Development Kit (JDK)
- Android SDK (for Android testing)
- Xcode (for iOS testing, macOS only)
- Appium Server
- Android device or emulator / iOS device or simulator
Setup
- Install dependencies:
npm install
- Install and start Appium server:
npm install -g appium
appium
- Set up Android device/emulator:
- Enable Developer Options on your Android device
- Enable USB Debugging
- Connect device via USB or start an emulator
- Verify device is connected using
adb devices
Running Tests
- Build the project:
npm run build
- Start the MCP server:
npm run dev
- In a new terminal, run the test:
npm test
Test Configuration
The example test uses the Android Settings app as a demo. To test your own app:
Edit
examples/appium-test.ts
:- Update
deviceName
to match your device - Set
app
path to your APK file, or - Update
appPackage
andappActivity
for an installed app
- Update
Common capabilities configuration:
const capabilities: AppiumCapabilities = {
platformName: 'Android',
deviceName: 'YOUR_DEVICE_NAME',
automationName: 'UiAutomator2',
// For installing and testing an APK:
app: './path/to/your/app.apk',
// OR for testing an installed app:
appPackage: 'your.app.package',
appActivity: '.MainActivity',
noReset: true
};
Available Actions
The MCP server supports various Appium actions:
Element Interactions:
- Find elements
- Tap/click
- Type text
- Scroll to element
- Long press
App Management:
- Launch/close app
- Reset app
- Get current package/activity
Device Controls:
- Screen orientation
- Keyboard handling
- Device lock/unlock
- Screenshots
- Battery info
Advanced Features:
- Context switching (Native/WebView)
- File operations
- Notifications
- Custom gestures
Troubleshooting
Device not found:
- Check
adb devices
output - Verify USB debugging is enabled
- Try reconnecting the device
- Check
App not installing:
- Verify APK path is correct
- Check device has enough storage
- Ensure app is signed for debug
Elements not found:
- Use Appium Inspector to verify selectors
- Check if elements are visible on screen
- Try different locator strategies
Connection issues:
- Verify Appium server is running
- Check port conflicts
- Ensure correct capabilities are set
Contributing
Feel free to submit issues and pull requests for additional features or bug fixes.
License
MIT
MCP Appium Server
Project Details
- Rsec08/appium-mcp
- Apache License 2.0
- Last Updated: 4/30/2025
Recomended MCP Servers
This read-only MCP Server allows you to connect to LinkedIn data from Claude Desktop through CData JDBC Drivers....
Let AI reminded about task to do using MCP
A MCP server that provides audio transcription capabilities using OpenAI's Whisper API
A lightweight service that enables AI assistants to execute AWS CLI commands (in safe containerized environment) through the...
A task management MCP server that provides comprehensive project and task tracking capabilities
MCP server for interacting with the Aseprite API
StarRocks MCP (Model Context Protocol) Server
IP Geolocation Server for MCP