Skip to main content
Glama

interact

Drive a UI element into a new state by clicking, hovering, or focusing. Leaves the resulting state for inspection—no recording or teardown. Target by uid, selector, or coordinates.

Instructions

Perform ONE action (click/hover/focus) at a target and LEAVE the resulting state in place — no recording, no teardown. Use this to DRIVE the UI into a state — open a popup/menu/modal, reveal a tab or dropdown — so you can then inspect_element / annotated_screenshot / explain_styles the NEW state: "open the menu then tell me why it overflows", "click the tab and check the panel". Reports the target's post-action visibility + content box so you learn immediately whether it opened. Target by uid, selector, or x+y. For the causal TIMELINE of an interaction — which handler ran, what mutated, which transitions were cancelled — use record_interaction instead; interact only leaves you in the state, it does not explain the transition.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
xNoViewport x coordinate (use with y)
yNoViewport y coordinate (use with x)
uidNoElement uid from a prior page_snapshot (e.g. "e5")
actionNoWhat to do at the target — default "click". hover moves the mouse over it; focus focuses it.
selectorNoCSS selector — first match is used
settleMsNoHow long to wait for the UI to react before reporting the target's new state; default 250, clamped 0–5000
Behavior4/5

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

No annotations provided, so description carries full burden. It discloses that the tool does not record or teardown, reports post-action visibility and content box, and uses targeting methods. It could mention if scrolling into view is handled, but overall transparent.

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

Conciseness4/5

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

Somewhat lengthy but well-structured and front-loaded. Every sentence adds value: purpose, usage guidance, examples, output details, targeting methods. Could be slightly more concise, but effective.

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

Completeness5/5

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

Given 6 parameters and no output schema, the description is highly complete. It explains what to expect after action (visibility+content box), how to use different targeting, and distinguishes from sibling. Missing error conditions but still comprehensive.

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% with all parameters described. The description adds valuable context beyond schema, such as 'first match is used' for selectors and the default for action. Enriches understanding of each parameter.

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?

The description clearly states the tool performs one action (click/hover/focus) at a target and leaves the resulting state in place. It uses specific verbs and resource descriptions, and distinguishes itself from the sibling tool record_interaction.

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 states when to use this tool (to drive the UI into a state) and when to use record_interaction instead (for causal timeline). Also suggests subsequent tools like inspect_element, showing clear usage context.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mi60dev/visionaire-engine'

If you have feedback or need assistance with the MCP directory API, please join our Discord server