Skip to main content
Glama

audit_screen

Read-onlyIdempotent

Audits mobile screen snapshots from accessibility hierarchies, scoring touch targets, contrast, and visual rhythm against platform-specific iOS or Android standards.

Instructions

Audit a rendered mobile screen (iOS or Android) from a view-hierarchy/accessibility snapshot. Call with no arguments for the expected snapshot shape and how to capture it. Pass platform:"android" to score against the 48dp Material touch minimum and Material muted roles (onSurfaceVariant/outline = warn not fail); default platform:"ios" scores 44pt and treats secondaryLabel/tertiaryLabel as platform-standard. Both score touch targets, contrast, and visual rhythm (alignment, gap consistency, optical balance). Same return shape as audit_page.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
profileNoTaste profile owning the binding. Omit to search all stored profiles for one bound to the project.
projectNoProject identifier — resolves a saved taste surface binding (see bind_taste_surface). When the binding carries design_notes and a screenshot is passed, the screenshot's pixels verify the color-scheme notes; results gain note_assessments.
elementsNoElements captured from the rendered screen via an accessibility/view-hierarchy snapshot
platformNoTarget platform — 'ios' (default, 44pt minimum, iOS semantic colors) or 'android' (48dp minimum, Material semantic roles)
viewportNoScreen size in pt (iOS) or dp (Android) at capture time, e.g. {w:393,h:852} iPhone 15, {w:412,h:915} Pixel
screenshotNoOptional base64 PNG of the screen, for the caller's reference. Geometry is scored from the snapshot, not decoded pixels.
scroll_settleNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.2.9

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare the tool safe and read-only, so the bar is lower. The description counts credits by adding real behavior: no-arg self-documentation mode, platform-specific thresholds, and nuanced handling of Material/Android semantic colors as warnings rather than failures. It also links its return shape to audit_page.

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?

Five short front-loaded sentences, no filler and no repetition of schema constituents. Purpose, invocation, platform semantics, scored dimensions, and return-shape reference are each given exactly one sentence.

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 7-param tool with nested objects, no required params, and no output schema, the description is strong: it explains the input model via the no-args response and the return contract via audit_page. The only residual gap is scroll_settle and broader return-value detail, but those are partially covered by the self-documented protocol.

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 description coverage is 86%, so the baseline is 3 with no extra param info. The description still adds value: it explains what the platform choice actually changes, and the no-arguments invocation mode is a behavior absent from the schema. It does not clarify the otherwise undocumented scroll_settle, which keeps it below a 5.

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 uses a specific verb and resource: 'Audit a rendered mobile screen (iOS or Android) from a view-hierarchy/accessibility snapshot.' It also enumerates what is checked — touch targets, contrast, and visual rhythm — so it is not confused with a single-purpose audit tool and identifies the operation precisely.

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?

It gives direct invocation guidance: call with no arguments to receive the snapshot shape and capture instructions, pass platform:'android' to change scoring semantics, and omit platform for iOS. It does not explicitly state when NOT to use this tool in favor of alternatives like the specialized audit_tap_targets or audit_contrast, but the context is clear.

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