Maestro
OfficialReferenced as a predecessor UI testing framework that Maestro builds upon and improves, showing Maestro's evolution from earlier mobile testing approaches.
Integrates with GitHub for accessing repositories and issues, referenced in the README for contributing and viewing good first issues.
Provides integration with Slack for community engagement, allowing users to join the public Maestro channel for discussions and support.
Enables defining UI tests using YAML syntax, providing a declarative approach to creating mobile and web UI test scenarios.
Click on "Install 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., "@Maestrocreate a test flow for login on Android"
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.
Great things happen when testers connect —Join the Maestro Community
Table of Contents
Related MCP server: mobile-device-mcp
Why Maestro?
Maestro is built on learnings from its predecessors (Appium, Espresso, UIAutomator, XCTest, Selenium, Playwright) and allows you to easily define and test your Flows.
By combining a human-readable YAML syntax with an interpreted execution engine, it lets you write, run, and scale cross-platform end-to-end tests for mobile and web with ease.
Cross-platform coverage – test Android, iOS, and web apps (React Native, Flutter, hybrid) on emulators, simulators, or real devices.
Human-readable YAML flows – express interactions as commands like
launchApp,tapOn, andassertVisible.Resilience & smart waiting – built-in flakiness tolerance and automatic waiting handle dynamic UIs without manual
sleep()calls.Fast iteration & simple install – flows are interpreted (no compilation) and installation is a single script.
Simple Example:
# flow_contacts_android.yaml
appId: com.android.contacts
---
- launchApp
- tapOn: "Create new contact"
- tapOn: "First Name"
- inputText: "John"
- tapOn: "Last Name"
- inputText: "Snow"
- tapOn: "Save"Getting Started
Maestro requires Java 17 or higher to be installed on your system. You can verify your Java version by running:
java -versionInstalling the CLI:
Run the following command to install Maestro on macOS, Linux or Windows (WSL):
curl -fsSL "https://get.maestro.mobile.dev" | bashThe links below will guide you through the next steps.
Installing Maestro (includes regular Windows installation)
Resources & Community
Contributing
Maestro is open-source under the Apache 2.0 license — contributions are welcome!
Check good first issues
Read the Contribution Guide
Fork, create a branch, and open a Pull Request.
If you find Maestro useful, ⭐ star the repository to support the project.
Maestro Studio – Test IDE
Maestro Studio Desktop is a lightweight IDE that lets you design and execute tests visually — no terminal needed. It is also free, even though Studio is not an open-source project. So you won't find the Maestro Studio code here.
Simple setup – just download the native app for macOS, Windows, or Linux.
Visual flow builder & inspector – record interactions, inspect elements, and build flows visually.
Maestro Cloud – Parallel Execution & Scalability
When your test suite grows, run hundreds of tests in parallel on dedicated infrastructure, cutting execution times by up to 90%. Includes built-in notifications, deterministic environments, and complete debugging tools.
Pricing for Maestro Cloud is completely transparent and can be found on the pricing page.
Built with ❤️ by Maestro.devThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityCmaintenanceEnables automated testing and development of Expo/React Native apps through session-based Expo dev server management and Maestro UI automation tools for tapping, text input, screenshots, and flow execution.Last updated165,2645MIT
- AlicenseAqualityDmaintenanceMCP server that gives AI coding assistants the ability to see and interact with mobile devices. 49 tools for Android/iOS — AI-powered visual analysis (Claude + Gemini), smart tap/type by description, Flutter widget tree inspection, video recording, and test script generation. 4-tier element search with <1ms local matching. Free tier included, zero setup via npx.Last updated49843Business Source 1.1
- AlicenseAqualityAmaintenancemcp-test-runner is an MCP server that lets your AI client (Claude / Cursor / Codex / Gemini) drive your entire QA loop end-to-end: * Run tests across pytest / Jest / Cypress / Go / Maestro — single MCP surface, one env var to switch * Analyze a URL (Web DOM probe) or a live mobile screen (Maestro hierarchy) to extract testable modules + candidate cases * Generate runnaLast updated2238MIT
- FlicenseAqualityBmaintenanceAn MCP server that gives AI agents the power to record, replay, and mock mobile app interactions — combining Maestro UI automation with Proxyman network capture to generate complete, self-contained test scripts.Last updated331
Related MCP Connectors
Official MCP server for Qase — manage test cases, runs, suites, defects via AI tools.
Voice-powered bug reporting with 13 MCP tools. Record bugs by talking; let AI find and fix them.
Official Miro MCP server - Supports context to code and creating diagrams, docs, and data tables.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mobile-dev-inc/Maestro'
If you have feedback or need assistance with the MCP directory API, please join our Discord server