app_audit
This tool on every surface: CLI · MCP · Python · JavaScript · Go · Java · .NET
Run the platform's own accessibility audit on the screen in front. On iOS it is Apple's, XCUITest's performAccessibilityAudit through WebDriverAgent (iOS 17 and later), on a simulator or a real iPhone: hit regions too small to touch, contrast, labels that repeat their traits, Dynamic Type, clipped text. Each finding has its type, Apple's summary and sentence, the element, a locator for it when it has a test id or a label, and its bounds in device pixels, as map's are. It audits only what is on screen. Its hit-region rule is Apple's own and far below the 44pt design guideline — a 24x25pt target passed it — so app_screen with inspect, which checks 44pt, can name what this does not. Android refuses: its audits run inside the app.
Read-only: readOnlyHint is true.
Arguments
| Name | Type | Required | What it is |
|---|---|---|---|
device | string | Device serial to target, e.g. "emulator-5554". Omit when only one device is running. | |
driver | string: uiautomator2, uiautomator, wda | Driver to use: "uiautomator2" (default for Android; fast, installs a server APK on first use), "uiautomator" (Android, installs nothing, slower, cannot type), or "wda" (WebDriverAgent: iOS simulators and iPhones). |
Examples
Each is the arguments of a tools/call request; the first is shown whole.
Run the platform's own accessibility audit on the screen in front
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "app_audit",
"arguments": {}
}
}