Public leaderboard

Public assessment

aethynio/aethyn-browser-mcp (aethyn-browser-mcp)

aethyn-browser-mcp · v0.1.0 · scanned

What changed in the harness

Selection accuracy 98→95, token cost up 6%, 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

26.0 / 30

26.0 out of 30
03Economics

19.9 / 20

19.9 out of 20
04Discoverability

13.4 / 20

13.4 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.

8 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
aethyn_navigate
params_unexplained
Navigate the session's browser to a URL and wait for load. session_id is the ID returned by aethyn_launch_browser; url is the destination page to load. Returns the HTTP status, final URL, and page title — read the page with aethyn_get_content to judge the response yourself. Public data only — respect robots.txt, rate limits, and each site's terms.
aethyn_get_content
params_unexplained
Return the current page's content cleaned for reading (markdown by default) for the session identified by session_id. Use after navigating to extract data. format picks the representation: 'markdown' (default), 'text', or 'html'.
aethyn_snapshot
params_unexplained
Return a structured accessibility snapshot (roles, names, and [ref=..] handles) of the page in the session identified by session_id. Pass those refs to aethyn_click / aethyn_type. No screenshots needed.
aethyn_click
params_unexplained no_return_description
Click an element in the session identified by session_id. Prefer a 'ref' from aethyn_snapshot (e.g. 'e12'); or pass a 'selector' (CSS, or Playwright role=/text= engine). Returns the result of the click so you can confirm it landed.
aethyn_type
params_unexplained no_return_description
Type text into an input in the session identified by session_id; text is the string to enter. Prefer a 'ref' from aethyn_snapshot or a fallback 'selector'. Set submit:true to press Enter after. Returns the outcome of the typing so you can confirm it was accepted.
aethyn_check_exit_ip
params_unexplained
Fetch IP info THROUGH the session's proxy for the session identified by session_id so you can verify the exit country/city actually landed before trusting the page. Returns ip, country, city, org/ASN, and a best-effort is_residential flag.
aethyn_new_identity
params_unexplained no_return_description
Rotate the session identified by session_id to a fresh residential exit (new IP, same country) and clear cookies, then return confirmation that the new identity is active. Use between independent tasks or after a soft-block.
aethyn_close
params_unexplained no_return_description
Close the browser context for the session identified by session_id and free memory, returning confirmation that the session was closed. Call this when a task is done.

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
aethyn_navigate aethyn_click medium A task phrased as 'go to the product page' or 'navigate to the login page' is ambiguous: the agent may call aethyn_navigate with a URL, or click an existing on-page link to that page. Both actions 'move' the browser to a destination, and nothing in the definitions rules one out.
aethyn_launch_browser aethyn_new_identity medium Both tools deal with obtaining a browser identity/IP. A task like 'get a fresh identity in France' or 'I got soft-blocked, give me a new IP for this session' could push an agent to launch a brand-new browser via aethyn_launch_browser instead of rotating the existing session with aethyn_new_identity, especially since launch_browser's description emphasizes each session being 'one sticky identity'.

Compare the field

One score is useful.
The evidence makes it actionable.

Back to the leaderboard