{"id":"alexgladkov-claude-in-mobile","name":"claude-in-mobile","homepage":null,"repo_url":"https://github.com/AlexGladkov/claude-in-mobile","category":"automation","subcategories":[],"tags":["mcp","automation","mobile","android-adb","ios-simulator","webdriveragent","desktop","compose","ui-testing","device-control","cli","rust","typescript"],"what_it_does":"claude-in-mobile is an MCP server (and also a standalone CLI) that lets an AI client control devices and apps for automation: Android via ADB, iOS Simulator via simctl and optional WebDriverAgent for UI inspection/element tapping, Desktop via a Compose Multiplatform companion, and Aurora OS via audb (with additional on-device Python for gestures). It exposes “tools” such as device listing, screenshots (including annotated screenshots), UI interactions (tap/swipe/input), app control, permissions management, and log/system information.","use_cases":["End-to-end UI test automation driven by natural language","Debugging mobile apps by inspecting UI and device logs","Automating repetitive mobile-device workflows (tap/type/navigation)","Cross-platform smoke testing across Android + iOS Simulator + desktop apps","Granting/revoking mobile app permissions during test setup","Screenshot capture for model-based UI understanding (including annotated screenshots)"],"not_for":["Production-grade remote device control over untrusted networks without strong operational security controls","Controlling physical iOS devices (explicitly iOS Simulator only, per README)","Use where you need a stable, documented public HTTP/REST API contract (it is primarily MCP/stdio-based)","Workflows requiring guaranteed idempotency and transactional semantics (device actions are inherently stateful)"],"best_when":"You want an agent-driven, cross-platform automation layer that speaks MCP/stdio to your AI client and you can provide the required local tooling (ADB/Xcode/Appium/WDA/audb/companion build).","avoid_when":"You need enterprise auth, multi-tenant isolation, or strict compliance guarantees out of the box, or you cannot tolerate the operational complexity of device/simulator dependencies.","alternatives":["Other MCP-based UI automation integrations (where available)","Browser/CDP automation frameworks (for web-only flows)","Appium (direct) for Android/iOS UI automation","Detox/XCUITest (native test frameworks) for iOS/React Native","ADB + custom scripts for Android-only automation","Compose Desktop testing frameworks for desktop-only automation"],"af_score":61.8,"security_score":24.2,"reliability_score":32.5,"package_type":"mcp_server","discovery_source":["github"],"priority":"high","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-03-30T13:40:20.090700+00:00","interface":{"has_rest_api":false,"has_graphql":false,"has_grpc":false,"has_mcp_server":true,"mcp_server_url":null,"has_sdk":true,"sdk_languages":["TypeScript"],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":["stdio/local process transport (MCP)","Local CLI usage"],"oauth":false,"scopes":false,"notes":"The README does not describe user authentication/authorization for the server itself. Access is effectively local-process based (run via npx/CLI and MCP stdio), so security depends on who can execute the server and the underlying device tooling access."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"No pricing information in provided content; appears to be open-source (MIT) and self-hosted/local."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":61.8,"security_score":24.2,"reliability_score":32.5,"mcp_server_quality":85.0,"documentation_accuracy":80.0,"error_message_quality":0.0,"error_message_notes":null,"auth_complexity":95.0,"rate_limit_clarity":10.0,"tls_enforcement":0.0,"auth_strength":20.0,"scope_granularity":20.0,"dependency_hygiene":55.0,"secret_handling":35.0,"security_notes":"No auth model is described for the MCP server; it appears to rely on local execution. Because it can control devices, grant/revoke permissions, run shell commands (Android), and read logs, it has high potential impact if run in an unsafe context. Dependency hygiene and secret-handling details are not provided; assume default risk for unpublished implementation details. TLS is not applicable because the interface is stdio/local rather than network-based, but if any HTTP connections are made (e.g., WDA port 8100+), transport security guidance is not described.","uptime_documented":0.0,"version_stability":55.0,"breaking_changes_history":30.0,"error_recovery":45.0,"idempotency_support":"false","idempotency_notes":"No explicit idempotency guarantees are documented. Actions like tap/input/launch typically change device/UI state.","pagination_style":"none","retry_guidance_documented":false,"known_agent_gotchas":["Statefulness: UI actions (tap/type/swipe/launch) are not idempotent; agents may need to confirm current screen before acting.","iOS element interactions depend on WebDriverAgent; without WDA, some element-based tools may fail or be limited.","Platform capability differences: some tools are explicitly not supported on certain targets (e.g., input_text on Aurora, desktop app install/stop/launch limitations as listed).","Device/environment dependencies: ADB connectivity, simulator boot state, WDA port availability (8100+), audb/SSH and on-device Python for Aurora gestures.","screenshot size/latency: annotated/smart screenshots can add processing time; agents should handle timeouts."]}}