ui_wait_for_element
Screen, windows & UI · macOS · Windows
Effect: read (strongest supported action). Status: gated.
Gated means the tool requires an installed app, a connected account, permission, or runtime availability. Check those requirements on the listed platform before using it.
macOS
Purpose
Deterministic synchronization — replaces all sleeps. Polls for an element until it reaches state (present|enabled|focused|absent) or times out. A timeout is an EXPLICIT error, never a false success. Returns {satisfied, waited_ms, element_ref?, bounds?, enabled_unknown?}. state:'enabled' is satisfied unless the app publishes AXEnabled=false; if the app publishes no AXEnabled at all the result carries enabled_unknown:true — the wait did not block, but nothing was actually verified about enabled-ness.
Required inputs
No required inputs are declared in this platform's schema. Optional selectors and runtime requirements may still apply.
Permissions and confirmation
No explicit confirmation parameter is exposed in this snapshot. This does not grant permission to act: obtain user authorization before any real action.
- Use only the apps, accounts and resources authorized by the user on this platform. Consult this tool's platform-specific description for its connection and permission requirements; this catalog does not assert additional OAuth scopes or OS entitlements.
Full input schema — macOS
{
"properties": {
"app_bundle_id": {
"type": "string"
},
"label": {
"type": "string"
},
"match": {
"enum": [
"exact",
"contains"
],
"type": "string"
},
"poll_ms": {
"description": "Default 150.",
"type": "integer"
},
"role": {
"type": "string"
},
"state": {
"description": "Default present.",
"enum": [
"present",
"enabled",
"focused",
"absent"
],
"type": "string"
},
"timeout_ms": {
"description": "Default 5000.",
"type": "integer"
},
"window_id": {
"type": "string"
}
},
"required": [],
"type": "object"
}Documentation example
Do not execute this example. These concrete inputs refer to a fictional demonstration dataset. Resolve real handles and obtain user authorization before any real call.
{
"label": "Save"
}Windows
Purpose
Deterministic synchronization — replaces all sleeps. Polls for an element until it reaches state (present|enabled|focused|absent) or times out. A timeout is an EXPLICIT error, never a false success. Returns {satisfied, waited_ms, element_ref?, bounds?}.
Required inputs
No required inputs are declared in this platform's schema. Optional selectors and runtime requirements may still apply.
Permissions and confirmation
No explicit confirmation parameter is exposed in this snapshot. This does not grant permission to act: obtain user authorization before any real action.
- Use only the apps, accounts and resources authorized by the user on this platform. Consult this tool's platform-specific description for its connection and permission requirements; this catalog does not assert additional OAuth scopes or OS entitlements.
Full input schema — Windows
{
"properties": {
"app": {
"type": "string"
},
"label": {
"type": "string"
},
"match": {
"enum": [
"exact",
"contains"
],
"type": "string"
},
"poll_ms": {
"description": "Default 150.",
"type": "integer"
},
"role": {
"type": "string"
},
"state": {
"description": "Default present.",
"enum": [
"present",
"enabled",
"focused",
"absent"
],
"type": "string"
},
"timeout_ms": {
"description": "Default 5000.",
"type": "integer"
}
},
"required": [],
"type": "object"
}Documentation example
Do not execute this example. These concrete inputs refer to a fictional demonstration dataset. Resolve real handles and obtain user authorization before any real call.
{
"label": "Save"
}