Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool has a clearly distinct purpose with detailed descriptions that explain when to use it. Potential overlaps like check_visibility and query_selector with onlyVisible are resolved by context-specific guidance.

    Naming Consistency5/5

    All tools follow a consistent verb_noun pattern in snake_case, making the naming predictable and easy to understand. Minor variations like go_history still fit the pattern.

    Tool Count3/5

    With 34 tools, the server is slightly over the recommended range, but the tools cover many specialized debugging tasks (visibility, alignment, scrolling, network, etc.) and are well-organized, so the count is still reasonable for a comprehensive web inspector.

    Completeness4/5

    The tool set covers essential web debugging operations (DOM inspection, CSS, console, network, interactions, visual). Minor gaps like direct cookie/localStorage manipulation can be addressed via evaluate.

  • Average 4.3/5 across 28 of 34 tools scored. Lowest: 2.5/5.

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

    • 0 of 1 community issues answered or closed in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • 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.

  • Add related servers to improve discoverability.

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

  • Behavior2/5

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

    Annotations indicate readOnlyHint=false and idempotentHint=false, implying the tool modifies state and is not idempotent. However, the description does not add any behavioral details beyond these annotations, such as side effects or error conditions.

    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 concise (one sentence) but lacks structure. It is not front-loaded with key information; the single sentence is vague and does not earn its place by adding clarity.

    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 simplicity of selecting an option from a <select> element, the description is incomplete. It fails to mention return values, error handling, or that the element must be a <select> tag. Sibling tools like 'click' or 'fill' are not distinguished.

    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?

    The input schema has 100% coverage with descriptions for both 'selector' and 'value'. The description adds no further meaning, so it provides adequate but baseline support.

    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 'Select an element on the page with Select tag' indicates the tool operates on <select> elements, but it is vague. It repeats the tool name ('select') and does not clearly specify that it selects an option from a dropdown, leading to potential confusion with the 'click' or 'fill' tools among siblings.

    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 'click', 'fill', or 'evaluate'. The description lacks any context about prerequisites (e.g., element must be a <select> tag) 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.

  • Behavior2/5

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

    Annotations already indicate mutation (readOnlyHint=false) and non-idempotency (idempotentHint=false). The description adds minimal behavioral context, not disclosing side effects or error handling.

    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, front-loaded sentence with no wasted words. However, it lacks additional structural elements that could improve clarity.

    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 two string parameters and no output schema, the description is functional but incomplete. It could mention success/error behavior or return value expectations.

    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 100% with clear parameter descriptions (CSS selectors). The tool description does not add any further semantics beyond the schema, so baseline score applies.

    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 ('Drag an element to a target location') and the resource (CSS selectors). It is distinct from sibling tools like click or hover, but could be more specific about the drag-and-drop nature.

    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, nor are prerequisites or limitations mentioned (e.g., element visibility, potential failure 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?

    Annotations indicate possible side effects (readOnlyHint=false, idempotentHint=false), but the description does not disclose behavioral traits such as triggering events, potential page navigation, or state changes beyond key press. Terse description leaves agent uninformed about consequences.

    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 unnecessary words. Every word is relevant and earns its place. Excellent conciseness for a simple tool.

    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 action tool with no output schema, the description omits what the tool returns (e.g., success, nothing) and any side effects. While parameters are covered, the overall completeness is adequate but leaves gaps for an agent to infer behavior.

    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?

    Input schema covers both parameters with descriptions and examples for 'key'. Description adds no additional meaning beyond the schema. Baseline of 3 is appropriate given high schema_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 'Press a keyboard key' clearly states the action and resource, but lacks context that it is for browser/UI keyboard interactions, which is inferred from sibling tools. It is specific enough to distinguish from click or fill, but could be more explicit.

    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 fill. The optional selector suggests focusing, but there is no explicit directive on prerequisites or scenarios.

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

  • Behavior4/5

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

    Explicitly describes return values including a network-idle note and console error handling, which adds context beyond annotations. However, it does not mention behavior when history stack is empty or after multiple idempotent calls (consistent with annotations but still a gap).

    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?

    Concise, front-loaded with purpose, and includes essential return details. Every sentence adds value, though the listing of return fields could be more compact.

    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 1-parameter tool with no output schema. Missing edge cases like empty history or unsupported direction (though schema validation covers it). Sompleteness is acceptable but not exhaustive.

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

    Parameters3/5

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

    Schema coverage is 100% and includes an enum, so the schema already fully defines the direction. Description adds no extra meaning beyond repeating 'back/forward'. Baseline score of 3 is appropriate.

    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 navigates browser history with 'back' or 'forward', and the name is self-explanatory. However, it does not differentiate from sibling tools like 'navigate' or 'scroll_by', leaving ambiguity about when to use this specific tool.

    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 instead of 'navigate' (which goes to URLs) or 'scroll_by'. Does not specify conditions like when history is empty or edge cases.

    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?

    Annotations already indicate non-read-only behavior, but the description does not add details about side effects (e.g., triggering hover CSS states). Adequate but minimal extra value.

    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?

    Extremely concise and to the point, no unnecessary words.

    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 simple one-parameter tool with annotations, the description is adequate though it could optionally mention that hovering triggers CSS pseudo-classes.

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

    Parameters3/5

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

    Schema coverage is 100% and the parameter description is sufficient; the tool description does not add additional meaning 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 action ('Hover') and the resource ('an element on the page'), distinguishing it from sibling tools like click or drag.

    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 hover versus alternatives such as click, nor any exclusions or prerequisites.

    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?

    Annotations already indicate this is mutative and non-idempotent. The description adds minimal behavioral context beyond the action itself, such as side effects like file selection state or potential need for subsequent actions.

    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, concise sentence of 12 words that covers the essential purpose without any unnecessary elaboration or repetition.

    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?

    The description is functional but lacks important context such as prerequisites (element must be visible/interactable), behavior after upload (file is selected but not automatically submitted), and error conditions. Given the tool's simplicity, it is adequate but has clear gaps.

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

    Parameters3/5

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

    Schema coverage is 100%, so the schema already describes the parameters. The description does not add extra meaning or usage details beyond the schema definitions.

    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 (upload), the target (file input element), and distinguishes it from other interaction tools like click or fill. It is specific and 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?

    The description implies usage for file input elements but lacks explicit guidance on when to use this tool versus alternatives, such as when a submit action is needed after upload. No exclusions or context for 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.

  • Behavior3/5

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

    Annotations indicate non-readOnly and non-idempotent. Description does not elaborate on behavioral traits beyond the action (e.g., whether it triggers navigation, waits for element, etc.). Adequate but 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 sentence, no unnecessary words. Efficiently communicates purpose.

    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?

    Given the tool's simplicity (1 required parameter, no output schema, no nested objects), the description is complete enough. No missing critical information.

    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 covers the selector parameter well with examples of special syntax. Since schema_description_coverage is 100%, baseline is 3; description adds no extra semantic value beyond 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?

    Description clearly states verb+resource: 'Click an element on the page'. Distinguishes from sibling tools like fill, hover, select, 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 when-to-use or when-not-to-use guidance. Usage is implied by the name and description, but no alternatives or exclusions are mentioned.

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

  • Behavior4/5

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

    Adds valuable behavioral context beyond annotations: reveals that browser sessions are saved persistently and explains how to clear them. The annotations already indicate non-read-only and idempotent nature, so the description complements well.

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

    Conciseness5/5

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

    Three efficient sentences with no redundancy. Front-loaded with the primary purpose, followed by essential behavioral note.

    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 fundamental navigation tool given the presence of sibling tools for waiting and inspection. However, lacks detail about return values or page load behavior, which could be helpful.

    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 covers 100% of parameters with descriptions. The tool description does not add parameter-specific details beyond the schema, so baseline score of 3 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?

    Description clearly states the action ('Navigate to a URL'), which is specific and distinct from sibling tools that perform other interactions like clicking, filling, or evaluating.

    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. The description implies it is the primary navigation method, but does not mention scenarios where other tools might be preferred or prerequisites.

    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?

    Annotations provide idempotentHint and readOnlyHint, but description adds little behavioral context beyond 'release all resources.' No contradictions.

    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 concise sentence front-loading the action and outcome; no unnecessary words.

    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 parameterless tool with clear annotations, the description fully covers the operation without needing details about return values (no output schema).

    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, so schema coverage is 100%. Description adds no param meaning beyond schema, which is sufficient for zero-param tools.

    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 closes the browser and releases resources, distinguishing it from siblings like navigate or click.

    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 purpose is clear and usage is implied as the final cleanup step.

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

  • Behavior4/5

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

    Description discloses the mutation of state (clearing logs) and return value. IdempotentHint=true is consistent; the tool is idempotent. Adds value beyond annotations by specifying the return type.

    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 that efficiently conveys the action and result. No wasted words.

    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 simple parameterless tool, the description covers purpose and return. Could mention that cleared logs are permanently lost, but annotations imply safe idempotent operation. Satisfactory given context.

    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, so the description does not need to add meaning. Baseline of 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 clears captured console logs and returns the count, using a specific verb and resource. It distinguishes itself from sibling 'get_console_logs' which likely reads without clearing.

    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 like 'get_console_logs'. The description implies usage for clearing logs, but lacks context on prerequisites or consequences.

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

  • Behavior4/5

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

    The description explains that scrolling automatically handles the nearest scrollable ancestor, adding behavioral context beyond annotations. It also details the position parameter behavior with examples.

    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?

    Four concise sentences, front-loaded with the core action, and every sentence adds value without redundancy.

    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 simple tool with two parameters and no output schema, the description covers purpose, usage, and parameter details adequately, though error handling is not mentioned.

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

    Parameters3/5

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

    Schema coverage is 100% with parameter descriptions; the tool description adds minimal extra meaning beyond repeating the enum explanation and default 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 uses a specific verb 'scroll' and resource 'element', clearly stating the action. It also distinguishes from sibling tools like 'scroll_by' by focusing on scrolling to an element.

    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 lists use cases: 'making elements visible before interaction, triggering lazy-loaded content, testing scroll behavior.' It provides clear context but does not explicitly exclude alternatives.

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

  • Behavior4/5

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

    Annotations declare readOnlyHint=true, indicating no side effects. Description aligns by stating it returns output and uses a one-time token. However, it could mention what happens if the token is invalid or expires, which would add further 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?

    Two sentences, no redundant information. Every sentence serves a purpose: stating the action and providing usage guidance. Front-loaded with the main verb.

    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?

    The description lacks details about the return format or content of the 'full output'. Since there is no output schema, the description should specify what the output looks like or at least give a hint. This gap reduces completeness.

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

    Parameters3/5

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

    Schema coverage is 100% and descriptions for both parameters are already clear. The description does not add additional meaning beyond what the schema provides, so baseline of 3 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?

    Description clearly states the action: returning full output using a one-time token from a preview. It specifies the trigger condition and distinguishes from siblings by mentioning preview/token context, which none of the sibling tools address.

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

    Usage Guidelines5/5

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

    Explicitly instructs when to use: when a tool responded with a preview + token. Also provides a rationale ('Safer than resending original parameters'), helping the agent decide between alternatives.

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

  • Behavior4/5

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

    Annotations already indicate readOnlyHint=true, and the description adds behavioral details: waits for 500ms idle, returns actual wait duration and idle state. No side effects disclosed, but it's consistent with 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?

    Three sentences, front-loaded with purpose, no wasted words. All information is relevant and necessary.

    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 tool with one parameter and no output schema, the description comprehensively covers its operation, return values, and use case. No gaps.

    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 100% with a clear description for the timeout parameter. The tool description does not add additional parameter details beyond what the schema provides.

    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 waits for network activity to settle with a specific condition (no connections for 500ms). It distinguishes itself from sibling tools like wait_for_element and fixed delays.

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

    Usage Guidelines4/5

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

    It explicitly says 'Better than fixed delays when waiting for AJAX calls or dynamic content loading,' which provides clear guidance on when to use it. However, it does not mention when not to use or compare with other waiting strategies.

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

  • Behavior4/5

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

    The description discloses the tool's return information (position, visibility, interaction state) and mentions support for exact match, case-sensitive search, and regex. This adds behavioral context beyond the readOnlyHint annotation, which already indicates safety. No contradictions. Slight gap: no mention of error handling or behavior with no matches.

    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 concise (4 sentences), each sentence adds value. It front-loads the core purpose, then provides usage guidance, return behavior, and supported features. No unnecessary words. Excellent structure.

    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?

    The description adequately covers the tool's purpose, return data, and matching options. Given the complexity of 5 parameters and no output schema, it is reasonably complete. However, it could mention edge cases like no matches or performance implications, which would make it more robust.

    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 100% schema description coverage, the bar for parameter value is higher. The description adds extra context with examples and the 'NEW' regex capability, which enriches the schema's descriptions. It explains the interplay between exact, caseSensitive, and regex, going beyond what the schema states.

    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 finds elements by text content, which is a specific verb and resource. It distinguishes itself from selector-based tools by noting its utility for poorly structured DOM, and mentions returns of position, visibility, and interaction state. This differentiates it from siblings like get_text or element_exists.

    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 explicitly advises using this tool when 'without good selectors' and in 'poorly structured DOM,' which provides clear usage context. However, it does not explicitly list when not to use it or name alternative tools, so it falls short of a perfect score.

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

  • Behavior4/5

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

    Annotations indicate readOnlyHint=true, consistent with screenshot capture. The description adds token cost (~1,500 tokens) and save location, which are useful behavioral details beyond annotations. However, the note about 'may return preview+token' is vague and could be clearer.

    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 well-structured with sections for wrong/right usage, valid uses, and token cost. It is front-loaded with a clear emoji and purpose. However, the repeated formatting of '❌ WRONG: ...' makes it slightly verbose.

    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?

    While the description covers many aspects, it does not clearly specify what the tool returns (e.g., file path, success message) beyond 'may return preview+token'. Given no output schema, this is a notable gap for completeness.

    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?

    Input schema coverage is 100%, and the description adds practical examples like { name: 'login-page', fullPage: true }, helping agents understand parameter usage beyond the schema. This slightly exceeds the baseline of 3.

    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: 'Captures page/element appearance and saves to file.' It also distinguishes from siblings by listing incorrect use cases (alignment, visibility, layout) and directing to appropriate tools, and gives valid use cases.

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

    Usage Guidelines5/5

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

    The description provides explicit wrong usage examples with correct alternatives, and lists valid use cases such as sharing with designers or visual regression testing. This gives clear guidance on when to use this tool versus alternatives.

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

  • Behavior4/5

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

    Annotations (readOnlyHint=true) indicate no destructive side effects. Description adds that it returns duration and status, and supports testid shortcuts. No contradictions. Lacks detail on timeout behavior, but acceptable.

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

    Conciseness5/5

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

    Three sentences, front-loaded with main purpose, then differentiator, then additional features. No redundancy. Efficient.

    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?

    With 3 params, no output schema, description covers purpose, parameters, return info, and usage suggestion. Could mention timeout behavior or error handling, but not essential. Adequate for most use cases.

    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 covers all 3 parameters with 100% description coverage. Description adds value by explaining testid shorthand for selector and clarifying default state. Minor extra beyond 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?

    Clearly states it waits for an element to reach a specific state (visible, hidden, attached, detached). Distinguishes from sleep() and mentions return value (duration, status) and testid shortcuts. No ambiguity.

    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?

    Explicitly recommends using this instead of sleep() for dynamic content. Does not mention when not to use, but context from sibling tools suggests alternative waiting tools (e.g., wait_for_network_idle) for other cases. Adequate guidance.

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

  • Behavior5/5

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

    The description goes beyond annotations (readOnlyHint) by detailing what the tool returns: viewport intersection, clipping details, and scrolling needs. This adds valuable behavioral context without contradicting 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?

    The description is concise with three short sentences. It front-loads the purpose, then adds importance and return details, and finally parameter syntax. No unnecessary information.

    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?

    Given the simple tool (one parameter, read-only, no output schema), the description provides complete context: purpose, typical use case, return details, and supported selector formats. No gaps.

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

    Parameters3/5

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

    Schema coverage is 100% and the description reinforces the parameter by giving an example ('testid:submit-button') and mentioning testid shortcuts. This adds marginal 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 checks element visibility with a specific verb ('Check') and resource ('an element is visible'). It distinguishes from siblings like element_exists (existence vs visibility) and click (action) by framing it as critical for debugging click/interaction 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 explicitly advises using this tool for debugging click/interaction failures, providing clear context. It does not explicitly state when not to use it or name alternatives, though siblings like element_exists are implied.

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

  • Behavior4/5

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

    Annotations indicate read-only. Description adds transparency by detailing output format (✓/✗ symbols and pixel differences), beyond what annotations provide.

    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?

    Description is concise (three sentences), front-loaded with purpose in bold, and efficiently includes usage guidance and output details.

    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?

    No output schema, but description explains output content (symbols, pixel differences) and use cases. For a simple tool with two parameters, it is complete.

    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 has 100% coverage with parameter descriptions. The description does not add significant extra semantics beyond the schema, but it provides context for the parameters' role in alignment comparison.

    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 function: comparing two elements for alignment and dimensions. It lists specific attributes (edge alignment, center alignment, dimensions) and distinguishes from siblings like inspect_dom and evaluate.

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

    Usage Guidelines5/5

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

    Explicitly provides when to use (debugging alignment) and when not to (parent-child centering, refer to inspect_dom). Also notes efficiency over evaluate().

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

  • Behavior4/5

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

    Annotations already declare readOnlyHint=true. Description adds context: 'ultra-lightweight', 'returns simple exists/not found status', and 'supports testid shortcuts', which are beyond the annotations. No contradictions.

    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?

    Four concise sentences, all earning their place. Front-loaded with core purpose. No fluff.

    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 tool with one parameter and no output schema, description covers purpose, alternatives, return format, and common use case. Highly complete.

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

    Parameters3/5

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

    Schema coverage is 100% with detailed description. Description repeats the same info but adds examples like 'testid:submit-button'. Baseline 3 is appropriate as description 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?

    Clearly states verb 'check' and resource 'element existence'. Distinguishes from sibling 'query_selector_all' by labeling itself 'ultra-lightweight'. Mentions testid shortcuts, adding specificity.

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

    Usage Guidelines5/5

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

    Explicitly says it's an alternative to query_selector_all when only existence confirmation is needed, and that it's a common check before interaction. Provides clear when-to-use guidance.

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

  • Behavior4/5

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

    Annotations provide readOnlyHint=false and openWorldHint=true; description adds details like return value preview guard, token efficiency, and auto-detection of alternative tools, going beyond annotations to clarify behavior.

    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?

    Description is front-loaded with core purpose and uses clear bullet-point structure, though it could be slightly more concise without losing essential details.

    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 complexity of arbitrary JS execution, description covers usage guidelines, alternatives, and behavioral traits adequately. Lacks explicit error handling details but sufficient for agent selection.

    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 covers the 'script' parameter 100%, but description adds critical usage notes (single vs multi-statement, return requirement) that enhance understanding beyond 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?

    Description clearly states 'Execute arbitrary JavaScript in the browser console' and lists exclusions for sibling tools (scroll detection, element dimensions, etc.), making the purpose highly specific and distinguishable.

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

    Usage Guidelines5/5

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

    Explicitly states when NOT to use the tool by listing sibling tools for common tasks and concludes 'Use ONLY when specialized tools cannot accomplish the task,' providing strong decision support.

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

  • Behavior5/5

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

    The description discloses critical behaviors beyond annotations: it describes the wrapper descent logic (up to 4 levels), error conditions for zero or multiple fillable descendants, and the supported element types. No contradiction with annotations (readOnlyHint=false, idempotentHint=false).

    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, well-structured sentence that front-loads the core purpose ('fill an input/textarea/contenteditable') and appends essential behavioral details. Every phrase earns its place, with zero wasted words.

    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?

    Given the low complexity (2 parameters, no output schema, no nested objects), the description is fully adequate. It covers the core action, target elements, wrapper handling, and error conditions. No missing details are needed for correct agent usage.

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

    Parameters3/5

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

    Schema coverage is 100%, so baseline is 3. The description adds behavioral context for the 'selector' parameter (wrapper descent) but does not add meaning beyond the schema for the 'value' parameter. While helpful, it doesn't significantly elevate parameter understanding beyond what the schema already provides.

    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 'fill an input/textarea/contenteditable', specifying the verb and resource types. It distinguishes from siblings like 'click', 'select', and 'press_key' by focusing on filling form fields. The additional detail about wrappers and descent behavior further clarifies its purpose.

    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 implies usage for filling text inputs and handles wrapper selectors with a descent strategy. While it doesn't explicitly list alternatives, the concise phrasing and context make it clear when to use this tool versus siblings (e.g., use 'fill' for text, 'click' for buttons). A small deduction for missing explicit when-not-to-use guidance.

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

  • Behavior4/5

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

    Annotations indicate a mutating action (readOnlyHint=false, idempotentHint=false). The description adds valuable behavioral context: output scenarios (success, boundary, ambiguous-direction, not-scrollable), direction semantics, and auto-detection. It goes beyond annotations to explain what the agent can expect.

    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?

    Every sentence adds value with no redundancy. The description uses bullet points for outputs and essential uses, making it scannable. It is slightly longer but efficiently packed with information.

    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?

    Despite no output schema, the description thoroughly covers return behavior (success, boundary, ambiguous-direction, not-scrollable reports) and usage guidance. All three parameters are addressed, and edge cases like scroll limits are hinted at via boundary notices.

    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 100%, but the description adds meaning beyond the schema: contextual details on direction auto-detection, positive/negative pixel meaning, and 'html'/'body' usage. This enriches parameter understanding beyond what the schema provides.

    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 scrolls a container by pixels, specifies auto-detection of direction, and distinguishes use cases like 'precise scroll position testing' from likely sibling 'scroll_to_element'. The verb+resource is specific and the scope is well-defined.

    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 explicitly lists essential use cases (testing sticky headers, infinite scroll, carousel navigation) and provides guidance for page scrolling with 'html'/'body'. However, it does not explicitly name sibling tools or state when not to use this tool.

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

  • Behavior4/5

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

    Annotations indicate idempotentHint=true, and description adds that it defaults to system appearance and returns confirmation of the active scheme. No contradictions; provides useful context beyond 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?

    Three sentences with no redundant information. Front-loaded with purpose and usage, then details options and return value.

    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?

    Complete for this simple tool: purpose, when to use, parameter options explained, and return value stated. No output schema needed.

    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 has 100% coverage with a description, but the tool description explains each option's effect (e.g., 'system (clear override to follow OS/browser setting)'), adding 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 sets the browser color scheme for CSS prefers-color-scheme, lists all options, and distinguishes it from sibling tools which cover other browser automation tasks.

    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?

    Explicitly states 'Use before inspecting colors or taking screenshots', providing clear context. Does not mention when not to use or alternatives, but this is sufficient given the tool's specificity.

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

  • Behavior4/5

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

    Annotations already declare readOnlyHint and openWorldHint. Description adds key behaviors: 'may return preview+token' for large output, 'Scripts removed by default for security/size', and auto-return condition for small HTML. No contradictions.

    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?

    Front-loaded with warning and purpose. Structure is logical: usage guidelines, return behavior, security note. Slightly verbose but each sentence adds value; could be tightened slightly.

    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?

    Given no output schema, the description fully covers return value behavior (auto-return vs. preview+token). Explains script removal and testid shortcuts. Sufficient for all 3 optional parameters and edge cases.

    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 covers 100% of parameters. Description adds value with examples (e.g., 'testid:main-content') and clarifies the default behavior of the clean parameter ('default = remove scripts only'). Does not merely restate 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 'Get raw HTML markup from the page (no rendering, just source code).' It specifies the resource (HTML) and action (get) with precise scope, distinguishing it from siblings like inspect_dom and query_selector.

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

    Usage Guidelines5/5

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

    Explicit usage guidance: 'RARELY NEEDED' and lists three specific use cases. Clearly states when NOT to use it and provides alternative tools (inspect_dom, query_selector, get_computed_styles) for structured tasks.

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

  • Behavior5/5

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

    The description explains the output format in detail: 'compact visual representation showing content → padding → border → margin with directional arrows.' It also mentions providing raw dimensions for scroll detection. This goes beyond the readOnlyHint=true annotation, giving the agent a clear mental model of what the tool returns.

    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 reasonably concise given the amount of information. It front-loads the tool's purpose and usage in the first sentence, then provides behavioral details and sibling comparisons. Every sentence adds value, though it could be slightly trimmed without loss.

    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?

    Considering the tool has only one parameter and a straightforward read operation, the description is complete. It explains what the tool does, when to use it, what output to expect, and how it relates to sibling tools. No gaps are evident.

    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?

    The input schema already has a clear description for the 'selector' parameter (CSS selector or testid shorthand). The main description does not add further parameter semantics beyond repeating 'selector for the element.' With 100% schema coverage, a baseline score of 3 is appropriate as no additional insights are 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 clearly states the tool's purpose: 'DEBUG SPACING ISSUES' and specifies it measures padding, margin, border, and dimensions. It distinguishes from siblings by comparing to inspect_dom(), compare_element_alignment(), get_computed_styles(), and evaluate(), making it easy for an AI agent to select the correct tool.

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

    Usage Guidelines5/5

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

    The description explicitly says when to use the tool: 'Use when elements have unexpected spacing or size.' It also provides clear alternatives for different scenarios, such as using inspect_dom() for parent-child centering or compare_element_alignment() for comparing two elements, which helps an agent decide when not to use this tool.

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

  • Behavior5/5

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

    Discloses key behaviors: token mechanism for large outputs, deduplication in grouped mode, and default parameter values. Consistent with 'readOnlyHint: true' annotation, and adds behavioral context beyond 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?

    Four concise sentences, front-loaded with key information (preview+token). Each sentence adds essential detail without redundancy. No fluff or unnecessary words.

    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?

    Despite lacking an output schema, the description fully explains return behavior (preview+token, grouped vs raw), defaults, and parameter effects. An agent can effectively use this tool with the provided information.

    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 covers all 5 parameters with descriptions (100% coverage). The description adds value by stating defaults for 'limit', 'since', and 'format', and clarifying the meaning of 'since' values (e.g., 'last-interaction'). This goes beyond the schema's parameter 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 'Retrieve console logs with filtering and token-efficient output', specifying the verb 'Retrieve', the resource 'console logs', and key features. It distinguishes from siblings like 'clear_console_logs' and other DOM/network tools.

    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?

    Provides clear usage context: explains the two formats ('grouped' vs 'raw'), the 'since' options, and defaults. Does not explicitly mention when not to use this tool or compare to alternatives, but covers enough guidance for appropriate use.

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

  • Behavior5/5

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

    The description discloses behavioral traits beyond annotations: it returns a compact text list grouped by attribute type, and explains the truncation behavior controlled by the showAll parameter. This aligns with the readOnlyHint=true annotation, and there is no contradiction.

    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 consists of three concise sentences: the first states the action, the second describes the output format, and the third provides usage context. Every sentence adds value without redundancy.

    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?

    Given the tool's simplicity, no output schema, and the presence of annotation reading hints, the description fully covers the return format, parameter effects, and use case. No gaps remain for an AI agent to invoke the tool correctly.

    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 has 100% coverage with descriptions for both parameters. The description adds value by explaining the default attributes and the effect of showAll (truncation vs. full list), going 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's purpose: discovering all test identifiers (specific attribute types) on the page. It uses a specific verb and resource, and it distinguishes itself from sibling tools by focusing on test IDs, which no other sibling explicitly does.

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

    Usage Guidelines4/5

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

    The description indicates the tool is essential for test-driven workflows and selecting reliable elements, providing clear context for when to use. It also mentions using the returned IDs with selector shortcuts. However, it does not explicitly state when not to use or mention alternative tools.

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

  • Behavior5/5

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

    Annotations indicate read-only and no open-world effects. Description accurately describes the return format and filtering capabilities. No contradictions or missing 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.

    Conciseness5/5

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

    Two sentences conveying purpose, output format, use case, and alternative tool. No redundant words. Front-loaded with action and resource.

    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?

    Given the simple schema (2 optional params, no enums, no output schema), the description covers the return format, use context, and relationship to sibling tool. Complete enough for the agent to decide and invoke.

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

    Parameters3/5

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

    Schema coverage is 100%, so baseline is 3. Description does not add extra meaning beyond what the schema provides for the two parameters. It mentions filtering by type but that's already in 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?

    Clearly states the tool lists recent network requests with specific output details (method, URL, status, resource type, timing, size). Distinguishes from sibling tool get_request_details by mentioning it returns compact text format.

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

    Usage Guidelines5/5

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

    Explicitly says it is essential for debugging API calls and performance issues, and directs to use get_request_details for full headers and body. Provides clear when-to-use and alternative guidance.

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

  • Behavior5/5

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

    The description discloses several behavioral details not covered by annotations: truncation at 500 chars, password masking, preview+token mechanism for saving full bodies, and the role of the confirm_output tool. Annotations only indicate readOnlyHint=true and openWorldHint=false, so the description adds substantial value.

    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 well-structured and concise, with each sentence adding value. It opens with an important hint about the preview+token, then covers main functionality, truncation, masking, token usage, and the use case. No redundant or unnecessary information.

    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?

    Given the tool's simplicity (1 parameter, no output schema, annotations present), the description is complete. It explains return values (headers, body, timing, size), special behaviors (masking, truncation, preview+token), and the use case for debugging. It adequately covers what an agent needs to know to use the tool correctly.

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

    Parameters5/5

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

    The input schema covers the single parameter 'index' with 100% description coverage. The description adds context by explaining how to obtain the index from list_network_requests output and provides an example format, enhancing usability 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's purpose: 'Get detailed information about a specific network request by index (from list_network_requests).' It specifies the verb ('Get detailed information'), the resource ('network request'), and the source of the index, effectively distinguishing it from sibling tools like list_network_requests.

    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 provides clear usage context: 'Essential for debugging API responses and investigating failed requests.' It implicitly links to list_network_requests as a prerequisite. While it does not explicitly state when not to use the tool or list alternatives, the context is well-defined and the tool's specificity makes misuse unlikely.

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

  • Behavior5/5

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

    Despite readOnlyHint=true, the description adds rich behavioral details: position/size, constraints, margins with arrows, padding, display, borders, overflow, flexbox/grid context, auto centering detection, clipping flags, default/max limits. Exceeds annotation information.

    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?

    Description is relatively long but efficiently packs many details. Front-loaded with core purpose. Every sentence adds value, though slightly verbose for a debug tool, it remains clear and structured.

    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?

    Without output schema, description fully specifies what the tool returns: a list of ancestors with various properties. Covers all vital aspects for a layout debugging tool, leaving no ambiguity.

    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 100%, so baseline is 3. Description adds context for limit parameter (increase for deeply nested frameworks) and clarifies selector usage, providing extra value beyond 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 walks up the DOM tree to find layout constraints, with specific details on what it shows. It distinguishes itself from siblings like inspect_dom by focusing on ancestors and layout debugging.

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

    Usage Guidelines5/5

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

    Explicitly states it's essential for debugging unexpected centering, constrained width, or clipped content, and recommends using it after inspect_dom. Provides clear when-to-use guidance.

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

  • Behavior5/5

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

    Annotations already declare readOnlyHint=true, matching the read-only inspection nature. Description adds rich behavioral details: skips wrapper divs, detects scrollable containers, identifies centering, explains portal behavior for dropdowns. No contradiction with annotations.

    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?

    Description is well-structured with clear sections (WORKFLOW, DETECTS, OUTPUT FORMAT, etc.) and front-loaded with the primary purpose. However, it is somewhat verbose; some details (symbols, full output format) could be shortened or moved to docs. Still, it earns its content.

    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?

    Given the complexity of the tool (progressive inspection, centering, scroll detection, portals) and no output schema, the description thoroughly explains behavior, output format, symbols, and special cases. Combined with good annotations and schema, it provides complete context for an AI agent.

    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?

    Input schema has 100% description coverage. Description adds workflow context (default behavior without selector, testid shortcuts) and clarifies maxDepth usage. While schema already explains parameters, description adds value beyond schema for some parameters (e.g., maxDepth explanation), justifying a 4.

    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 is the primary inspection tool for layout debugging, with specific verb 'inspect DOM' and resource 'DOM elements'. It distinguishes itself from siblings like compare_element_alignment and measure_element by describing its scope (parent-child relationships, centering, spacing gaps).

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

    Usage Guidelines5/5

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

    Explicitly instructs to call without selector for overview and drill down with child's selector. Names alternative tools for alignment comparison and box model. Recommends using this before visual tools or evaluate(). Provides clear when-to-use and when-not-to-use guidance.

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

  • Behavior5/5

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

    Annotations already indicate readOnlyHint=true. Description adds valuable behavioral context: return format, why elements are hidden, testid shortcuts, and visibility filtering. No contradiction.

    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?

    Concise yet information-dense. First sentence captures purpose, followed by clear structure covering return format, features, and parameter details. No redundant sentences.

    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?

    Despite no output schema, description explains return format thoroughly. With 4 parameters and detailed behavioral notes, it is fully complete for an agent to understand and invoke the tool correctly.

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

    Parameters5/5

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

    Schema coverage is 100% but description adds significant extra meaning: examples for selector (text, testid shorthand), default value and recommendation for limit, three-state explanation for onlyVisible, and clarification for showAttributes.

    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 'Test a selector and return detailed information about all matched elements.' Uses specific verb+resource and distinguishes from siblings like element_exists or get_text by emphasizing debugging and detailed output.

    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?

    Provides good context for when to use (selector debugging, finding right element) and gives parameter usage tips (limit, onlyVisible). However, does not explicitly state when not to use or mention alternative tools like element_exists or inspect_dom.

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

  • Behavior5/5

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

    Annotations confirm readOnlyHint=true. Description adds context that results are grouped by category (Layout, Visibility, Spacing, Typography), which informs the agent about output structure. No contradictions.

    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?

    Four sentences, all essential. First sentence is an imperative summary, followed by usage guidance and alternative. No wasted words.

    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?

    Two required parameters fully described in schema. No output schema, but description mentions grouping categories. All relevant context for selection and invocation is present.

    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 100% with parameter descriptions. Tool description adds the default properties list (e.g., 'display,width,height,...') beyond the schema's shorter description, providing extra clarity.

    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 starts with a strong, specific 'INSPECT CSS PROPERTIES' and clearly defines the action: 'Get computed CSS values for specific properties'. It identifies the resource (CSS properties of an element) and distinguishes from sibling 'measure_element()'.

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

    Usage Guidelines5/5

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

    Explicitly states when to use ('when you need raw CSS values or specific properties not shown by measure_element()') and when not to ('For box model visualization... use measure_element() instead'), providing clear guidance.

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

  • Behavior5/5

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

    Beyond annotations (readOnlyHint=true, openWorldHint=false), the description reveals critical behaviors: auto-return for small text (<2000 chars), preview+token mechanism for larger text, support for testid shortcuts, and the dialog::SELECTOR scope. No contradiction with 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?

    The description is front-loaded with a warning and purpose, then organized into bullet-like use cases and alternatives. Each sentence serves a distinct purpose: warning, purpose, use cases, alternatives, algorithmic behavior, and supported scopes. It's dense but not verbose.

    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?

    Despite no output schema, the description fully explains the tool's behavior: how text is returned (preview+token for large), default thresholds, and scoping options. It addresses edge cases (small vs large elements) and provides enough context for an agent to use it correctly alongside siblings.

    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 100% with both parameters documented. The description adds practical context (e.g., 'Examples: testid:article-body', 'Use bare dialog:: for the whole topmost dialog') and mentions default maxLength (20000). While schema already covers parameter roles, the examples enhance usability.

    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 extracts all visible text from the entire page without structure. It explicitly calls out the tool's purpose and distinguishes it from sibling tools like inspect_dom, find_by_text, and query_selector by naming specific use cases where get_text is appropriate.

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

    Usage Guidelines5/5

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

    The description provides explicit guidance on when to use this tool (three enumerated use cases) and when not to use it (structured tasks), with direct references to alternative sibling tools. The warning '⚠️ RARELY NEEDED' sets clear expectations.

    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

mcp-web-inspector MCP server

Copy to your README.md:

Score Badge

mcp-web-inspector 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/antonzherdev/mcp-web-inspector'

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