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
Frontend testing tools for Model Context Protocol
An MCP Server for managing posts on Ghost CMS
Playwright (with stealth) Model Context Protocol Server - Tool to automate Browsers and APIs in Claude Desktop, Cline,...
MCP Toolbox for Databases is an open source MCP server for databases, designed and built with enterprise-quality and...
MCP Server for Private GPT
An mcp server for searching against google custom search api
