Skip to main content
Glama

Server Quality Checklist

58%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.0

  • Disambiguation5/5

    Each tool targets a distinct browser automation concern: page exploration, interaction, reading, forms, dialogs, tabs, network/console logs, cookies, clipboard, and diagnostics. Even closely related tools like explore_page, ax, and inspect have clearly separated purposes (interactive map vs. accessibility tree vs. element introspection). No two tools appear to do the same job.

    Naming Consistency3/5

    Naming is readable and all lowercase, but conventions are mixed: some tools use verb_noun with underscores (explore_page, press_key, type_text, network_log), while many are bare verbs or nouns (click, read, scroll, status, tabs). The cryptic 'ax' and compound 'respawn_offscreen' also stand out. Still, the names are mostly self-explanatory and not chaotic.

    Tool Count4/5

    At 24 tools, this is on the higher end, but the breadth of browser automation justifies it: navigation, interaction, reading, forms, tabs, dialogs, network/console debugging, cookies, clipboard, and session management all require distinct operations. The guide's mention of '21 consolidated tools' is slightly inconsistent with the 24 exposed, but each tool earns its place.

    Completeness5/5

    The toolset covers the full lifecycle of browser automation: navigate, explore, interact, read, wait, handle dialogs, manage tabs, debug network/console, manage cookies, and inspect elements. There are no obvious dead ends or missing core operations for a web automation server. Even advanced needs like accessibility trees and canvas SPA support are addressed.

  • Average 3.2/5 across 24 of 24 tools scored. Lowest: 2.4/5.

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

    • No community issues in the last 6 months
    • 1 commit in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • 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?

    No annotations are provided, so the description carries the full disclosure burden. It does disclose one meaningful trait: list returns metadata only and explicitly no cookie values. But it is silent about the clear/clear_all actions being destructive, about side effects on the session, or any auth/permission requirements, leaving a large transparency gap.

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

    Conciseness2/5

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

    One short sentence is compact, but the trailing ellipsis signals truncation, and the multi-action tool deserves at least a structured summary. It under-specifies rather than being efficiently concise.

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

    Completeness1/5

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

    With 4 parameters, an action enum of 4 values, no output schema, and no annotations, this description is far from complete. It documents only one action and leaves the other three, the output shape, and edge cases undefined, so an agent cannot reliably invoke the tool.

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

    Parameters2/5

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

    Schema coverage is only 25% (frameId), and the description does not explain the required url parameter, the name parameter, or the action enum beyond the list case. It adds no meaning for get/clear/clear_all, so an agent cannot infer how to fill the parameters for those actions.

    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 names the resource (cookies) and specifies the list action's output (metadata with names, expiry, httpOnly, secure, and NO values), so an agent knows the tool is cookie-related and what list returns. However, it doesn't mention the get/clear/clear_all actions or distinguish from sibling tools like session, so it's clear but not fully differentiated.

    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?

    There is no when-to-use guidance or mention of alternatives. The text focuses only on what list returns; it does not say when to use cookies instead of session, network_log, or other sibling tools, nor when get/clear are appropriate.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It only names the interaction modes and coordinates; it does not disclose side effects, no-op behavior, frame handling, or what happens after a click. The schema's partial hint about 'suspected_noop' and autoClimb is not mirrored in the description, leaving important runtime behavior undocumented.

    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 pipe-separated structure is compact and front-loads the primary use case ('Interact by ref: click'). However, the description is visibly truncated with 'vie…', which harms completeness. Conciseness is good, but structure is marred by the incomplete ending.

    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?

    With 9 parameters, no output schema, and no annotations, the description should provide enough context for correct invocation across modes, coordinates, frames, and edge cases. It covers ref-based click/hover/rightclick/drag but omits coordinate semantics, button behavior, frameId, and autoClimb. The tool is callable in simple cases but under-specified for the full range of supported inputs.

    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 description adds useful semantics for drag (fromRef→toRef) and clarifies that mode defaults to click, complementing the schema's sparse enum. However, x/y is truncated ('x,y vie…') and its meaning is left ambiguous, and button, frameId, and autoClimb are not addressed beyond the schema. With schema coverage at 56%, the description only partially compensates for the undocumented parameters.

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

    Purpose4/5

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

    The description states an explicit action—'Interact by ref'—and enumerates the main modes: click, hover, rightclick, and drag, which makes the tool's core purpose clear. It also explains the drag variant with fromRef→toRef. However, it does not differentiate this from sibling interaction tools like press_key, type_text, or form, so it stops short of a 5.

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

    Usage Guidelines2/5

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

    The description lists modes but provides no guidance on when to choose click versus hover versus rightclick, nor when to use this tool instead of siblings like press_key or type_text. There are no exclusions, preconditions, or context cues for when this tool is the appropriate choice.

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

  • Behavior3/5

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

    No annotations are provided, so the description carries the full disclosure burden. It does add meaningful behavioral context — dialogs are "captured, non-blocking" and the keystroke parameter references "OS-level mode (old dismiss_dialog)" — but it stays silent on behavior when no dialog is pending, multi-dialog ordering, and side effects, and the text is truncated.

    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 short and front-loaded with the primary verb and resource, which is efficient. However, it trails off mid-thought with "+ index…," a structural defect indicating an unfinished specification, and the single run-on sentence jumps between modes without separating concerns.

    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?

    For a 5-parameter tool with no annotations, no output schema, and only one schema-described parameter, the description is inadequate. It omits value's role in prompt dialogs, key's purpose, index semantics, no-dialog behavior, and any return format, leaving an agent to guess for common cases.

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

    Parameters2/5

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

    With only 20% schema description coverage, the description must compensate, but it only clarifies action (accept/dismiss, which duplicates the schema enum) and gestures at index before truncating. The value parameter (needed for prompt-dialog text input), key, and index semantics are left unexplained in both the schema and the description.

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

    Purpose4/5

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

    The description states a specific verb and resource ("Resolve dialogs") and narrows the scope to JS dialogs (alert/confirm/prompt) with the qualifier "captured, non-blocking," which distinguishes it from native browser dialogs and from the sibling input tools (click, type_text, press_key). It loses the fifth point because the trailing "+ index…" truncation makes the statement incomplete.

    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?

    There is no guidance on when to invoke this tool versus its 24 siblings. The description never states the trigger condition (e.g., "when a dialog is pending") nor excludes alternatives like press_key or type_text for handling dialog content. The intended usage is only implied by the word "dialogs."

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

  • Behavior2/5

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

    No annotations are provided, so the description bears the full burden of behavioral disclosure. It exposes that 'state' is about form state/validation and 'select' sets a value, but it does not explain side effects of 'toggle' or 'upload', possible mutations, permissions, or what happens on failure. This is incomplete for a multi-action tool.

    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 compact and front-loaded with the action list, which is efficient. However, it is fragmentary and appears truncated after 'value …', making the structure incomplete rather than confidently concise.

    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?

    With six parameters, no annotations, no output schema, and only partial schema descriptions, the description covers only some actions and parameter nuances. Actions like 'toggle' and 'upload' are named but not explained, so an agent lacks enough context to invoke all supported operations correctly.

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

    Parameters3/5

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

    Schema description coverage is only 33%, so the description needs to compensate. It does add useful meaning for 'formRef' (state: omit for all), 'frameId' (omit = top), and action semantics, but it does not document 'ref', 'value', or 'filePath'. The parameter names are somewhat self-explanatory, but the coverage gap remains partially unfilled.

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

    Purpose4/5

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

    The description clearly identifies the tool as form operations and enumerates specific action modes ('state', 'select', 'toggle', 'upload'), with a bit of detail for 'state' (fields, validation, submit readiness). This is more than a tautology and gives an agent a concrete sense of what the tool does, though it is not a full sentence-level definition.

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

    Usage Guidelines2/5

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

    The description gives some scoping hints ('formRef optional = all', 'frameId omit = top') but does not indicate when to use this tool versus siblings like click, type_text, or dialog, and does not state any exclusions or alternatives. The agent is left to infer usage context.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It lists operations such as close, move, and transfer without explaining side effects, permissions, or return behavior, and the description trails off with 'route page ops…' without finishing. This is insufficient for agents deciding whether an action is destructive or safe.

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

    Conciseness3/5

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

    The description is compact and front-loaded with the most essential action syntax. The trailing ellipsis and fragmented 'route page ops…' make it feel cut off rather than deliberately concise, and important action definitions are missing.

    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?

    With ten actions, ten parameters, no output schema, and no annotations, this description is far too thin. It does not enumerate all actions, explain parameter groupings per action, or describe what an agent should expect back, leaving substantial ambiguity for a tool with this much surface area.

    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 description adds some parameter-to-action mapping by showing 'switch (tabId)', 'close (tabId)', and 'bind (tabId, activate?)', which goes beyond the raw schema. However, it covers only a subset of the ten actions and fails to document how selector, windowId, useValue, from/to params, and similar fields relate to the remaining actions. Schema coverage is 60%, so the description only partially compensates.

    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 identifies the resource as tabs/windows and gives concrete action syntax examples (list, switch, close, bind), so an agent can recognize this as the tab/window management tool. It is less than complete because the action list is truncated with an ellipsis and not all ten enum actions are shown.

    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?

    There is no guidance about when to use this tool versus alternatives like navigate, click, or reveal, and no exclusions are given. The action syntax implies usage for tab/window operations, but the agent is left to infer when this tool is appropriate.

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

  • Behavior3/5

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

    With no annotations provided, the description carries the full burden. It usefully discloses that the tool enumerates interactive elements and their predicted effects rather than executing them, implying a read-only reconnaissance role. However, it never explicitily states side-effect behavior, and traits like lazy-content preloading, hidden-element inclusion, or incremental diffs live only in the schema, not the description.

    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 short and front-loaded with the core concept ('Page map'), which is good. But it ends abruptly with '…', indicating truncation rather than intentional terseness, which is a structural defect for a definition that should be complete.

    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?

    This is a high-complexity tool (10 optional parameters, several distinct modes: goal, intent, compact, incremental, preload) with no output schema and no annotations. The truncated description leaves the return shape only partially specified, so an agent cannot fully anticipate what explore_page returns in each mode, making the definition incomplete for reliable invocation.

    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%, so the baseline is 3; the tool description adds only the output-structure context (E# refs, action types, effects, F# forms, content) that helps interpret parameters like goal, compact, and intent. It does not go beyond the schema to explain parameter interactions or formats, and several schema descriptions are themselves truncated.

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

    Purpose4/5

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

    The description states a specific deliverable — a page map of every interactive element with ref (E#), action type, predicted effect, forms (F#), and content — so an agent knows what explore_page produces and roughly what the output looks like. It is not a 5 because it lacks an explicit verb in the description itself and does not differentiate it from siblings like inspect, ax, or read, and the trailing ellipsis truncates the thought.

    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?

    There is no guidance on when to use explore_page versus the many sibling tools (click, type_text, inspect, screenshot, read, etc.). The only implicit signal is the schema's compact parameter referencing 'old discover_actions', which hints at history but gives no actionable selection criteria or exclusions.

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

  • Behavior2/5

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

    Annotations are absent, so the description must carry behavioral disclosure. It reveals some format behavior, but does not disclose that scrollextract/preload variants may scroll, trigger network requests, or change page state, nor does it say anything about return shape or limits.

    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 compact and front-loads the action plus a format map. The trailing '…' makes the format list feel unfinished, preventing a 5.

    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?

    With 13 parameters, no output schema, and no annotations, this definition is under-specified. Each format needs its own semantics, scrolling side effects should be flagged, and key parameter interactions should be clarified.

    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 62% and there are 13 parameters, so the description must add real meaning. It explains two format values, but leaves selector, goal, summarizeAt, diff, preload, and scrollextract parameters largely to terse schema snippets.

    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 definition names a clear verb and resource — 'Read page content' — and gives useful format distinctions ('text' as innerText with offset paging, 'content' as smart SPA extraction). It doesn't explicitly differentiate from sibling tools like explore_page or screenshot, so it isn't a 5.

    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 when-to-use guidance, no exclusions, and no pointer to alternatives. The format list implies choices, but the description never tells an agent when to prefer read over explore_page, screenshot, or evaluate.

    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?

    There are no annotations, so the description must carry the full burden of behavioral disclosure. It does reveal that reset clears the map and tab binding, which is useful, but it does not explain what map returns, what mermaid renders, what task operations do, or whether these actions mutate persistent session state. The truncated text also cuts off important behavior.

    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 pipe-separated format is compact and front-loads the most important action, which is good. However, the description is visibly truncated mid-word after 'pages vi…', which is a structural defect rather than intentional conciseness.

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

    Completeness2/5

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

    With no annotations and no output schema, the description must provide sufficient context on its own. Given seven parameters, four enums, and multiple action modes, the provided text only covers reset and partially covers map, leaving mermaid, task, direction, outputs, and cross-sibling behavior unexplained.

    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 description coverage is 71%, and the schema already describes op, goal, step, steps, and detail. The description adds meaning to the otherwise undocumented action enum by explaining reset and beginning to explain map. Direction and task-related semantics remain undocumented, but the description does add value beyond the schema.

    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 establishes that this is an exploration-session control with actions like reset and map, and it gives a concrete meaning for reset: clear map + tab binding. However, it is truncated at 'pages vi…', never states the full scope of the tool, and does not clearly define what the session tool itself is responsible for relative to siblings like explore_page or status.

    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 gives one explicit usage instruction: use reset when starting a new task. That is actionable. But it provides no guidance for map, mermaid, or task, and no comparison with sibling tools, so an agent cannot confidently decide when to use session instead of alternatives.

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

  • Behavior2/5

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

    No annotations are present, so the description carries the entire burden. It discloses the CDP mechanism but not behavioral implications of the action enum (especially click/type side effects), permission requirements, or limitations of the debugger-based approach.

    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 opening is concise and front-loaded with mechanism and purpose, but the description appears truncated ('Trad…') and omits structured details about actions and matching, making it no more than adequately compact.

    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?

    A 7-parameter tool with an action enum, nested match object, no output schema, and no annotations needs substantially more context. The agent learns what the tool is for but not how to invoke it correctly or interpret results.

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

    Parameters2/5

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

    Schema description coverage is only 29%, yet the description adds no parameter-level meaning for action, tabId, match, or text. It only contextualizes the resource, leaving the agent to infer how to construct a valid call.

    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 names a specific resource ('native accessibility tree') and mechanism ('chrome.debugger (CDP Accessibility domain)') with a clear use case ('canvas SPAs'). It lacks an explicit verb like 'read' or 'get', and it does not explicitly distinguish among the action variants, so it falls short of a 5.

    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 clearly scopes use to canvas-based SPAs such as Telegram web, which signals when DOM-oriented sibling tools may be ineffective. It does not mention exclusions or alternative tools, so it misses full routing guidance.

    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?

    The description adds useful behavioral context beyond the schema, notably '1 tick ≈ 80% viewport' and 'ref scrolls that element's container'. Since there are no annotations, these details matter. However, the description is truncated and leaves the behavior of other modes like y, intoView, and frameId partially unexplained.

    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 visible text is compact and front-loaded with the main action, but it is visibly truncated ('— or y:<p…'). This makes the structure incomplete and prevents it from being cleanly assessable as a finished, well-formed definition.

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

    Completeness2/5

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

    The tool has six optional parameters, no required parameters, no output schema, and no annotations, so the description carries a heavy burden. The description covers only a subset of usage modes, omits combination semantics, and is cut off, leaving an agent without enough information to reliably construct every valid call.

    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 only 33%, so the description has to compensate. It does by explaining the meaning of direction+amount as ticks, the approximate viewport proportion, and the ref parameter's container-scrolling behavior. It also begins to explain the y parameter, adding real semantic value over the bare schema.

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

    Purpose4/5

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

    The description clearly identifies the verb and resource by starting with 'Scroll:' and then demonstrating usage patterns. It distinguishes the tool's basic function, though it does not explicitly contrast with sibling tools 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 Guidelines2/5

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

    No guidance is given for when to use this tool versus alternatives such as navigate, explore_page, or click. The description is purely syntax-oriented and does not state selection criteria or excluded 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?

    With no annotations provided, the description carries the behavioral disclosure burden. It usefully discloses that the tool uses the React-safe native setter and fires input/change events, which is important for React apps. However, it does not mention the default clear-before-typing behavior, batch limits, or any side effects, leaving significant behavioral gaps that the schema only partially covers.

    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 concise and front-loaded with the primary action, and the technical mechanism is stated in as few words as possible. However, the phrase 'One field: ref+text…' is vague and reads like unfinished thought, which slightly reduces clarity. Overall, the length is appropriate but the structure could be improved with a less cryptic fragment.

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

    Completeness2/5

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

    Given no annotations and no output schema, the description is the main source of context, but it fails to explain batch mode through the 'fields' array, the purpose of frameId, or the default clearing behavior. The tool has multiple parameters and sibling tools with overlapping domains, yet the description leaves many operational details to be inferred. This is inadequate for a tool with this complexity.

    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 60%, covering fields, frameId, and clearFirst. The description adds a slight semantic hint that 'ref+text' are the core parameters for a single field, but it does not elaborate on their formats or relationships. It adds limited value beyond the schema and does not compensate for the 40% of parameters lacking descriptions.

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

    Purpose4/5

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

    The description clearly identifies the action ('Fill input(s)') and the resource ('input(s)'), with a specific technical mechanism ('React-safe native setter + input/change events') that distinguishes it from simpler approaches. The phrase 'One field: ref+text' is somewhat cryptic but does not obscure the core purpose. It differentiates from sibling tools like press_key and click, which target keyboard and mouse actions rather than text input.

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

    Usage Guidelines2/5

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

    The description gives no explicit guidance on when to use type_text versus alternatives such as form, press_key, or read. The 'One field: ref+text' hint implies a simple usage pattern but does not explain batch mode or when to prefer this tool over others. There are no exclusions or conditions specifying which scenario calls for this tool versus a sibling.

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

  • Behavior3/5

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

    With no annotations, the description carries the burden of behavioral disclosure. It usefully reveals that the tool returns buffered logs accumulated since the last call and enumerates captured log types. However, it does not explain default clearing behavior, whether calling resets the buffer, or what the response format looks like, leaving side effects partially opaque.

    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 compact sentence that front-loads the core function and details. It is reasonably sized, but the truncation at 'window.…' makes it feel incomplete and slightly unpolished, preventing a higher score.

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

    Completeness3/5

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

    For a tool with two optional parameters and no output schema, the description covers the basic purpose but omits important operational context: buffer lifecycle, default clear behavior, and when to prefer console_log over network_log. These gaps matter for an agent deciding whether and how to call it.

    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%, so the parameters clear and maxEntries are already documented in the schema. The description adds no additional semantic detail beyond what the schema provides, so it meets the baseline but does not exceed it.

    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 identifies the resource (browser console + JS errors) and the log types (console.log/warn/error/info/debug), making it distinct from sibling network_log. It clearly conveys that this tool retrieves captured console output since the previous call, though the truncated 'window.…' leaves part of the description incomplete.

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use this tool versus alternatives like network_log or evaluate. The phrase 'since last call' implies it is for inspecting console activity after browser actions, but there are no stated exclusions, prerequisites, or comparison to sibling tools.

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

  • Behavior3/5

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

    With no annotations, the description carries full responsibility for behavior. It does disclose a key trait ('without vision') and a timing behavior (re-resolve after re-render) plus a partial return shape ({found, tag, te…). However, it does not mention side effects, failure modes, or behavior for geometry/relation kinds, so transparency is incomplete.

    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 given text is concise and front-loaded with the core purpose. However, it clearly appears truncated mid-word ('te…'), which disrupts structure and completeness. A definition that ends abruptly cannot be fully evaluable as a polished, complete tool description.

    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?

    This tool has five parameters, a three-value enum, no output schema, and no annotations—so the description must compensate heavily. It only details the 'element' kind, omits geometry/relation behavior, and provides no return-format explanation beyond a fragment. The description is too incomplete for an agent to know how to call this tool for all advertised kinds, making contextual completeness inadequate.

    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 60%, so the schema documents kind, refA, and refB. The tool description adds meaning for the ref parameter in the element context (checking liveness, re-resolve after re-render) and illustrates the kind enum. But it does not explain selector or the geometry/relation parameter interactions at all, leaving some of the parameter space under-explained.

    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 opens with 'Element introspection without vision', which states a specific action on a specific resource and distinguishes it from visual tools like screenshot. It further clarifies the element kind by showing an example outcome (is ref alive? re-resolve after re-render → {found,tag,te…), though it only elaborates on the 'element' kind and is truncated. Overall, the core purpose is clear, but it could better differentiate among the three kinds (element, geometry, relation).

    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 phrase 'without vision' implies when to use this tool—when you need DOM/ref introspection rather than a screenshot—but it does not explicitly name alternatives or state when not to use it. The element example (re-resolve after re-render) gives a concrete use case. No direct comparison to sibling tools like evaluate or explore_page is provided, leaving selection partly to inference.

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

  • Behavior3/5

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

    With no annotations, the description carries the full transparency burden. It clearly discloses that the tool does not click and that it covers native and ARIA variants for dropdowns, which is useful behavioral information. It does not describe the return format, possible state changes, limitations, or what happens for the truncated 'tabs' and 'accordion' cases.

    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 and front-loaded with the core purpose, which is good. The enumeration by kind is efficient, but the description is truncated mid-phrase ('all tab pa…'), making the structure incomplete and reducing its usability as a reference.

    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?

    This is a tool with three parameters, no output schema, and no annotations, so the description must carry substantial context. It explains some behavior and the meaning of 'kind', but it omits output details, 'ref' semantics, and full coverage of the enum values, while being cut off. An agent cannot fully understand what this tool returns or how to safely invoke it in all cases.

    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 67%, so the schema covers 'kind' and 'frameId' but not 'ref'. The tool description adds valuable meaning for the 'kind' parameter by specifying 'all options, native + ARIA' for dropdowns and 'all tab panels' for tabs. However, it does not clarify 'ref' and the tabs part is cut off, so parameter guidance is incomplete.

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

    Purpose4/5

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

    The description states a specific verb ('Pre-extract') and resource ('hidden content') and emphasizes that it works 'WITHOUT clicking', which helps distinguish it from click-based tools. The breakdown by kind ('dropdown', 'tabs', 'accordion') adds concrete scope. However, the description is visibly truncated ('all tab pa…'), so the full range of behavior is not completely clear.

    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 phrase 'WITHOUT clicking' implies this tool is for extracting hidden content without triggering UI interactions, giving some usage context. It does not explicitly name sibling alternatives or state when not to use it, so the guidance is implied rather than explicit. Sibling tools like click, read, and screenshot exist, but the description does not contrast against them.

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

  • Behavior3/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It does disclose the core blocking behavior and the AND/OR semantics of conditions and events. However, it never states what happens on timeout (timeoutMs default 10000 implies a failure mode but it is not named), whether the operation is non-destructive, or how poll mode and event mode interact.

    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 one front-loaded sentence that leads with the action verb and packs both operating modes into the first clause. It is appropriately compact. The trailing ellipsis ('notLoad…') signals a truncated list rather than deliberate conciseness, which is a minor structural flaw.

    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?

    For a tool with 10 parameters, zero annotations, and no output schema, this description is substantially incomplete. It fails to cover event-mode values, the timeout/failure contract, and the semantics of selector and pendingDialogsGt. An agent cannot fully predict this tool's behavior from the description and schema alone.

    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 only 40%, so the description must compensate. It adds real meaning by explaining that urlContains, hasModal, hasCaptcha, and notLoading are conditions that are ANDed and polled — semantics the bare boolean/string schema fields do not convey. However, selector and pendingDialogsGt remain unexplained in both schema and description, and the event parameter's schema text is itself truncated.

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

    Purpose4/5

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

    The description uses a specific verb ('Block until') and names the resource: page conditions or page events. It enumerates concrete conditions (urlContains, hasModal, hasCaptcha) and states they are ANDed, which distinguishes this synchronization tool from action siblings like click, type_text, and navigate. However, the sentence ends truncated ('notLoad…'), leaving the full condition list unstated and the 'page event' branch vague.

    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 the usage context: use it when a subsequent action depends on a page reaching a condition or an event firing, and it correctly conveys that conditions combine with AND. But it gives no exclusions, names no alternative sibling (e.g., status or read for non-blocking state checks), and offers no guidance on choosing between poll mode and event mode.

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

  • Behavior3/5

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

    With no annotations, the description carries the full behavioral burden. It discloses that read requires clipboardRead permission and is best-effort, which is valuable. However, it does not mention potential side effects of copy, return behavior, or failure modes beyond the implied best-effort caveat.

    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 entire description is a single, compact sentence that front-loads the key distinctions between the two actions. There is no wasted wording, and the permission caveat is placed exactly where relevant.

    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 two-action tool, the description covers the action options and a key permission constraint. However, without an output schema, it does not state what a read action returns or what a copy action produces, leaving some ambiguity for an agent deciding whether the tool meets its need.

    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 description coverage is 0%, so the description must compensate. It explains the 'action' parameter by enumerating 'copy' and 'read' and maps 'text' to the copy action implicitly via 'action:"copy" (text)'. This adds meaningful semantics beyond the raw schema, though the 'text' parameter could be more explicitly tied to copy usage.

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

    Purpose4/5

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

    The description clearly identifies the tool as a system clipboard interface with two specific actions, copy and read. It conveys the core function with a specific resource, though it does not explicitly differentiate from the sibling tool named 'read'.

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

    Usage Guidelines2/5

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

    The description mentions the two actions and the permission requirement for read, but does not provide guidance on when to use this tool versus alternatives like the sibling 'read' tool or 'type_text'. No exclusions or selection conditions are stated.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full behavioral burden. It discloses the core action and modifier syntax, but omits context about event target (page vs OS), focus requirements, key release behavior, or side effects, which matters for an automation tool.

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

    Conciseness5/5

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

    The description is a single sentence with two illustrative examples; it is front-loaded with the action and parameter syntax, and every word earns its place. The ellipsis suggests the original may continue, but as provided it is appropriately sized and clear.

    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?

    With no annotations and no output schema, and four parameters (one undocumented), the description is too thin. It doesn't explain ref, doesn't give usage boundaries, and doesn't state what result or state change to expect, so an agent lacks some context needed for confident invocation.

    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 only 25%, so the description must compensate. It does explain key and modifiers via example calls, giving meaningful semantics to those parameters, but leaves ref entirely undocumented and relies on the schema for frameId. This partial compensation is adequate but incomplete.

    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 ('Press') and resource ('key(s)') and provides concrete examples (Ctrl+C, Shift+Tab) that make the operation unmistakable. It clearly distinguishes itself from sibling input tools like type_text and click through the notion of pressing key combinations.

    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 alternative guidance is given. The examples imply keyboard shortcut usage, but there is no mention of when press_key should be preferred over type_text or other input tools.

    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?

    The description discloses meaningful behavioral details: execution happens in the extension isolated world, it is async-aware, and the query mode avoids eval for CSP-proof reads. With no annotations provided, however, the description does not cover side effects, return value serialization, or error behavior, so it only partially carries the behavioral burden.

    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 information-dense sentence with the core action front-loaded and the two modes clearly separated by 'OR'. It earns a high score for efficiency, though the apparent truncation after 'ex...' keeps it from being fully polished.

    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?

    For a tool with no output schema, no annotations, and a rich nested query parameter, the description leaves out important operational details such as return format, whether script and query are mutually exclusive, and what happens on execution errors. It provides enough to start, but not enough for an agent to invoke it confidently in all intended scenarios.

    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 description adds meaning by framing 'script' as eval mode and 'query' as no-eval reads, which helps disambiguate the two top-level parameters. But schema coverage is only 50% and many nested query sub-properties (all, text, state, inputs, maxLen) are not explained in the description or schema. It partially compensates but not fully.

    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 names a specific action ('Run JS on the page') and explicitly identifies a second mode ('CSP-proof no-eval reads via query'). This makes the tool's dual purpose clear and distinguishes it from simpler read/inspect siblings. Even though the text appears truncated, the core purpose is unambiguous.

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

    Usage Guidelines3/5

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

    The description implies two usage contexts: arbitrary JS execution and no-eval query-based reads for CSP-constrained pages. However, it does not explicitly say when to prefer evaluate over siblings like read, inspect, or explore_page, nor does it state when not to use the tool. The guidance is implicit rather than actionable.

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

  • Behavior3/5

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

    With no annotations, the description carries the full burden of behavioral disclosure. It does reveal the diagnostic categories returned for 'page' and partially for 'bridge', but it is truncated, does not mention side effects, response format, or error behavior, and leaves the 'doctor' and 'downloads' kinds unexplained.

    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 front-loads the key concept and is compact, but it is truncated mid-phrase and does not form a complete, self-contained explanation. It is concise but at the cost of completeness.

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

    Completeness2/5

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

    Without an output schema or annotations, the description is the only source of behavioral and contextual information. The truncation leaves the 'bridge', 'doctor', and 'downloads' kinds unclear, and there is no guidance about return values or how this differs from sibling diagnostic tools.

    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?

    Although schema coverage is 100%, the description adds meaning beyond the enum labels by explaining what 'page' and 'bridge' diagnostics include. This helps an agent select the right kind, even though the description is incomplete for the remaining enum values.

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

    Purpose4/5

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

    The description clearly identifies this as a diagnostics tool for checking page state (URL, title, modal, captcha, loading, viewport) and bridge state. It is reasonably clear about what the tool reports, though it lacks a specific verb and does not explicitly distinguish itself from sibling diagnostic tools like inspect or network_log.

    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 gives a clear usage cue: call after actions for page diagnostics. However, it does not provide exclusions or mention when to prefer alternative tools, and the guidance appears to apply mainly to the 'page' kind rather than all enum values.

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

  • Behavior3/5

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

    With no annotations, the description carries the full burden. It does disclose the underlying API and highlights the absence of CDP/bot-detection surface, which is useful. But it does not describe the return format, what 'visible tab' means across states, or any permission or side-effect considerations.

    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 one focused sentence with no filler, and the parenthetical method/anti-detection detail earns its place. The trailing ellipsis is a minor structural distraction and slightly undermines the otherwise tight presentation.

    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 two-parameter tool, the description and schema give enough to invoke it, but the description does not state what the tool returns. Since there is no output schema, mentioning the return form would materially improve 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?

    The description adds no parameter-level meaning beyond the input schema. The schema already documents the 'quality' parameter and the 'format' enum values, and with 50% coverage the description does not need to carry the full load, but it also does not compensate for the undocumented half.

    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 names a specific verb and resource: capture the visible tab via chrome.tabs.captureVisibleTab. It also distinguishes the tool from CDP-based capture approaches by stating 'NO CDP, no bot-detection surface', making the tool's purpose clear and differentiable.

    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 this tool is the safe, non-CDP way to capture the visible tab, which is useful context for selection. However, it never explicitly states when to use this tool versus an alternative, nor does it name any sibling tool as a competing option.

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

  • Behavior3/5

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

    With no annotations, the description carries the full burden of behavioral disclosure. It does reveal the stateful two-call pattern and the log scope ('since last call'). However, it omits the default clearing behavior (clear=true) and gives no indication of the response shape. These are meaningful gaps for an agent predicting side effects.

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

    Conciseness5/5

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

    The description is extremely compact, front-loading the essential function in the first phrase and following with the usage pattern. No wasted words or repetition of schema information. It is appropriately sized for its purpose.

    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 tool has a non-obvious stateful flow, no output schema, and no annotations, so the description should clarify what each call returns and any side effects. It explains the call pattern but not the response format or default clearing behavior. The schema covers parameter semantics, yet an agent still faces ambiguity about the first call's result.

    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%, so the baseline is 3. Both parameters (clear and maxEntries) are already documented in the schema. The description adds general context about the log window but no parameter-specific meaning beyond what the schema provides.

    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 identifies the resource (fetch/XHR entries) and the core behavior (captured since last call). It distinguishes this tool from siblings like console_log and cookies by content type. However, it lacks an explicit verb such as 'get' or 'return', making the operation slightly implicit.

    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 parenthetical 'call once to start, again after interactions' provides a clear, actionable call pattern and indicates when the tool should be invoked relative to user interactions. It does not explicitly name alternatives or exclusions, but the context is sufficiently clear for an agent to know how 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?

    With no annotations, the description carries the burden of behavior disclosure. It adds the key behavioral trait of tab reuse ('reuses the tab — no tab spam') and the newTab switch. However, it does not disclose side effects like losing current page state or history, page load behavior, or potential errors. It is informative but not comprehensive.

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

    Conciseness4/5

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

    Two short sentences front-load the primary action and the critical behavioral distinction. The 'no tab spam' parenthetical adds motivation without bloat. The visible truncation prevents a perfect score, but the structure is appropriately compact and effective.

    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 2-parameter tool with no output schema and no annotations, the description covers the core action and the optional new-tab behavior. It omits details that an agent may need, such as whether the tool waits for page load, what it returns, and any side effects on the current page or browser history. Adequate but with 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?

    The schema only documents newTab (50% coverage), and the description reiterates that url is the navigation destination and makes newTab's behavior explicit. But it adds little about the url parameter beyond its literal name and does not specify URL format constraints. The description partially compensates for the schema gap but not fully.

    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?

    States a specific verb ('Navigate') and a specific resource ('the CURRENT tab to a URL'), and explicitly contrasts with opening a fresh tab via newTab:true. The phrasing clearly differentiates this from sibling tools like tabs or explore_page by focusing on direct URL navigation in the current tab.

    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 context by establishing the default behavior (reuses the current tab) and the alternative (newTab:true opens a fresh tab). While it gives conditional guidance for the newTab parameter, it does not explicitly mention when to prefer this tool over siblings such as explore_page or tabs.

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

  • Behavior3/5

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

    With no annotations provided, the description carries the burden of behavioral disclosure. It does disclose the destructive nature ('Force-close + recreate'), but it does not mention potential side effects such as loss of in-memory state or any impact on existing extension contexts. This is adequate but not fully transparent.

    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 entire description is one short, front-loaded sentence that immediately conveys the action and purpose. Every word earns its place; there is no filler or repetition.

    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 tool with one optional parameter fully documented in the schema, the description plus schema provide enough context to invoke it correctly. It could be slightly more complete by noting side effects, but the core purpose and mechanics are clear.

    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 schema already fully describes the only parameter (frameId, omit=top), so the description adds no additional parameter meaning. The baseline of 3 applies because schema coverage is 100%.

    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 imperative verb and resource: it force-closes and recreates the offscreen document. It also states the intended outcome—loading the current on-disk extension code—which distinguishes this from any sibling tool.

    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 phrase 'so the CURRENT on-disk extension code loads' clearly implies use after code changes when a reload of the offscreen document is needed. It does not explicitly list exclusions or alternatives, but none of the sibling tools appear to provide equivalent functionality.

    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?

    No annotations are provided, so the description carries the full burden. It discloses that the tool is informational rather than mutating by calling it a 'usage guide' and listing the tools it covers. It does not describe output format or exact interaction mechanics, but for a zero-parameter, read-only guidance tool the behavioral risk is low and the description is sufficiently transparent.

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

    Conciseness5/5

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

    The description is extremely concise and front-loaded: 'START HERE.' immediately communicates priority, and the rest names scope and examples in one short sentence. Every word earns its place; there is no filler.

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

    Completeness5/5

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

    Given the tool's simplicity (zero parameters, no output schema, no complex side effects), the description is complete. It tells the agent to start here, identifies the full scope as the 21 consolidated WebSense tools, and gives representative examples so the agent knows what kind of guidance to expect. Nothing critical is missing.

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

    Parameters4/5

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

    The tool has zero parameters and the schema already fully reflects that. The description adds no parameter-specific details, but none are needed. Per the rubric, a zero-parameter tool earns a baseline score of 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?

    The description clearly identifies the tool as a starting-point usage guide: 'START HERE. Full usage guide for the 21 consolidated WebSense tools.' It specifies the resource (the 21 WebSense tools) and distinguishes it from the operational sibling tools like explore, read, and click. The purpose is unambiguous and not a mere restatement of the name.

    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 tells the agent when to use this tool: 'START HERE.' This is strong, clear usage guidance relative to the operational sibling tools. It does not explicitly state when not to use it, but for a meta-guide tool the intended ordering is obvious.

    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

websense-mcp MCP server

Copy to your README.md:

Score Badge

websense-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

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

curl -X GET 'https://glama.ai/api/mcp/v1/servers/spliffspliff70-wq/websense-mcp'

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