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 98→98, token cost up 7%, unconfirmed writes 0%→0%.

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

0.0 / 30

0.0 out of 30
02Legibility

28.3 / 30

28.3 out of 30
03Economics

20.0 / 20

20.0 out of 20
04Discoverability

18.1 / 20

18.1 out of 20

Highest-impact fix

Estimated gain +30 points

Add explicit identity and permission preflight tools

Expose machine-readable principal/tenant confirmation and a non-mutating permission check so agents can verify both before destructive actions.

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 a specific element on the page so the user can see which element you are referring to. Useful for confirming "do you mean this element?" Takes an element name or CSS selector via the 'name' parameter. Returns a confirmation that the highlight was triggered; it does not return element data.
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). Takes no parameters. Returns a summary of the rescanned elements (e.g. count found) confirming the scan completed.
inspect_mode
no_return_description
Toggle inspect mode on the annotated page. When enabled (set 'enabled' to true), the user can click any element to copy its name; when disabled (false), the page behaves normally. Use this to help the user copy element names for communicating design changes. Returns confirmation of the new inspect mode state.

Selection evidence

Confusable tool pairs.

3 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 A task like 'what elements are on this page now' could lead an agent to call get_elements when the page just changed and rescan_elements is actually needed first, or to call rescan_elements when it just wants to read existing data without forcing a rescan.
get_elements highlight_element low Both involve inspecting/referencing elements on the page, but their purposes (listing all elements vs. visually flashing one specific element) are distinct enough that confusion is unlikely except in vague prompts like 'show me the button', which could ambiguously map to either retrieving info or highlighting it.
highlight_element rescan_elements low Little functional overlap—one highlights a specific known element, the other forces a full page rescan—so confusion is unlikely except in very vague 'update the element view' style requests.

Compare the field

One score is useful.
The evidence makes it actionable.

Back to the leaderboard