Skip to main content
Glama

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.2.1

  • Disambiguation4/5

    Most tools have distinct purposes, but 'navigate' and 'open_url' perform identical functions, and 'wait_for_element' and 'wait_until_visible' overlap significantly, potentially causing misselection.

    Naming Consistency4/5

    Overall consistent verb_noun snake_case pattern, but 'alert' and 'frame' are single nouns rather than verbs, creating minor inconsistency.

    Tool Count3/5

    29 tools is high for a browser automation server; some tools are redundant (navigate/open_url, wait_for_element/wait_until_visible), suggesting scope could be trimmed.

    Completeness4/5

    Covers core browser automation workflows (lifecycle, navigation, element interaction, cookies, screenshots, etc.), but lacks scrolling and advanced element selection tools.

  • Average 2.9/5 across 29 of 29 tools scored. Lowest: 2.1/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 17 commits in the last 12 weeks
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior1/5

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

    No annotations provided, and description only states the action without disclosing behavioral traits such as waiting, scrolling, error handling, or side effects. The schema includes a timeout parameter but description does not mention it.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness2/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single sentence, which is brief but severely under-specified. It lacks essential information, making it inadequate rather than concise.

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

    Completeness1/5

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

    Given the complexity of the input schema (nested selector, multiple parameters) and the presence of many sibling tools, the description is entirely insufficient. No output schema exists, and no behavioral context is provided.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 0%, and description adds no meaning to any parameter. It does not explain 'ref', 'action', 'selector', or 'timeoutMs'. The action enum is documented only in schema, not in description.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose3/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Description states 'Perform a mouse action on an element,' which gives a basic purpose but is vague. It does not differentiate from sibling tools like 'click' which is a specific mouse action. The action enum in schema clarifies the range, but description alone is insufficient.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool versus alternatives like 'click' or 'hover' siblings. No mention of prerequisites, limitations, or when not to use it.

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

  • Behavior1/5

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

    With no annotations provided, the description must disclose behavioral traits. It only states 'Manage browser windows and tabs,' which gives no information about mutability, side effects, or dependencies. Important details like whether actions affect the current session, require an active browser, or have irreversible effects are omitted.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness2/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is extremely concise at 6 words, but this brevity sacrifices informativeness. It is front-loaded with the verb, but the lack of detail makes it under-specified. Effective conciseness would retain clarity while providing necessary context; here it fails to do so.

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

    Completeness1/5

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

    Given the tool's complexity (multiple action types, optional handle parameter) and the absence of an output schema, the description is severely incomplete. It does not cover return values, edge cases, or prerequisites. An agent would struggle to use it correctly without exploring the schema or external documentation.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, meaning the description does not explain the parameters. The two parameters (action and handle) are not defined in the description. The action enum values are listed in the schema but not explained semantically. The handle parameter's purpose is entirely unclear without additional context.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description 'Manage browser windows and tabs' clearly identifies the verb (manage) and resource (browser windows and tabs). It conveys the general purpose, though it does not differentiate from sibling tools like navigate or open_url, which also manage browser state. The action enum in the schema provides specificity, but the description alone is moderately clear.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No usage guidelines are provided. The description does not indicate when to use this tool versus alternatives like navigate or start_browser. There is no mention of prerequisites, conditions, or exclusions. The agent must infer usage from the schema or context.

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

  • Behavior2/5

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

    No annotations provided, so description must carry full burden. It does not disclose whether the tool waits for visibility or throws on failure, what happens if element is not found, or if it returns a value. The phrase 'becomes visible' hints at waiting, but is not explicit.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is extremely concise (one sentence) but lacks necessary detail. It is not front-loaded with key information, and the brevity sacrifices clarity rather than enhancing it.

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

    Completeness2/5

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

    Given the complexity (nested selector, timeout) and lack of annotations/output schema, the description is incomplete. It doesn't address return values, error behavior, or how it relates to sibling assertion tools.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, so description must compensate. The description does not explain any parameters: no mention of 'selector' structure or 'timeoutMs' meaning, default, or constraints. Parameters are entirely undocumented in the description.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose3/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description 'Assert an element becomes visible' states the verb and resource but is vague. It doesn't differentiate from sibling 'wait_until_visible', which may also check visibility. The timeout parameter implies waiting, but the description doesn't clarify if it waits or asserts immediately.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool versus alternatives like 'wait_until_visible' or 'assert_attribute'. Missing context about prerequisites (e.g., browser must be started) or typical use cases.

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

  • Behavior2/5

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

    No annotations are provided, so the description must carry the full burden. It only states the basic action but does not disclose timeout behavior, error handling, or side effects (e.g., scrolling to make the element visible).

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness2/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is very concise (one sentence) but is under-specified. It does not include necessary details about parameters or behavior, making it insufficiently informative.

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

    Completeness1/5

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

    Given the complexity of a nested 'selector' object and a timeout parameter, the description is vastly incomplete. It lacks any information about return values, error conditions, or how the tool interacts with the page state.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%. The description does not mention any parameters (selector, timeoutMs) or how to structure the selector object. This leaves the agent with no guidance beyond the schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the verb 'Wait' and the resource 'an element to be visible'. This provides a clear purpose. However, it does not differentiate from the sibling tool 'wait_for_element' which may have a similar function.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description gives no guidance on when to use this tool versus alternatives like 'wait_for_element' or 'assert_visible'. There is no mention of use cases, prerequisites, or conditions.

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

  • Behavior2/5

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

    The description lacks behavioral details beyond the basic action. It does not disclose whether adding a cookie overwrites existing cookies with the same name, if validation occurs, error handling, or impact on the browser session. With no annotations, the description carries full burden but provides minimal transparency.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single concise sentence, front-loading the core purpose. However, it may be too brief given the tool's complexity; a slightly more informative sentence could improve conciseness without adding excessive length.

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

    Completeness1/5

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

    Given the tool has 8 parameters, no output schema, and no annotations, the description is severely incomplete. It fails to cover parameter semantics, return behavior, side effects, or prerequisites. This is insufficient for a tool with such parameter count and potential complexity.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The input schema has 8 parameters (name, value, path, domain, expiry, secure, httpOnly, sameSite) with 0% schema description coverage. The description does not explain or hint at the meaning or usage of any parameter beyond implying 'name' and 'value' are needed. This leaves the agent with no guidance on how to correctly set optional fields.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the verb 'Add' and resource 'browser cookie' with scope 'for the current page domain'. It is specific and unambiguous, but does not explicitly differentiate from sibling tools like delete_cookie or get_cookies, which have distinct purposes.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No usage guidance is provided. The description does not mention when to use this tool (e.g., when needing to set a cookie before navigation or authentication) or when alternatives like delete_cookie or get_cookies would be more appropriate. No prerequisites or exclusions are specified.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden. It merely says 'handle' without disclosing that actions like accept/dismiss are destructive or that send_text requires a text parameter. The schema provides the actions, but the description adds no behavioral context.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is very short (6 words) but under-specified. While conciseness is good, it sacrifices essential detail; it could be equally concise while including the available actions.

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

    Completeness2/5

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

    Given the tool's complexity (multiple actions, conditional parameter), the description is incomplete. It does not mention that get_text retrieves dialog text, nor does it provide any return value information (no output schema).

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 0%, yet the description does not mention any parameters. It fails to explain the required 'action' parameter with its enum values or the optional 'text' parameter needed for send_text, leaving the agent without guidance.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly identifies the tool as handling browser alert, confirm, or prompt dialogs, which distinguishes it from sibling tools like click or navigate. However, it could specify the exact actions (get text, accept, dismiss, send text) for greater clarity.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus alternatives like execute_script or find_element. The description lacks context about prerequisites or scenarios best suited for this tool.

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

  • Behavior2/5

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

    No annotations are provided, so the description must fully disclose behavior. It only lists supported actions and says 'constrained sequence' but fails to explain constraints (e.g., max 10 steps, stopOnError default), what happens on failure, or whether state is preserved between steps. The schema contains details but the description adds minimal behavioral context.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is very short and front-loaded with action, which is good for scanning. However, it is overly terse; a few more sentences explaining parameters or usage context would improve completeness without sacrificing conciseness.

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

    Completeness2/5

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

    Given the complexity of the input schema (multiple action types with varying properties) and the lack of output schema, the description is insufficient. It does not address how to construct the steps parameter, selector format, or error handling. Sibling tools provide individual actions, but no context is given for when to batch them.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, meaning the description must add meaning for the parameters. The description does not mention 'steps' or 'stopOnError' at all, only lists action types. This leaves the agent without any explanation of the parameter structure, which is complex (array of discriminated unions).

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Clearly states it executes a constrained sequence of browser actions in one call and lists supported actions. However, it doesn't explicitly differentiate from calling individual sibling tools sequentially, though 'in one call' implies batching.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No explicit guidance on when to use this tool versus individual action tools like click, navigate, etc. The description implies batching multiple actions but does not provide criteria for choosing batch over single actions or mention when not to use.

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

  • Behavior2/5

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

    With no annotations, the description must disclose behavioral details. It partially does by mentioning waiting for visibility and enablement, but omits information about error handling (e.g., if element not found), side effects, or return value. This is insufficient for a safety-critical action like clicking.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single sentence, front-loaded and without fluff. However, given the tool's complexity (3 parameters, nested objects), it is too brief to be effective. Conciseness should not come at the cost of completeness.

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

    Completeness2/5

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

    The description lacks essential information such as how to choose between ref and selector, the meaning of timeoutMs, and any return value or errors. With no output schema and no parameter descriptions, this single sentence is insufficient for an agent to use the tool reliably.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, meaning the schema itself provides no parameter explanations. The description adds no meaning to the parameters (ref, selector, timeoutMs). Users are left to infer how to specify elements or set timeout, which is inadequate.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the action ('click') and the precondition ('waiting for it to be visible and enabled'), which defines its purpose. It distinguishes from sibling tools like 'retry_click' by implying a one-time click after ensuring element readiness, but could be more explicit about when to use this vs. alternatives.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus alternatives such as 'retry_click' or 'interact'. The description implies a general click scenario but lacks context-specific usage instructions or caveats.

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

  • Behavior2/5

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

    No annotations exist, so the description must fully disclose behavior. It mentions returning 'basic metadata' but does not specify what metadata (e.g., tag, attributes, location). It also does not indicate whether the tool waits for the element or the timeout behavior, leaving significant gaps.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is very concise with two short sentences, but it sacrifices completeness for brevity. While front-loaded with the verb, the lack of detail makes it minimally adequate.

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

    Completeness2/5

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

    Given the presence of a nested parameter, no output schema, and no annotations, the description is too sparse. It does not explain the return value (beyond 'metadata'), behavior for non-existent elements, or timeouts. The tool's complexity requires more detail.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The schema has 0% description coverage, meaning no human-readable explanations for parameters. The description fails to explain how to use the 'selector' object (e.g., 'by' field values, 'value' string) or the 'timeoutMs' parameter. It provides no additional meaning beyond the schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the action (find), resource (element), and that it returns basic metadata, which conveys its core function. However, it does not differentiate from sibling tools like 'wait_for_element' or 'get_text', which also locate elements. The phrase 'alias-friendly discovery tool' hints at flexibility but lacks specificity.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is given on when to use this tool versus alternatives. With many sibling tools for element interaction (click, get_text, wait_for_element), the absence of usage context or exclusions reduces agent decision accuracy.

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

  • Behavior2/5

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

    No annotations exist, so the description must convey behavioral traits. It does not disclose any side effects, requirements, or limitations (e.g., whether it waits for elements, exceptions). Only a read operation is implied, but not explicitly stated as safe.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is one concise sentence, but it is too brief to add value beyond the tool name. It earns its place but lacks structure or context.

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

    Completeness1/5

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

    Given 3 parameters (including a nested object), no output schema, and no annotations, the description fails to provide essential context. It does not explain return values, usage examples, or parameter dependencies, leaving the tool underspecified.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, and the description adds no meaning to parameters. It does not explain 'selector', 'name', or 'timeoutMs'. The agent must infer from the schema alone, which is insufficient for correct usage.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description states 'Read an attribute or property value from an element,' which clearly identifies the verb and resource. However, it does not differentiate from sibling tools like get_text or assert_attribute, leaving room for ambiguity in a crowded toolset.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool versus alternatives (e.g., get_text, assert_attribute). No exclusions or context provided, making it hard for an agent to choose appropriately.

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

  • Behavior2/5

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

    The description lacks disclosure of key behavioral traits. It does not explain side effects (e.g., launching a new browser process), whether multiple sessions are allowed, or what happens on repeated calls. There is no return value description, and no annotations exist to compensate.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness2/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is extremely concise at one sentence, but it sacrifices necessary detail. It is not appropriately sized for the complexity of the tool, as it omits critical usage and behavioral context.

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

    Completeness2/5

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

    Given the tool's complexity (6 parameters, no output schema, many sibling tools), the description is incomplete. It does not explain what the tool returns, how to configure the browser, or how it fits into a workflow.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    With 0% schema description coverage and 6 parameters (including a nested object), the description adds no meaning beyond the schema. It fails to explain the role of parameters like 'browserArgs', 'scriptTimeoutMs', or the 'windowSize' object, leaving the agent to guess.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the action (start) and resource (Selenium browser session). It is specific enough to distinguish from sibling tools, as only this tool initiates a browser session.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool or when alternatives might be preferred. It does not mention that starting a browser is a prerequisite for other browser actions, nor does it discuss scenarios like reusing a session.

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

  • Behavior2/5

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

    No annotations are provided, so the description bears full responsibility. It fails to disclose behavior on timeout, element not found, or visibility checks. The minimal statement 'wait for an element to exist' lacks concrete behavioral traits.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is very concise (one sentence), but it sacrifices completeness for brevity. It could be more structured to include key details without being overly long.

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

    Completeness2/5

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

    Given the tool's complexity (nested selector, multiple similar siblings, no output schema), the description is inadequate. It does not cover return values, error handling, or comparison to 'wait_until_visible'.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, and the description adds no meaning to parameters. It does not explain 'selector', 'visible', or 'timeoutMs' beyond their schema definitions. The description should compensate but does not.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states it waits for an element to exist with optional visibility. However, it does not differentiate from the sibling 'wait_until_visible', which likely targets visibility specifically. The verb+resource is clear, but sibling distinction is missing.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool versus alternatives like 'wait_until_visible'. There is no mention of prerequisites, when-not, or exclusions. The context of existing comparable tools is ignored.

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

  • Behavior2/5

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

    Description states 'visible element text' but does not explain whether it waits for visibility, how trim affects comparison, case sensitivity, error behavior on mismatch, or the return value. With no annotations, these gaps are critical.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Single sentence is concise but lacks structure; it does not separate primary action from parameter details. While front-loaded with the verb, it sacrifices completeness for brevity.

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

    Completeness1/5

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

    Given 5 parameters (including nested selector), no output schema, and no annotations, the description is grossly incomplete. An agent cannot infer how to construct the selector, what 'trim' does, timeout behavior, or the assertion result.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    With 0% schema coverage, the description must explain parameters. It only indirectly mentions 'mode' via the three operations, but omits 'selector', 'expected', 'trim', and 'timeoutMs' entirely, providing no meaningful semantic value.

    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?

    Description clearly states the tool asserts visible element text with three comparison modes (equals, contains, matches), distinguishing it from siblings like assert_attribute (asserts attribute) and get_text (retrieves without assertion).

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool versus alternatives. For example, when to choose 'equals' over 'contains' or when to use assert_text vs. assert_visible is not addressed, leaving the agent without decision logic.

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

  • Behavior2/5

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

    Describes execution as synchronous and in page context, but with no annotations provided, the description should disclose side effects, blocking behavior, security implications, and return value characteristics. It falls short of full transparency.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Single sentence is concise and front-loaded with the key action. However, it may be excessively concise given the tool's complexity, sacrificing necessary detail.

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

    Completeness2/5

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

    Without annotations, output schema, or parameter descriptions, the minimal description leaves significant gaps about return values, error handling, scope, and permissible scripts. Incomplete for a tool with two parameters.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0% and the description does not explain the purpose of 'script' or 'args' beyond what is inferable from names. An agent cannot understand how to correctly use parameters from this description alone.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Clearly states the verb 'Execute' and the resource 'synchronous JavaScript in the current page context'. It distinguishes from sibling tools that handle element interactions, navigation, etc., but could be more explicit about being arbitrary JavaScript execution.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool versus other tools (e.g., for direct DOM manipulation vs. element-specific actions). Lacks any when-not-to-use or prerequisite context.

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

  • Behavior3/5

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

    With no annotations, the description carries full burden. It specifies 'visible text' implying hidden text is ignored, but does not disclose behavior on element not found, waiting, or what 'visible' means precisely. Some transparency, but not comprehensive.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The single-sentence description is concise and front-loaded with the core purpose, but it is too brief given the tool has 4 parameters and no additional context. It earns its place but lacks structure.

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

    Completeness1/5

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

    Given the tool's complexity (4 parameters, nested object, no output schema, no annotations), the description is severely incomplete. It omits parameter explanations, return value, and behavioral details.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, so the description must compensate by explaining parameters. It mentions none of the 4 parameters (ref, trim, selector, timeoutMs), adding no value beyond the schema.

    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 'Read visible text from an element' uses a specific verb and resource, clearly distinguishing it from sibling tools like get_attribute (reads attributes) or get_title (reads document title).

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides no guidance on when to use this tool vs alternatives like get_attribute or execute_script, nor does it specify when not to use it or mention prerequisites.

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

  • Behavior2/5

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

    No annotations provided. The description is overly brief, omitting details such as whether the press is a single keydown/keyup or hold, or if it requires the element to be focused. Behavior beyond the basic action is undisclosed.

    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?

    The description is a single sentence with no waste. It is front-loaded and to the point.

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

    Completeness2/5

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

    Despite being a simple tool with one parameter and no output schema, the description lacks context about return value, error conditions, and potential side effects. It does not compensate for missing annotations.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The only parameter 'key' is described only as 'keyboard key', with no format details (e.g., character vs. key name) or examples. Schema has 0% coverage, and the description fails to add meaningful semantic context.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the verb 'press' and resource 'keyboard key against active element'. It distinguishes from sibling tools like 'click' (mouse) and 'type' (text entry), though it could be more precise about the nature of the key press.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool versus alternatives like 'type' or 'click'. No prerequisites or context for active element focus are mentioned.

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

  • Behavior2/5

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

    No annotations are present, and the description does not disclose whether this is a read operation, if it requires authentication, or any side effects. 'Resolve' implies a lookup, but this is not explicitly stated.

    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?

    The description is a single, front-loaded sentence with no unnecessary words. It efficiently conveys the core action.

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

    Completeness2/5

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

    Given the lack of output schema, annotations, and detailed parameter info, the description is insufficient for an agent to fully understand the tool's behavior, such as what the resolved hint looks like or error handling for missing keys.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    With 0% schema description coverage, the description should add meaning for the parameters 'key' and 'domain', but it only says 'by key and domain' without explaining their purpose, format, or allowed values. The schema provides length constraints but no semantic context.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description uses the specific verb 'resolve' and names the resource 'selector hint', which clearly distinguishes it from sibling tools like 'selector_hint_delete' and 'selector_hint_list'. However, 'resolve' could be more explicit (e.g., retrieve the hint value).

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus alternatives like 'selector_hint_list' or 'selector_hint_save'. The description only states what it does, not the context or prerequisites.

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

  • Behavior2/5

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

    The description only discloses that the tool waits for visibility before typing. It omits other behaviors like clearing existing text (clearFirst default true), submitting after typing (submit default), or timeout handling. With no annotations, this is insufficient.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single, well-structured sentence. It is concise and front-loaded with the core action, though it could include more details without becoming verbose.

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

    Completeness2/5

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

    Given the tool's complexity (6 parameters including nested object, no output schema, no annotations), the description is too minimal. It fails to explain parameter usage, return behavior, error conditions, or prerequisites.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0% (no parameter descriptions in schema). The description does not explain any of the six parameters, such as ref vs selector, submit, clearFirst, or timeoutMs. It adds no value beyond the schema.

    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 clearly states the tool types text into an element, with the condition 'after waiting for visibility.' It uses a specific verb and resource, and the condition differentiates it from sibling tools like click or press_key.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus alternatives (e.g., press_key, click). There are no usage scenarios, prerequisites, or exclusions mentioned.

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

  • Behavior2/5

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

    No annotations provided. Description does not disclose important behaviors like requiring an existing absolute path, waiting conditions, or support for multiple files. Only states the basic action.

    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?

    Single sentence, no extraneous words, front-loaded with action and object.

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

    Completeness2/5

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

    Despite having a nested object parameter and no output schema, the description is too brief. Does not cover selector syntax, file path requirements, or timeout behavior.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 0%. Description adds minimal value by mentioning 'absolute file path', but does not explain the selector object structure or timeout parameter meaning.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Description clearly states it sends a file path to a file input, distinguishing it from text input tools like 'type'. However, the verb 'Send' is slightly vague for a file upload.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool versus alternatives like 'interact' or 'type'. No context on prerequisites or common usage.

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

  • Behavior2/5

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

    With no annotations, the description fails to disclose behavioral traits such as waiting behavior, error handling on assertion failure, or whether it returns a boolean. The timeoutMs parameter hints at waiting but is not explained.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single sentence, making it concise, but it lacks structure and key details that would fit in a brief summary. It is under-informative rather than efficiently informative.

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

    Completeness2/5

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

    Without annotations, output schema, or parameter descriptions, the 5-parameter tool with a nested object is under-documented. The description does not explain the tool's role in test automation or how it interacts with other tools.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, and the description does not explain any parameters beyond their names. Terms like 'selector', 'name', and 'mode' are left undefined, and the format of 'expected' for regex is not clarified.

    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 clearly states the action (assert) and the resource (element attribute/property), and specifies three comparison modes (equals, contains, matches), distinguishing it from sibling tools like assert_text and assert_visible.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites or exclusions. The purpose is stated but without context of usage scenarios.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the basic action but does not discuss page load behavior, error handling, waiting timeouts, or side effects (e.g., clearing any state). This is insufficient for safe use.

    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?

    The description is a single, clear sentence with no extraneous information. It efficiently conveys the core functionality.

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

    Completeness3/5

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

    For a tool with one parameter and no output schema or annotations, the description is minimally adequate. It covers the basic purpose but lacks key behavioral context (e.g., whether navigation waits, effects on page history). Given low complexity, a score of 3 is appropriate.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, so the description should add meaning to the parameter. It mentions 'to a URL' but does not elaborate on format constraints, requirements (e.g., must be absolute URL, include protocol), or how invalid URLs are handled. The schema provides 'format: uri' but the description adds little value.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the action ('navigate') and the resource ('active browser session to a URL'), making the purpose straightforward. However, it does not distinguish from the sibling tool 'navigate', which may perform a similar function.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus alternatives (e.g., 'navigate', 'click' with a link). There is no mention of context, prerequisites, or situations where using this tool is not appropriate.

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

  • Behavior2/5

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

    No annotations provided, so description must bear full burden. It indicates a destructive action but lacks details on irreversibility, error cases, or side effects.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Single sentence is very concise, but it omits important details that could be included without sacrificing brevity.

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

    Completeness2/5

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

    Given no annotations and no output schema, the description is insufficient for an agent to fully understand the tool's behavior, error conditions, and implications of deletion.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, so description should compensate. It mentions 'by key and domain' but does not explain the meaning of the parameters, required/optional behavior, or validation constraints.

    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?

    Description clearly states the action (delete) and the resource (selector hint) with identifiers (key and domain), distinguishing it from sibling tools like selector_hint_get, selector_hint_list, and selector_hint_save.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool vs. alternatives, no prerequisites, and no mention of potential consequences or conditions for deletion.

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

  • Behavior2/5

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

    No annotations are provided, so the description must disclose behavioral traits. It does not state side effects (overwrite?), constraints, or persistence semantics.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is extremely concise (one sentence), but it omits necessary details. It is front-loaded but incomplete.

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

    Completeness2/5

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

    No output schema, complex nested input, and 0% schema coverage. The description does not mention return values, error conditions, or behavior on success/failure.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The description does not explain parameter roles beyond their names. With 0% schema coverage, it should clarify the meaning of 'key', 'domain', and 'selector' structure, but fails to do so.

    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 'Persist' (save) and 'named selector hint' which clearly indicates the action and resource. It distinguishes from sibling tools like delete, get, list.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool vs alternatives. Does not mention prerequisites, such as whether domain is required or what happens if key already exists.

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

  • Behavior2/5

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

    No annotations are provided, and the description only mentions creation and activation. It does not disclose side effects (e.g., whether it replaces an existing active session), permissions needed, or resource limits.

    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?

    One sentence, no wasted words; immediately conveys core functionality.

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

    Completeness2/5

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

    Given 7 parameters, nested objects, no output schema, and no annotations, the description is too terse. It does not explain what a browser session is, return values, or connect to sibling tools.

    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 description coverage is 0%, but the schema itself is detailed with types, defaults, and constraints. However, the description adds no additional meaning beyond what is already in the schema, such as the purpose of browserArgs or windowSize.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the verb 'create' and the resource 'browser session', and adds that it is selected as active. This distinguishes it from sibling tools like session_select, though it does not explicitly contrast with start_browser.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool vs alternatives like session_select or start_browser. The description lacks context on prerequisites or limitations.

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

  • Behavior2/5

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

    With no annotations, the description must fully disclose behavioral traits. It only says 'destroy', implying deletion, but does not mention side effects (e.g., whether the session must be current, if data is lost, or if it's reversible).

    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?

    Single sentence with no filler. Front-loaded verb and resource. Every word earns its place.

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

    Completeness2/5

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

    Given the lack of annotations, output schema, and parameter details, the description is insufficient for an agent to safely use this destructive tool. It omits prerequisites, side effects, and return behavior.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The schema has 1 parameter (sessionId) with 0% description coverage. The description does not explain the parameter's meaning, format, or how to obtain it. The word 'specific' hints at sessionId but adds no concrete value.

    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 clearly states the action ('destroy') and the resource ('a specific browser session'), distinguishing it from sibling tools like session_create or session_list. No tautology; it's concise and informative.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool versus alternatives (e.g., session_select, stop_browser). Does not specify context like whether the session must be active or what happens to associated resources.

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

  • Behavior2/5

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

    No annotations are provided, so the description bears full responsibility for behavioral disclosure. It only mentions 'capture structure' without explaining side effects (e.g., does it modify the DOM?), performance impact, or any destructive potential. The lack of detail undermines transparency.

    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?

    The description is a single sentence with no wasted words. It conveys the core purpose efficiently and is appropriately front-loaded with the key action.

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

    Completeness2/5

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

    Given the tool has only one parameter and no output schema or annotations, the description should provide more context about what 'stable refs' means, how they are returned, and usage patterns. The minimal description leaves ambiguity about the tool's output and integration with follow-up actions.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The input schema has one parameter 'maxElements' with no description. The tool description does not mention any parameter, so it provides zero additional meaning beyond the schema. With 0% schema coverage, the description must compensate but fails entirely.

    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 'capture page structure with stable refs...' which clearly states the verb-resource combo. It distinguishes from sibling tools like 'take_screenshot' or 'find_element' by emphasizing reusable selectors and stable references.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description implies use for obtaining stable references for future actions, but does not explicitly state when to use this tool versus alternatives like 'find_element' or 'selector_hint_save'. No exclusion criteria are given.

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

  • Behavior2/5

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

    No annotations are provided, so the description bears full responsibility for behavioral disclosure. It only states the switching action but does not describe side effects, error behavior, return values, or requirements (e.g., frame existence).

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single, efficient sentence that front-loads the action and lists key methods. While it could benefit from more structure, it has no wasted words.

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

    Completeness2/5

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

    Given the tool's complexity (5 parameters, nested object, no output schema), the description is insufficient. It does not explain what happens after switching, error handling, or return values, leaving the agent with incomplete context.

    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?

    With 0% schema description coverage and 5 parameters, the description adds some meaning by listing the switching methods (index, nameOrId, selector, parent, default). However, it does not explain the selector nested object, timeoutMs, or parameter formats/constraints.

    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 clearly states the verb 'Switch' and the resource 'browser frame focus', and enumerates the methods (by index, name/id, selector, parent, default content). It is specific and distinguishes from sibling tools, which are mostly other actions like clicking or navigating.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides no guidance on when to use this tool versus alternatives like 'interact' or 'click'. There is no mention of prerequisites (e.g., frame must exist) or exclusions.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden. It mentions optional truncation but omits details: how truncation occurs (by character count?), what happens if source exceeds maxLength, return format, encoding, or error scenarios (e.g., browser not started). Partial but incomplete disclosure.

    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?

    Single, front-loaded sentence with no extraneous detail. Every word earns its place.

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

    Completeness2/5

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

    Given lack of output schema and annotations, the description is minimal. For a tool returning potentially large HTML, more detail on return format, truncation behavior, and when to use this vs textual alternatives would improve completeness.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 0%, so description must add meaning. It mentions truncation but does not explicitly link the maxLength parameter to controlling truncation length. The default (50000) and range are in schema but not explained in context. Adds marginal value.

    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 clearly states 'Return the current page source, optionally truncated for LLM-friendly output.' It specifies the verb (return) and resource (page source), and distinguishes from siblings like get_text (visible text) and get_attribute (attribute values).

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No explicit guidance on when to use vs alternatives (e.g., get_text, get_current_url). Context of use is implied but not contrasted with sibling tools, leaving the agent to infer.

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

  • Behavior2/5

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

    With no annotations provided, the description should disclose behavioral traits. It only states the basic operation without detailing behavior like returning all hints if no domain, read-only nature, or pagination.

    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?

    The description is a single sentence, front-loaded with the action and resource. No unnecessary words; concise and to the point.

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

    Completeness2/5

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

    The tool is simple, but the description omits expected output format (e.g., list of hint objects, properties). No output schema exists, so the description should fill this gap.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, so the description must compensate. It clarifies the domain parameter is optional and used for filtering, but does not explain expected format or values, leaving ambiguity.

    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 clearly states the verb 'list' and resource 'selector hints', and distinguishes from sibling tools like selector_hint_delete, selector_hint_get, and selector_hint_save by action. The optional domain filter adds specificity.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool versus alternatives, such as selector_hint_get. No mention of prerequisites or context for filtering.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden but only mentions optional saving. It does not disclose what the tool returns (e.g., base64 string), whether it requires a running browser, or the effect of includeBase64. This is insufficient for the agent to understand the tool's full behavior.

    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?

    The description is a single, front-loaded sentence with no extraneous words. It efficiently conveys the core purpose.

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

    Completeness2/5

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

    Given no output schema, the description should explain what the tool returns. It does not. The agent cannot know if the tool returns a screenshot as base64, a file path, or something else. Also, it lacks context about required environment (e.g., a running browser).

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, so description must add meaning. It only hints at savePath with 'optionally save to disk' and completely ignores includeBase64. The agent gets no clarity on what includeBase64 controls or the default behavior.

    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 clearly states the verb 'capture', resource 'screenshot', format 'PNG', and optional saving to disk. It is specific and distinguishes from sibling tools, which are all different browser actions.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, typical use cases, or exclusions.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It does not disclose what 'active' means, side effects on subsequent actions, error handling for invalid sessionId, or whether the operation is idempotent. The description is too minimal for a mutation-like tool.

    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?

    The description is a single, clear sentence with no wasted words. It is front-loaded with the action and resource.

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

    Completeness3/5

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

    For a simple tool with one parameter and no output schema, the description covers the basic purpose. However, it lacks details on return value, error conditions, and the concept of 'active' session, making it minimally adequate.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, and the description adds no meaning beyond the parameter name 'sessionId'. It does not explain the type, format, or expected values beyond what the schema already provides (string, minLength 1).

    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 clearly states the verb 'Select' and the resource 'existing browser session', with the outcome 'as active'. It is specific and distinguishes this tool from sibling tools like session_create (creates a new session) and session_list (lists sessions).

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides no guidance on when to use this tool versus alternatives (e.g., session_create, session_list). It does not mention prerequisites (e.g., that a session must exist) or contexts where selection is appropriate.

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

  • Behavior2/5

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

    With no annotations, the description must disclose behavioral traits. It implies a read-only operation by the word 'list' but does not explicitly state that no side effects occur, nor does it describe the format of the returned session information.

    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?

    The description is extremely concise, consisting of a single sentence that contains no superfluous words. It is appropriately front-loaded.

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

    Completeness2/5

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

    Given the lack of output schema and annotations, the description should provide more context about what 'sessions' entails and what details are returned (e.g., IDs or URLs). It is incomplete for effective use.

    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?

    There are no parameters, so the description does not need to add parameter semantics. Baseline 4 is appropriate.

    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 clearly states the tool's purpose: listing all active browser sessions. It distinguishes itself from sibling tools like session_create, session_destroy, and session_select by using the verb 'list'.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus alternatives. For instance, it doesn't explain that it should be used before session_select to see available sessions.

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

  • Behavior3/5

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

    With no annotations provided, the description carries full burden. It correctly labels the tool as destructive (deletion), but does not disclose side effects like potential logout if all cookies are deleted, behavior on non-existent names, or whether deletion is scoped to the current domain. The description is minimal but not misleading.

    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?

    The description is a single, concise sentence that front-loads the action and includes both key behaviors in parallel structure, with no superfluous words.

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

    Completeness3/5

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

    Given the tool's simplicity (one optional parameter, no output schema), the description covers the main functionality. However, it lacks information about return values (e.g., confirmation or count of deleted cookies) and edge cases like handling non-existent cookie names. It is adequate but not comprehensive.

    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?

    The input schema only defines 'name' as an optional string. The description adds critical meaning: omitting the parameter deletes all cookies, while providing it deletes only the named cookie. This clarifies the optional behavior beyond the schema, which shows 0% description coverage.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the action ('Delete') and the resource ('cookie'), distinguishing between deleting by specific name or all cookies when name is omitted. This differentiates from sibling tools like 'add_cookie' and 'get_cookies', though it does not explicitly contrast them.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides basic usage guidelines: either specify a cookie name to delete one, or omit the name to delete all cookies. However, it offers no guidance on when not to use this tool, alternatives, or prerequisites (e.g., browser must be started, cookies must exist).

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden for behavioral disclosure. It only states the output (return current page title) but omits details like what happens if no title exists, whether it accesses the document.title or something else, or any side effects. This is insufficient for a tool with no annotations.

    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?

    One sentence, no filler, perfectly sized for a simple, parameterless tool. Every word adds value.

    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?

    Given the simplicity (no parameters, no output schema), the description is mostly complete. However, minor detail about the source of the title (e.g., document.title) would improve completeness for agents unfamiliar with browser automation.

    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?

    With zero parameters, the schema coverage is trivially 100%. According to guidelines, baseline is 4 for 0 params. The description adds no parameter info, but none is needed.

    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 'Return the current page title' uses a specific verb 'Return' and resource 'page title', which is distinct from sibling tools like 'get_text' or 'get_current_url'. It clearly identifies what the tool does without ambiguity.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool versus alternatives such as 'get_text' or 'get_current_url'. The description does not mention context or exclusions, leaving the agent to infer usage from the tool name and siblings.

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

  • Behavior2/5

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

    No annotations provided; description only states action. No disclosure of behavioral traits like return format, error handling, or destructive effects. Minimal behavioral information.

    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?

    Single sentence, 10 words, front-loaded with key information. No redundant or extraneous content.

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

    Completeness3/5

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

    Adequate for a simple retrieval tool with one parameter. However, lacks details on return behavior when cookie is not found or the format of the returned data. Given no output schema, description could be more complete.

    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 coverage is 0%, so description must compensate. It explains that omitting name retrieves all cookies, while providing name retrieves one. This adds meaningful conditional behavior beyond the schema's property definition.

    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?

    Description clearly states it retrieves all cookies or one by name. Verb 'get' and resource 'cookies' are specific. Siblings add/delete cookies are distinct, so purpose is unambiguous.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No explicit guidance on when to use this tool versus alternatives, but the context of cookie-related siblings (add_cookie, delete_cookie) implies usage. The conditional behavior based on the name parameter is implied but not stated.

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

  • Behavior3/5

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

    No annotations are provided, so the description carries full burden. It discloses the core behavior of retrying clicks but does not detail what happens on final failure, whether errors are thrown, or the exact retry mechanism (e.g., delay behavior). The parameters hint at these but are not described.

    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?

    The description is a single sentence that front-loads the purpose. No extra words or redundant information. It is appropriately sized for the tool's simplicity.

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

    Completeness2/5

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

    Given the tool has 4 parameters, nested objects, no output schema, and no annotations, the description is insufficient. It does not mention default values, error handling, or return values. The agent would lack key information for correct usage.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, and the description adds no information about parameters. It does not explain the meaning or usage of delayMs, attempts, timeoutMs, or the selector object. The parameter names are somewhat self-explanatory, but the description fails to compensate for the lack of schema descriptions.

    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 clearly states the tool retries a click for transient UI failures, using a specific verb and resource. It distinguishes from the sibling click tool by explicitly mentioning retry and transient failures.

    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?

    The description specifies when to use the tool ('for transient UI failures such as stale or intercepted elements'), providing clear context. However, it does not explicitly mention when not to use it or directly compare to alternatives like click.

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

  • Behavior2/5

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

    No annotations provided, so the description bears the full burden. It fails to disclose potential failure modes (e.g., if no page loaded) or side effects, remaining minimal.

    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?

    Single, front-loaded sentence with no extraneous words. Every word earns its place.

    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 zero-parameter, no-output-schema tool, the description is mostly adequate. It could specify the return type or format (e.g., 'string'), but the core function is clear.

    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?

    No parameters exist; baseline is 4. The description is consistent but adds no parameter-specific value since there are none.

    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 'Return the current browser URL' uses a specific verb 'Return' and clear resource 'current browser URL', distinguishing it from sibling tools like get_title, get_page_source, etc.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No explicit guidance on when to use this tool vs alternatives. For a simple getter, the context is implied but not stated, lacking exclusion or alternative mentions.

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

  • Behavior3/5

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

    No annotations are provided, so the description must inform about behavioral traits. It states navigation of the active browser session but does not mention whether it waits for page load or any potential side effects. This is adequate but lacks detail for a full transparency score.

    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?

    Two brief sentences deliver the essential information without any extraneous content. Every word contributes to clarity.

    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?

    For a simple one-parameter tool with no output schema, this description covers the primary function and relationship to a sibling. It provides sufficient context for an agent to decide to use it.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The schema has 0% description coverage, and the description only says 'to a URL', which merely reiterates the parameter's type and format. It does not add any new constraints, examples, or nuances beyond what the schema already implies.

    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?

    Description explicitly states 'navigate the active browser session to a URL', providing a specific verb and resource. It distinguishes itself from the sibling 'open_url' by noting it's an alias-friendly alternative, clarifying its role.

    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?

    The description mentions it is an alias for 'open_url', giving clear context on when to use this tool as an alternative. However, it does not elaborate on any prerequisites or scenarios where one might be preferred over the other.

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

  • Behavior3/5

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

    Without annotations, the description carries full burden. It correctly indicates the action is stopping a session and handles the no-session case, but does not disclose any side effects (e.g., loss of state, irreversible action).

    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?

    A single sentence that conveys the core purpose efficiently. No wasted words; the action and condition are front-loaded.

    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?

    For a zero-parameter, low-complexity tool with no output schema, the description is complete. It covers the action and the precondition (session existence).

    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?

    The tool has zero parameters and the schema coverage is 100% (empty). With no parameters, baseline is 4; the description adds no parameter information, which is appropriate.

    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 verb 'Stop' combined with the resource 'active Selenium browser session' is specific and unambiguous. It clearly distinguishes from siblings like 'start_browser' and 'window'.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description implies usage after a session exists but provides no explicit when-to-use or when-not-to-use guidance. The conditional 'if one exists' hints at handling but lacks clear context or alternatives.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

selenium-mcp MCP server

Copy to your README.md:

Score Badge

selenium-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/gaforov/selenium-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server