Skip to main content
Glama

wait_for_window

Read-onlyIdempotent

Pause until a Hyprland window, same-process popup, or dialog appears, then return its app state. Use after actions expected to open new windows or dialogs.

Instructions

Wait for a Hyprland window or same-process related popup/dialog to appear, then return its app state. Use after actions expected to open dialogs or new windows.

Input Schema

NameRequiredDescriptionDefault
appNoApp name, Hyprland class/title, pid, or address:0x... selector.
classNoWindow class substring to wait for.
titleNoWindow title substring to wait for.
timeoutNoSeconds to wait. Defaults to 5; capped at 30.
related_toNoRoot app/window selector whose related popup/dialog should appear.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds useful behavior beyond that: it blocks until a window/popup appears and returns app state, clarifying this is a blocking poll rather than a fire-and-forget call.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences, front-loaded with the core purpose and followed by the usage trigger. No filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-required-parameter read-only wait tool with no output schema, the description adequately covers purpose, trigger, and that app state is returned. Only minor gaps remain, such as whether it fails or returns empty on timeout.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so each of the five optional parameters (app, class, title, timeout, related_to) is already documented in the schema, including the timeout cap. The description adds no syntax or selector-format detail beyond what is provided, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Wait for') and resource ('Hyprland window or same-process related popup/dialog') plus the post-condition ('then return its app state'). An agent can immediately tell this blocks until a window appears rather than performing an action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Use after actions expected to open dialogs or new windows' gives a clear triggering condition. It does not, however, name alternatives such as wait_for_close or generic wait, leaving the agent to infer which wait variant to pick.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.