run_actions
Run a short sequence of known UI actions and return the final state. Use for multi-step operations when new information or approval would require stopping.
Instructions
Run a short known sequence and return its final state. Single-action tools already return text state; use this for several known actions or an inline final screenshot. Example: focus an observed field, select all, paste, then inspect the result. Stop when new information or approval is needed. Accepts {"method":"wait","ms":N} for 1–15000 ms on every platform; wait sends no input and honours person stops. Coordinate input must be first (including before any wait) and use a fresh screenshot. Stops on error or an unknown accessibility action outcome without replay; earlier actions may have run. An unknown outcome requires an explicit get_app_state before continuing. A locked pattern that refreshes indexes stops the remaining batch and returns fresh state; choose subsequent actions from that state.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"app": "<app>",
"actions": "<actions>"
},
"name": "run_actions"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| app | Yes | App name or full app path; macOS bundle ID; macOS and Windows pid:<pid>; Windows process name, window title fragment, or Start-menu shortcut name; Linux desktop entry name, executable name or window title fragment | |
| scope | No | macOS and Windows: element index from the latest returned state. Read only its retained subtree, renumbered from [1], including after actions. If it disappears, return the whole window with a notice. Linux returns INVALID_ARGUMENT. | |
| actions | Yes | ||
| disableDiff | No | ||
| waitForText | No | Wait for exact, case-sensitive text in element lines only (within scope when supplied), excluding headers and window summaries, without UI actions. Use only a known expected label during a real load; omit on ordinary reads. | |
| waitTimeoutMs | No | Polling deadline for waitForText; defaults to 5000 ms. Native call timeouts remain separate. | |
| includeScreenshot | No | Default false. Use true for visual content or coordinate input; omit for indexed controls, menus, dialogs and text editing. |