Wait for the runner
AI agents invoke ui_wait_for_change to trigger actions in UI Bridge MCP. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call — builds kicked off, notifications sent, workflows started.
This tool executes a blocking/waiting operation on external UI state rather than passively reading. While not immediately destructive or financial, it represents an Execute-category action that initiates a real-world process interaction.
From the tool's definition The tool name is 'ui_wait_for_change' and description states 'Wait for the runner'. Given the server's purpose of enabling AI to 'interact with UI elements' and 'control mode for the runner's own UI', this tool triggers an external operation (waiting for UI…
Attacks that exploit this kind of access
Wait for the runner. It is categorised as a Execute tool in the UI Bridge MCP MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
Register the UI Bridge MCP server in PolicyLayer and add a rule for ui_wait_for_change: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches UI Bridge MCP. Nothing to install.
ui_wait_for_change is a Execute tool with high risk. Execute tools should be rate-limited and have argument validation enabled.
Yes. Add a rate_limit block to the ui_wait_for_change rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for ui_wait_for_change. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
ui_wait_for_change is provided by the UI Bridge MCP server (qontinui/ui-bridge-mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Every MCP server has a record like this.
Type a name, get the same breakdown: verified identity, auth posture, risk grade, capabilities, recommended policy.
Teams ship this data inside their own products. See what a licence covers →