Skip to main content
Glama
yinnho

AginxBrowser

account_verify

Verify whether a named account remains logged in. First call teaches the login-check page and predicate; later calls only need the account name, while the check also refreshes its cookies.

Instructions

Check whether a named account is still logged in. Teach-once: the first call passes url + predicate (a JS expression truthy on a logged-in page, e.g. !!document.querySelector('.user-nick')); the spec is remembered and later calls can be bare. Runs in a scratch session AS the account (private jar), so the probe doubles as a cookie refresh. Returns {name, logged_in, url, checked_at}.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlNoTeach-once: the page that shows login state (its login wall if the account is logged out). Remembered after the first call.
nameYesThe account to check.
predicateNoTeach-once: a JS expression that is truthy when logged in, e.g. `!!document.querySelector('.user-nick')`. Remembered after the first call — later calls can pass neither and rerun the spec.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.5.1

TDQS

A4.5/5.0
Behavior5/5

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

With no readOnly or destructive annotations, the description carries the full burden and excels: it discloses the private-jar scratch session, the fact that the probe doubles as a cookie refresh, and the remembered-spec statefulness. These are exactly the behavioral traits an agent needs beyond the schema.

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?

Three dense sentences, each earning its place: primary purpose, teach-once behavior, and side-effect/return information. The main verb and resource are front-loaded, with no filler.

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

Completeness5/5

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

Although there is no output schema, the description explicitly gives the return shape {name, logged_in, url, checked_at}. Combined with the side-effect, statefulness, and session context, nothing essential is missing for an agent to invoke it correctly.

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 100%, so the schema already documents url and predicate thoroughly, including the teach-once behavior and example predicate. The description reinforces this but adds no meaning beyond the schema, so it stays at the baseline.

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 opens with a specific verb and resource: 'Check whether a named account is still logged in.' This clearly differentiates it from siblings like account_list and account_delete, and the teach-once detail further scopes what the tool does.

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 clear operational context: first call passes url and predicate, later calls can be bare, and the check runs in a scratch session as the account. It does not explicitly name alternatives or exclusion conditions, but the tool's unique purpose makes the intended usage unambiguous.

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