Skip to main content
Glama
DB-25

arc-control-mcp

Trusted Click

trusted_click

Click elements with real trusted mouse events after scrolling into view when synthetic clicks fail on widgets, menus, autocomplete, or double/right-click targets.

Instructions

Click an element with a real mouse event (isTrusted true), at its center after scrolling it into view. Use it when the synthetic click tool is ignored: widgets gated on event.isTrusted, autocomplete and menus that open on a real pointer, double clicks, right clicks. Needs the DevTools engine. Refuses a disabled control. Returns coveredBy when another element sits on top, because a real click lands on that element. Top-level page only: elements inside an iframe are not reachable by selector.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nthNoWhich match to act on when several exist, 0-based
exactNoFor "text=", "label=" and "placeholder=" selectors, require the whole trimmed text to equal the label. No effect on CSS, ref= or role= selectors.
buttonNoMouse buttonleft
tab_idNoArc tab id from list_tabs. Omit to use this agent's current tab. A tool that changes a tab will not fall back to the tab the user is looking at, so pass this or call open_url first.
selectorYesCSS selector, or one of: "text=Some label" (visible text, case-insensitive substring, exact matches ranked first); "ref=e12" (a ref from snapshot, re-resolved if the page re-rendered); "role=button[name="Save"]" (ARIA or implicit role, name an exact match, or name~="sav" for a substring); "label=Email" (the control a label names); "placeholder=Search"
click_countNo1 for a click, 2 for a double click (the page gets dblclick), 3 for a triple click (selects a paragraph)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.4.0

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the annotations: discloses the engine dependency, that disabled controls are refused, that coverage by another element is reported via coveredBy, and that only top-level page elements are reachable. These are exactly the gotchas an agent needs before invoking a real-input click.

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?

Front-loaded with the core purpose, and each subsequent sentence carries distinct information (engine requirement, refusal behavior, coveredBy, iframe limit). It is dense and slightly long, but no sentence is filler.

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?

For a mutation tool with no output schema, it covers the engine prerequisite, the failure/refusal conditions, the return signal (coveredBy), and the reachability limitation, leaving nothing an agent needs in order to call it correctly.

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 coverage is 100%, so the schema already documents all six parameters in detail (including the click_count double/triple semantics and the button enum). The description's mention of "double clicks, right clicks" maps loosely to click_count and button but is redundant with the schema text, so baseline 3 is appropriate.

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 and resource (click an element with a real mouse event) and immediately distinguishes itself from the sibling synthetic `click` tool by its isTrusted mechanism and scroll-into-view behavior. An agent can tell exactly which of the two click tools to pick without inspecting either schema.

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?

Explicit when-to-use: "Use it when the synthetic click tool is ignored" with concrete triggers (widgets gated on event.isTrusted, autocomplete/menus on a real pointer, double/right clicks). It names the alternative tool and the condition that selects it, and adds a prerequisite (needs the DevTools engine) and an exclusion (iframe elements unreachable).

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