Public leaderboard

Public assessment

mcpware/ui-annotator-mcp (@mcpware/ui-annotator)

mcpware-ui-annotator · v0.1.0 · scanned

What changed in the harness

Selection accuracy 95→98, token cost up 6%, unconfirmed writes 100%→100%.

Category breakdown

Where the score comes from.

Earned points across the four signals Gradable measures. Safety and Legibility are scored out of 30; Economics and Discoverability are scored out of 20.

01Safety

30.0 / 30

30.0 out of 30
02Legibility

28.0 / 30

28.0 out of 30
03Economics

20.0 / 20

20.0 out of 20
04Discoverability

12.1 / 20

12.1 out of 20

Highest-impact fix

Estimated gain +8 points

Make target tools discoverable on the first call

Clarify tool names, decision boundaries, and required argument schemas so an agent can choose and construct the target call without exploratory steps.

Description evidence

Defects and rewrites.

3 defects found across the exposed tool descriptions. Suggested rewrites make purpose, inputs, boundaries, and returns easier for an agent to understand.

Tool Defect types Suggested rewrite
highlight_element
no_return_description
Briefly flash-highlight the element with the given name on the annotated page so the user can visually confirm which element you are referring to. Returns a confirmation that the highlight was triggered, or an error if the element name is not found.
rescan_elements
no_return_description
Force the annotated page to rescan all UI elements. Use this after the page content has changed (e.g. after navigation, DOM updates, or user interaction) so the detected element set stays current. Returns the updated list of detected elements, including names, CSS selectors, positions, and sizes.
inspect_mode
no_return_description
Toggle inspect mode on the annotated page. When ON, the user can click any element to copy its name; when OFF, the page behaves normally. Use this to help the user copy element names for communicating design changes. Returns the new inspect mode state (true if enabled, false if disabled).

Selection evidence

Confusable tool pairs.

2 pairs where similar names or overlapping descriptions may send an agent toward the wrong tool.

Tool A Tool B Confidence Why they collide
get_elements rescan_elements medium Tasks like "refresh the page elements" or "get the latest elements after the page changed" are ambiguous: the agent may call get_elements to fetch current annotations, or rescan_elements to re-detect. The boundary between retrieving elements and forcing a re-detection is not clear from descriptions alone.
get_elements highlight_element low Phrasing like "show me the element" or "point out the element on the page" could be read either as listing what elements exist (get_elements, which explains what is on the page) or visually flashing one (highlight_element). The mismatch is plausible but weak since highlight requires a specific name while get_elements returns the full set.

Compare the field

One score is useful.
The evidence makes it actionable.

Back to the leaderboard