Karagöz
Allows automating Android emulators and physical devices via adb, including device selection, screenshots, accessibility UI tree inspection, touch and text input, app lifecycle management, and log capture.
Allows automating iOS simulators and physical devices via simctl and WebDriverAgent/XCTest, including device selection, screenshots, accessibility UI tree inspection, touch and text input, app lifecycle management, and log capture.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@KaragözTake a screenshot of the Android emulator and show the UI tree."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Karagöz
Device automation for mobile apps. One tool, four targets: Android emulator, Android physical device, iOS simulator, iOS physical device. Works as a CLI, and as an MCP server when you want an AI agent driving it.
Status: early development. Nothing works yet. The design is settled, the code is not written.
What it does
Drive a device, observe the screen, touch it, capture what you see.
devices list and select a device
screenshot full resolution, with scale metadata
ui-tree accessibility tree, elements and bounding boxes
tap / swipe / text / key interaction
install / launch / terminate app lifecycle
logs device logsSame commands across all four targets. One interface, four drivers.
Related MCP server: Android-MCP
What it is not
Not a test framework. No assertions, no test runner, no recorded flows, no retry policy, no reports.
Not a design comparison tool. Figma diffing, measurement and reporting belong a layer above. Karagöz produces the raw input; it does not interpret it.
It is the primitive layer. Each command does one thing and exits.
Name
Karagöz is Turkish shadow puppet theatre. Figures are driven with rods from behind a lit screen while the audience watches the movement on the screen. That is what this tool does.
Targets
Target | Transport |
Android emulator |
|
Android device |
|
iOS simulator |
|
iOS device | tunnel plus WebDriverAgent / XCTest |
Android comes first, iOS follows.
Requirements
Node 22 or newer. Platform tools are detected at runtime, not bundled: adb for Android, Xcode command line tools for iOS.
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Control real Android and iOS devices with LLM agents — tap, swipe, type, automate flows.
Drive real devices from your AI Coding tool. Embed a client SDK (Unity, Godot, Flutter, iOS/macOS, Android, React Native, Web) in your app, then capture screenshots, traverse the UI tree, inject taps and key events, and run automated test tasks on the physical device over a secure relay.
remote debug iOS/Android/Unity/Godot/Flutter/RN/Web on real-device.ui-tree/screenshots/taps,tests.
- LimrunOAuthcom.limrun
Cloud iOS simulators and Android emulators your agent can create, drive, and throw away.
Related MCP Servers
- FlicenseAqualityDmaintenanceEnables AI agents to interact with Android devices through UI manipulation, screen capture, touch gestures, text input, and app management via ADB. Provides comprehensive mobile automation capabilities including element detection, navigation, and application control for Android device testing and interaction.94-
- AlicenseBqualityBmaintenanceEnables AI agents to control Android devices and emulators through direct UI interaction, allowing app navigation, automated testing, and real-world task execution via ADB without computer vision or scripts.182MIT
- AlicenseAqualityBmaintenanceEnables AI assistants to control mobile and desktop devices with natural language, including running automation tasks, taking screenshots, and managing devices.65 npmMIT
- AlicenseAqualityCmaintenanceEnables AI agents to control, inspect, and automate Android devices, Waydroid containers, and AVD emulators over ADB. Provides tools for screenshots, UI-hierarchy text-based tapping, gestures, key presses, text input, app management, and raw shell commands.12MIT