Skip to main content
Glama

tap_css

Taps a layout viewport point using CSS pixel coordinates, such as values returned by getBoundingClientRect, to target elements on an iOS Safari page.

Instructions

Tap a point given in CSS pixels of the layout viewport (what getBoundingClientRect returns).

Input Schema

NameRequiredDescriptionDefault
xYes
yYes
pageNoindex in inspector_pages; default the first page with a real address
waitNoseconds to wait for the page list, default 60

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It says nothing about what event is dispatched, whether it waits for the page/settle, what the return value is, or how the default page selection behaves — all relevant for a 4-parameter mutation-like interaction tool.

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?

A single sentence with zero filler, and the coordinate-space qualifier — the most important information — is placed immediately after the verb.

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

Completeness3/5

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

For a simple point-tap tool the coordinate semantics are covered, but with no annotations, no output schema, and an undocumented default page/wait behavior, the agent still lacks the behavioral picture for reliable invocation.

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 50%: page and wait are documented in the schema, while x and y are bare numbers. The description usefully supplies the missing meaning for x/y (CSS pixels, layout viewport, getBoundingClientRect origin), which is real added value, but it says nothing about page or wait.

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

Purpose4/5

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

States a concrete verb (tap) plus the exact coordinate space ('CSS pixels of the layout viewport'), which is precisely what distinguishes it from the tap_px and tap siblings. However, it never names those siblings, so differentiation is inferred rather than explicit.

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

Usage Guidelines2/5

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

The getBoundingClientRect parenthetical hints at when the coordinates come from, but there is no explicit guidance on choosing this over tap, tap_px, or tap_element, and no exclusions or preconditions stated.

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