Appium
Appium MCP on Steroids!
What is Appium?
Appium is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to appium mcp on steroids!
Appium MCP on Steroids!
This server falls under the Browser Automation category on MCPgee, the world's largest MCP server directory with 33,000+ servers.
Features
- Appium MCP on Steroids!
Use Cases
Maintainer
Works with
Installation
NPM
npx -y appium-mcpManual Installation
npx -y appium-mcpConfiguration
Configuration Details
claude_desktop_config.json
Performance
Response Metrics
Resource Usage
How to Set Up and Use Appium
The Appium MCP Server connects AI assistants directly to Appium's mobile automation framework, enabling natural language control of iOS and Android applications for testing, QA, and exploratory automation. It exposes a comprehensive set of tools covering session management, element interaction, gesture simulation, screenshot capture, test generation, and vision-based element discovery — making it possible to automate complex mobile flows without writing test code by hand. Teams use it to accelerate mobile QA, generate test suites from recorded sessions, and interactively debug mobile apps through conversation.
Prerequisites
- Node.js 18+ and npm installed
- Appium 2.x installed globally (npm install -g appium) with platform drivers (uiautomator2 for Android, xcuitest for iOS)
- Android SDK installed with ANDROID_HOME environment variable set (for Android), or Xcode installed (for iOS)
- A device capabilities JSON file for your target device or emulator
- An MCP-compatible client such as Claude Desktop, Cursor, or Claude Code
Install Appium and required drivers
Install Appium 2.x globally and the platform-specific drivers needed. UiAutomator2 handles Android automation; XCUITest handles iOS.
npm install -g appium
appium driver install uiautomator2
appium driver install xcuitestCreate a device capabilities file
Create a JSON capabilities file that defines your target device. The MCP server reads this via the CAPABILITIES_CONFIG environment variable to know which device and app to target during sessions.
{
"platformName": "iOS",
"deviceName": "iPhone 15 Simulator",
"platformVersion": "17.0",
"app": "/path/to/your/MyApp.app",
"automationName": "XCUITest"
}Start the Appium server
Launch the Appium server so the MCP bridge can create automation sessions. Keep this running in a separate terminal while your MCP client is active.
appium server --port 4723Add appium-mcp to your MCP client configuration
Edit your MCP client config file (e.g. claude_desktop_config.json) to register the appium-mcp server with the required environment variables pointing to your local setup.
{
"mcpServers": {
"appium-mcp": {
"command": "npx",
"args": ["-y", "appium-mcp"],
"env": {
"ANDROID_HOME": "/path/to/android/sdk",
"CAPABILITIES_CONFIG": "/path/to/capabilities.json",
"SCREENSHOTS_DIR": "/tmp/screenshots"
}
}
}
}Restart your MCP client and start automating
Restart Claude Desktop or your MCP client after saving changes. Use select_device to pick your target device, then describe the mobile interaction you want to automate in plain English.
Appium Examples
Client configuration
claude_desktop_config.json configuration for the Appium MCP server targeting an Android device.
{
"mcpServers": {
"appium-mcp": {
"disabled": false,
"timeout": 100,
"type": "stdio",
"command": "npx",
"args": ["-y", "appium-mcp"],
"env": {
"ANDROID_HOME": "/Users/yourname/Library/Android/sdk",
"CAPABILITIES_CONFIG": "/Users/yourname/.appium/android-caps.json",
"SCREENSHOTS_DIR": "/tmp/appium-screenshots",
"NO_UI": "true"
}
}
}
}Prompts to try
Natural language automation requests to give your AI assistant with the Appium MCP server active.
- "Launch the banking app, log in with demo credentials, and take a screenshot of the account balance screen"
- "Find all buttons visible on the current screen and list their accessibility IDs"
- "Swipe up to scroll the feed, tap the third post, and generate a locator for the Like button"
- "Record the screen while I navigate through the checkout flow, then generate a Python pytest test from it"
- "Tap the search field, type 'coffee shops near me', and verify search results appear"Troubleshooting Appium
Session creation fails with connection refused on port 4723
The Appium server must be running before the MCP server tries to create sessions. Start it with 'appium server --port 4723' in a separate terminal. If you changed the port, update your capabilities file accordingly.
ANDROID_HOME not recognized or Android device not detected
Ensure ANDROID_HOME is set to the correct SDK path (e.g. /Users/yourname/Library/Android/sdk on macOS). Run 'adb devices' to confirm device visibility. The MCP server inherits environment variables from the config — set them explicitly in the env block rather than relying on shell profile variables.
Vision-based element finding returns no results
Set AI_VISION_ENABLED=true and provide valid AI_VISION_API_KEY and AI_VISION_API_BASE_URL values pointing to a compatible vision model API. Fall back to traditional locator strategies via appium_find_element using accessibility IDs or resource IDs if vision is unavailable.
Frequently Asked Questions about Appium
What is Appium?
Appium is a Model Context Protocol (MCP) server that appium mcp on steroids! It connects AI assistants to external tools and data sources through a standardized interface.
How do I install Appium?
Install via npm with the command: npx -y appium-mcp. Then add the server configuration to your AI client's JSON config file (e.g., claude_desktop_config.json or .cursor/mcp.json).
Which AI clients work with Appium?
Appium works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.
Is Appium free to use?
Yes, Appium is open source and available under the Apache-2.0 license. You can use it freely in both personal and commercial projects.
Appium Alternatives — Similar Browser Automation Servers
Looking for alternatives to Appium? Here are other popular browser automation servers you can use with Claude, Cursor, and VS Code.
Chrome DevTools MCP
★ 40.6kAI-powered Chrome automation server with natural language element detection. Control Chrome browser through MCP protocol for testing, debugging, and performance analysis. Features 91% accuracy in element location, works with free AI models, and suppo
UI TARS Desktop
★ 34.9k📇 🏠 - Browser automation capabilities using Puppeteer, both support local and remote browser connection.
Playwright
★ 32.8kA production-ready browser automation server that enables AI assistants to interact with web pages using tools for navigation, element interaction, and data extraction. It features a built-in Inspector UI and robust crash recovery for reliable automa
Page Agent
★ 18.0kJavaScript in-page GUI agent. Control web interfaces with natural language.
Chrome
★ 11.7kAn extension-based MCP server that enables AI assistants to control your browser, leveraging existing sessions and login states for automation and content analysis. It provides over 20 tools for semantic tab search, interactive element manipulation,
LAMDA
★ 7.8kThe most powerful Android RPA agent framework, next generation mobile automation.
Browse More Browser Automation MCP Servers
Explore all browser automation servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.
Set Up Appium in Your Editor
Choose your AI client for step-by-step setup instructions.
Quick Config Preview
Add this to your claude_desktop_config.json or .cursor/mcp.json
Ready to use Appium?
Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.