Skip to main content
Glama

dismiss_dialog

Close a blocking modal dialog in TouchDesigner and verify it is gone. Default auto tries close, escape, then enter until the dialog disappears; main window is never targeted.

Instructions

Dismiss a modal dialog that is blocking a TouchDesigner instance, then verify it is gone. Default action=auto runs the ladder close (WM_CLOSE) -> escape -> enter until the window disappears; the main TouchDesigner window is never a target. Use list_dialogs (with screenshot=true) first so you know what you are dismissing: close/escape decline a question, enter accepts its default.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionNoauto = close, then escape, then enter, stopping when the dialog is gone. A single rung tries only that.auto
dialogNoWhich dialog: a title substring or the window id from list_dialogs. Omit to take the first listed dialog.
instanceNoRegistered instance name (toe basename). Omit for this session's pinned instance.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv6.2.67

TDQS

A4.6/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the auto ladder sequence (WM_CLOSE -> escape -> enter), that it stops when the window disappears, and the consequence that enter accepts a dialog's default (potentially committing something). It omits failure behavior (what happens if the dialog never closes) and any permission/instance-targeting caveats.

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 dense sentences, front-loaded with the action and the ladder behavior, then the sequencing guidance. No filler; every clause adds decision-relevant information.

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 no-annotation, no-output-schema tool the description is nearly complete: it covers the default behavior, the fallback ladder, the safety boundary, and the recommended pre-step. A minor gap is the absence of failure/timeout behavior when the dialog persists.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds real meaning beyond the schema by explaining the semantic effect of each action (close/escape decline vs enter accepts the default) rather than just restating the enum values.

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+resource (dismiss a modal dialog) plus the scope (blocking a TouchDesigner instance) and the post-condition (verify it is gone). It also carves out a boundary the siblings don't cover, noting the main TouchDesigner window is never a target.

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

Usage Guidelines5/5

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

Explicitly routes the agent to run list_dialogs (with screenshot=true) first, and gives decision guidance for the rungs: close/escape decline a question, enter accepts its default. This tells the agent not just when to call it but which action to choose.

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