Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation4/5

    Most tools have clearly distinct purposes, but there is some overlap among page content extraction tools (e.g., zen_page_text, zen_markdown, zen_readability) and command batching tools (zen_batch, zen_parallel, zen_broadcast). Detailed descriptions help differentiate them.

    Naming Consistency5/5

    All tools follow the 'zen_' prefix with snake_case naming, predominantly using a verb_noun pattern (e.g., zen_click, zen_navigate, zen_wait_for_element). A few noun-only names (zen_tabs, zen_windows) fit the resource-listing pattern. Consistency is excellent.

    Tool Count2/5

    With 104 tools, the count is very high for a browser automation server. Many tools are composite or highly specialized (e.g., zen_wp_html, zen_reload_extension), which adds complexity. A more streamlined set of ~30-50 core tools would improve coherence.

    Completeness5/5

    The tool set covers virtually all browser automation needs: navigation, element interaction, network capture, console logs, cookies, storage, tabs, windows, screenshots, and advanced features like keep-alive and sync barriers. No significant gaps are apparent.

  • Average 3.5/5 across 104 of 104 tools scored. Lowest: 2.1/5.

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

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

  • This repository includes a README.md file.

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

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

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

  • If you are the author, simply .

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

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

    Then . Browse examples.

  • 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

  • Behavior1/5

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

    Description gives only one action without disclosing behavior: what happens if the window doesn't exist, permissions needed, or whether it brings to front or requests focus. No annotations exist to supplement.

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

    Conciseness2/5

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

    The description is extremely brief (one sentence), but it sacrifices essential information for conciseness. It fails to provide parameter details or behavioral context.

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

    Completeness1/5

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

    Given the single required parameter and no output schema, the description is incomplete. It does not explain the parameter, return behavior, or error handling, making it insufficient for an agent to use correctly.

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

    Parameters1/5

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

    The input schema has one parameter 'window_id' with 0% description coverage. The description does not explain what 'window_id' is or how to obtain it, leaving the agent without necessary context.

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

    Purpose4/5

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

    The description clearly states the action: 'Bring a browser window to the foreground.' It specifies a verb and resource, distinguishing it from unrelated tools. However, it does not differentiate from siblings like 'zen_focus' or 'zen_wake_tab'.

    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 vs alternatives, such as 'zen_focus' or 'zen_switch_tab'. There is no mention of prerequisites or context.

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

  • Behavior1/5

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

    No annotations are provided, and the description does not disclose behavioral traits such as whether it is a no-op if there is no forward history, whether it causes any side effects, or if it requires certain permissions. This is a significant gap for a navigation action.

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

    Conciseness3/5

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

    The description is extremely short (4 words), which is concise but lacks necessary detail. While front-loaded, it does not earn its place fully as it omits critical context about parameters and behavior.

    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 the tool (1 optional param, no output schema), the description is incomplete. It fails to mention tab scoping, failure conditions, or relationship to 'zen_back'. Despite low complexity, more completeness is needed for reliable use.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not explain the tab_id parameter. The schema shows optional integer or null, but the description adds no meaning, leaving the agent to guess its purpose and impact.

    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 'Go forward in history,' which is a specific action. It distinguishes from sibling tool 'zen_back' which likely goes backward. However, it does not mention that it applies to a specific tab via the tab_id parameter, leaving slight ambiguity about scope.

    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 'zen_back' or other navigation tools. There is no mention of prerequisites (e.g., having visited a page before) 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?

    With no annotations, the description must fully disclose behavior. 'Synthetic' hints at programmatic dispatch, but no details on event triggering, page interactions, or side effects are provided.

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

    Conciseness3/5

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

    The description is very concise (one sentence, 8 words), but conciseness comes at the expense of necessary detail, making it borderline under-specified.

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

    Completeness2/5

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

    Given the lack of output schema, annotations, and parameter descriptions, the description omits important context such as return value, error handling, and behavioral nuances.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not explain any parameters. 'selector' and 'tab_id' have no added meaning beyond their names.

    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 is a synthetic double-click on a matched element. It is specific but does not differentiate from sibling click tools like zen_click or zen_trusted_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 on when to use this tool versus alternatives such as zen_click or zen_click_and_wait_navigation. The description provides no context about double-click-specific use cases.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of disclosing behavioral traits. It does not mention what happens if the element is not found, whether it scrolls to the element, or any side effects. This is insufficient for a tool that mutates focus state.

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

    Conciseness3/5

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

    The description is very short (5 words), which is concise but may be too terse. It lacks elaboration that would make it valuable, but it is not overly verbose. It earns its place but does not add much beyond the name.

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

    Completeness2/5

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

    Given the lack of output schema and 0% parameter coverage, the description is incomplete. It does not explain return behavior, focus management, or how it interacts with the page. A more detailed description is needed for a tool with two parameters and no structural aids.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds no meaning to the parameters. The 'selector' parameter is not explained (e.g., CSS syntax), and the optional 'tab_id' parameter lacks context for its purpose. The description fails to compensate for the lack of schema documentation.

    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: move focus to the matched element. It uses a specific verb and resource. However, it does not differentiate from similar sibling tools like zen_focus_window (which focuses a window) or zen_blur (which removes focus), making it slightly less clear in context.

    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 there any prerequisites or exclusions mentioned. The description lacks context for appropriate usage.

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

  • Behavior2/5

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

    With no annotations, the description must carry behavioral weight. It indicates a read operation (returning data) but does not disclose details like possible errors, return format, or effect of omitting tab_id.

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

    Conciseness3/5

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

    The description is very short and front-loaded, but it lacks structure and omits critical information. It is minimally concise but incomplete.

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

    Completeness1/5

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

    Given the tool has one parameter, no output schema, and no annotations, the description is vastly insufficient. It does not explain output behavior, error conditions, or tab_id usage.

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

    Parameters1/5

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

    Schema description coverage is 0%, so the description should compensate by explaining the optional tab_id parameter. It does not mention tab_id at all, adding no meaning beyond the schema.

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

    Purpose4/5

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

    The description clearly states the tool returns 'meta tags + link rels', which is a specific resource. It distinguishes from sibling tools like zen_dom that return full DOM or zen_page_info for page metadata, though it does not explicitly name alternatives.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus siblings such as zen_dom, zen_html, or zen_page_info. The description does not provide context for selection.

    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. It states 'Extract', implying a read operation, but does not disclose any behavioral traits such as whether it waits for page load, handles missing data, or requires permissions. The lack of detail leaves ambiguity about side effects and prerequisites.

    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 at one sentence, but it omits important context such as parameter usage and return format. While brevity is valued, the missing information reduces effectiveness. It could be improved by adding parameter and output details without excessive length.

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

    Completeness2/5

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

    Given no output schema, the description should explain what is returned (e.g., list of extracted objects, raw data). It provides no such information. The tool extracts structured data but does not clarify the return structure, leaving the agent uninformed about the response format.

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

    Parameters1/5

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

    Schema description coverage is 0%, meaning the schema provides no parameter descriptions. The description does not mention the tab_id parameter at all, failing to add any meaning beyond the schema. The parameter remains underdocumented.

    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 what the tool does: extract JSON-LD blocks, OpenGraph, and Twitter card meta. It uses specific verbs and resource types, making the purpose clear. However, it does not specify that it operates on a specific tab (implied by tab_id parameter) or differentiate from sibling tools like zen_meta.

    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. Sibling tools such as zen_meta and zen_dom serve related purposes, but the description gives no context for when to choose this tool over others. No when-not or alternative references are present.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden but only states the basic function. It fails to disclose behavior like whether it toggles or sets absolutely, if it waits for the element, or what happens on failure.

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

    Conciseness4/5

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

    The description is a single concise sentence that conveys the core purpose without unnecessary words. It is front-loaded but could benefit from a brief structure to separate purpose from usage.

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

    Completeness2/5

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

    Given the tool's complexity (3 parameters, no output schema), the description is too minimal. It lacks information on return values, error conditions, or side effects, making it incomplete for an agent to use reliably.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds no explanation for the three parameters (selector, checked, tab_id). The agent gets no extra meaning beyond the schema's type and default 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 states the action ('Set') and the target ('checkbox or radio's checked state'), effectively distinguishing it from siblings like zen_click or zen_select_option. However, it could be more precise by specifying 'HTML element'.

    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. It does not mention exclusions or context, leaving the agent to infer usage without explicit when-to or when-not-to advice.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It only states 'Delete' without disclosing whether the action is permanent, reversible, or affects other resources. Minimal behavioral context.

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

    Conciseness3/5

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

    Single sentence with no waste, but could be more informative without becoming verbose. Adequate conciseness, though at the cost of minimal content.

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

    Completeness2/5

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

    Given no output schema, one parameter, and no annotations, the description is too sparse. It should clarify the scope (e.g., working directory), permanence, and whether the session must be inactive before deletion.

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

    Parameters2/5

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

    Schema description coverage is 0%, and the description does not explain the 'name' parameter beyond implying it identifies a file. No format, constraints, or examples are given, leaving the agent to infer meaning from context alone.

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

    Purpose4/5

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

    Description clearly states verb 'Delete' and resource 'saved session file', making purpose immediately obvious. It implicitly distinguishes from related siblings like zen_save_session and zen_load_session, but does not explicitly differentiate them.

    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 zen_save_session or zen_load_session. No prerequisites, context, or exclusions provided, leaving the agent without decision support.

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

  • Behavior2/5

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

    With no annotations, the description is the only source but fails to disclose key behavioral traits such as whether elements need to be draggable, the simulation of drag events sequence, or scroll handling. Only 'synthetic' and 'HTML5 drag events' are mentioned.

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

    Conciseness3/5

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

    The description is a single concise sentence but lacks structure or additional details. It is front-loaded but arguably too brief to be effective.

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

    Completeness1/5

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

    Given the three parameters and no output schema or annotations, the description is severely incomplete. It omits critical context like selector interpretation, tab context, and return value, leaving the agent underinformed.

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

    Parameters1/5

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

    The description does not add any meaning to the parameters (from_selector, to_selector, tab_id) beyond what the schema provides. With 0% coverage, it fails to explain that selectors are CSS selectors or that tab_id is optional.

    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 performs a synthetic drag-and-drop operation from one element to another, using HTML5 drag events. It uniquely identifies the tool among siblings like zen_click and zen_hover.

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

    Usage Guidelines2/5

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

    No guidance is given on when to use this tool versus alternatives like zen_hover or zen_click. There is no mention of prerequisites or preferred contexts.

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

  • Behavior2/5

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

    No annotations are provided, so the description must convey behavioral traits. It states the return value but doesn't disclose whether the tool is idempotent, requires a focused tab, or handles null tab_id (e.g., defaults to current tab).

    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. It is efficient but could benefit from a brief elaboration on parameter behavior.

    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 optional parameter, no output schema, and no annotations, the description is incomplete. It does not specify the return format, default behavior for null tab_id, or potential errors.

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

    Parameters1/5

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

    The only parameter (tab_id) has no description in the schema (0% coverage) and is not mentioned in the tool description. The agent gains no additional meaning beyond the parameter name and type.

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

    Purpose4/5

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

    The description clearly states it returns the current zoom factor, which is specific and uses a verb+resource structure. However, it does not explicitly differentiate from sibling tool 'zen_set_zoom', though the opposite actions make it distinguishable.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs alternatives like 'zen_set_zoom'. The description provides no context for selecting this tool over others.

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

  • Behavior2/5

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

    The description does not disclose behavioral traits such as whether the action toggles or sets the mute state, what happens when tab_id is null, or any side effects. With no annotations, the description carries full burden but fails to provide critical behavioral context.

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

    Conciseness3/5

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

    The description is concise, consisting of a single sentence, but it is too brief to be maximally helpful. It is appropriately front-loaded but sacrifices substance for brevity, earning a middle score.

    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 absence of annotations, no output schema, and two parameters, the description is incomplete. It omits essential context like default behavior for null tab_id, the meaning of the mute state, and return values (e.g., success indication). This is insufficient for reliable agent invocation.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must add meaning to parameters. It does not explain that 'muted' likely sets the mute state (true=muted, false=unmuted) or that 'tab_id' defaults to the current tab when null. This lack of detail hinders correct parameter 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 states the verb 'Mute or unmute' and the resource 'tab', making the purpose obvious. However, it does not specify what 'mute' means (e.g., audio, notifications), which could lead to ambiguity, especially compared to sibling tools that may affect tab state differently.

    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 this tool versus alternatives like zen_close_tab, zen_reload_tab, or zen_detach_tab. No conditions for appropriate use or exclusions are provided, leaving the agent to infer context from the tool name alone.

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

  • Behavior2/5

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

    No annotations provided and description does not disclose behavioral traits such as side effects, permissions required, or whether it's read-only. The agent has no information beyond the basic lookup purpose.

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

    Conciseness3/5

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

    Single sentence, no wasted words, but lacks structure and could be expanded for clarity without becoming verbose.

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

    Completeness2/5

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

    Given no output schema, no annotations, and sparse parameter documentation, the description fails to provide sufficient context for correct usage. Missing return value, error conditions, and input constraints.

    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?

    Only parameter 'name' has no description in schema (0% coverage) and the description adds no details about its meaning or format, leaving the agent to infer from the tool name.

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

    Purpose4/5

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

    Description specifies the action 'look up' and resource 'tab id for a tag set', distinguishing it from siblings like zen_list_tags or zen_tag_tab. However, it could be clearer about the relationship between tag set and tab id.

    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 over alternatives like zen_tag_tab or zen_list_tags. Lacks context on prerequisites or typical scenarios.

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

  • Behavior2/5

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

    No annotations are provided, so the description must cover behavioral aspects. It implies blocking until match or timeout but does not specify timeout behavior, return values, or what happens on tab closure/navigation.

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

    Conciseness3/5

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

    The description is a single sentence, very concise and front-loaded. However, it is too brief, sacrificing necessary detail for brevity.

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

    Completeness1/5

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

    Given the tool complexity (3 parameters, no output schema, no annotations), the description is severely incomplete. It lacks return value info, error conditions, and edge cases, failing to provide adequate context for an agent.

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

    Parameters1/5

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

    With 0% schema description coverage, the description should explain parameters. It does not mention that 'pattern' is a JS regex, 'timeout' is in milliseconds, or that 'tab_id' defaults to the current tab. No parameter semantics are added.

    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 the tab's URL to match a JS regex pattern. It uses a specific verb ('Wait') and resource ('tab's URL'), and is distinct from sibling tools like zen_wait_for_element or zen_wait_for_title.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives, nor any when-not-to-use or prerequisite conditions. It is limited to a single sentence stating the basic action.

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

  • Behavior2/5

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

    No annotations are provided, and the description only states the output without disclosing behavioral traits like side effects, authorization needs, or behavior when tab_id is null. It lacks transparency beyond the basic function.

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

    Conciseness3/5

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

    The description is a single sentence that is front-loaded with the main purpose. It is concise but could be improved by adding parameter explanation without becoming verbose.

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

    Completeness2/5

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

    Given the tool is simple with one optional parameter and no output schema, the description should at least explain the parameter's meaning and default behavior. It fails to provide enough context for correct usage.

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

    Parameters1/5

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

    Schema coverage is 0% for the single parameter 'tab_id' (no description in schema). The tool description does not explain what the parameter does or its default behavior (e.g., current tab if null).

    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 it returns document/viewport sizes, scroll position, and devicePixelRatio. It uses specific verbs and resource names, distinguishing it from siblings like 'zen_bounds' which likely return element bounds.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool vs alternatives. It does not mention any prerequisites, context, or exclusions.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden for behavioral disclosure. It fails to mention side effects (e.g., tab moves to pinned section), idempotency, or handling of default parameters (e.g., what happens when tab_id is null).

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

    Conciseness3/5

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

    The description is extremely short (4 words), which is concise but borderline under-specified. It earns its place by stating the action, but lacks depth for a non-trivial tool.

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

    Completeness2/5

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

    Given the tool's simplicity and lack of output schema, the description should at least mention default behavior (e.g., 'pins current tab if no tab_id given') and the toggle nature. It does not, leaving gaps for the agent.

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

    Parameters1/5

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

    Schema description coverage is 0%, but the description adds no information about the parameters (pinned and tab_id). It does not explain their meaning, default values, or how they affect behavior.

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

    Purpose5/5

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

    The description 'Pin or unpin a tab' uses a specific verb and resource, clearly distinguishing this tool from sibling tools like zen_close_tab or zen_mute_tab that perform different tab operations.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use pinning versus alternatives, nor does it mention any prerequisites or context for when pinning is appropriate.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden. It only says 'return' implying a state change, but does not disclose side effects (e.g., what happens to the tab, error handling, or whether the pool is modified). Behavioral transparency is insufficient.

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

    Conciseness4/5

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

    The description is a single concise sentence, front-loaded with the action. It is appropriately sized but lacks structure or additional detail. Every word is necessary, but it doesn't provide depth.

    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, no output schema, and one parameter, the description is incomplete. It does not cover error cases, prerequisites (e.g., tab must be acquired), or post-conditions. More context is needed for effective use.

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

    Parameters2/5

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

    Schema coverage is 0%, so the description must compensate but only mentions 'a tab' without explaining the 'tab_id' parameter's role, format, or constraints. It adds minimal meaning beyond the schema.

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

    Purpose4/5

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

    The description states 'Return a tab to the pool for reuse,' which clarifies the action (return) and resource (tab to pool). It implicitly distinguishes from sibling 'zen_pool_acquire' which likely acquires a tab. However, it does not explicitly differentiate from other sibling tools.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives, such as when to release a tab or prerequisites like having acquired a tab first. No explicit context or exclusions are given.

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

  • Behavior2/5

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

    No annotations, so description carries full burden. It only states the wait condition but does not explain how 'network resources' are defined, whether it awaits all or specific types, side effects, or what triggers completion. Minimal transparency.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise but lacks structure. It could be expanded with minimal additional context without becoming verbose.

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

    Completeness2/5

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

    The description, combined with schema and no output schema, leaves many gaps: no return value, error conditions, or practical usage hints. For a 3-parameter tool, more context is needed.

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

    Parameters1/5

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

    With 0% schema description coverage, the description must explain parameters but only mentions idle_ms implicitly. Parameters timeout and tab_id are not described, and idle_ms is only referenced in the description without clarifying its role in the wait condition.

    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 idle based on a threshold of no new network resources. It distinguishes from other wait tools like zen_wait_for_element (DOM) and zen_wait_for_url (URL). The verb 'wait' and resource 'network idle' are specific.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool vs alternatives such as zen_capture_network or other wait tools. No context about prerequisites (e.g., after navigation) or typical scenarios.

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

  • Behavior2/5

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

    No annotations are present, so the description must carry the burden of behavioral disclosure. It neither mentions side effects (e.g., clearing forward history), error conditions (no history), nor any authorization needs. The simple analogy to a browser button is implicit but insufficient.

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

    Conciseness4/5

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

    The description is short, front-loaded, and uses common terminology. However, it omits parameter details, which would be valuable in a single additional phrase.

    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 low complexity (1 optional param, no output schema), the description should at least explain the parameter and provide usage context. It fails to do so, leaving a significant gap for correct invocation.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not mention the only parameter (tab_id). The agent receives no help understanding that the parameter specifies which tab to navigate back in, its default behavior (null likely means current tab), or allowed values.

    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 ('Go back in history') and compares it to a browser back button, making the purpose unmistakable. The sibling tools include zen_forward and zen_navigate, which are distinct, so this tool is well-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?

    No guidance is provided on when to use this tool versus alternatives like zen_forward or zen_navigate. It lacks context about prerequisites, such as having history, or exclusion criteria.

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

  • Behavior2/5

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

    No annotations are provided, so the description must carry the full burden. It states the tool returns computed CSS, implying a read operation, but does not disclose any behavioral traits such as whether it requires the element to be visible, what happens on error, or if the result is a snapshot. The mention of a 'layout-relevant set' is vague and lacks detail.

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

    Conciseness5/5

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

    The description is a single, front-loaded sentence that communicates the core purpose and default behavior without any unnecessary words. It earns its place with direct information.

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

    Completeness2/5

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

    Given the tool has 3 parameters with no schema descriptions, no output schema, and no annotations, the description is insufficient. It does not specify return format, error scenarios, or how the default property set is defined. The agent lacks enough context to use the tool reliably.

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

    Parameters2/5

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

    The input schema has 0% description coverage, so the description must compensate. The phrase 'Defaults to the layout-relevant set' hints that the 'properties' parameter is optional and a default set is used when omitted. However, it fails to explain the 'selector' parameter (e.g., what format? CSS selector?), or the 'tab_id' parameter (e.g., which tab context?). This leaves significant interpretation gaps.

    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 'Return computed CSS for an element' with a specific verb and resource. It mentions the default behavior ('Defaults to the layout-relevant set'), but does not elaborate on what that set includes, which slightly reduces clarity. The tool name 'zen_computed_style' is descriptive, and there are no sibling tools with overlapping names, so differentiation is not a concern.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It does not mention when not to use it, nor does it reference any related tools (e.g., zen_dom or zen_html for raw HTML/DOM data). This omission leaves the agent without context for selection.

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

  • Behavior2/5

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

    No annotations are provided, so the description must carry the burden. It states the tab gets its own new window, but it does not clarify whether the original tab is closed, if the tab URL is preserved, or any edge cases. The behavior is only partially disclosed.

    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 sentence with no wasted words. It is front-loaded with the key action. However, it may be too brief, sacrificing completeness for brevity.

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

    Completeness2/5

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

    Given the simple tool (one parameter, no output schema), the description still fails to cover important context like what happens to the original tab, window behavior, and error conditions. It is not fully complete for the agent to use confidently.

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

    Parameters1/5

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

    Schema description coverage is 0%, but the description adds no information about the tab_id parameter. The agent must infer its meaning from the tool name alone. No validation rules, format hints, or examples are given.

    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 the specific verb 'pop' and clearly identifies the resource 'tab' and the action 'out into its own new window'. It distinguishes from sibling tools like zen_close_tab, zen_duplicate_tab, and zen_new_tab by describing a unique operation (moving to a new window).

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, conditions, or when not to use it. The agent receives no context for decision-making.

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

  • Behavior2/5

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

    With no annotations, the description must fully disclose behavior. It only states 'list' (a read operation), but omits details like whether it returns a list or array, performance impact, or any side effects. The description adds minimal behavioral context.

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

    Conciseness4/5

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

    The description is a single, efficient sentence that conveys the core action and outputs. It is front-loaded with the verb 'List'. However, it could include more parameter detail without being overly verbose.

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

    Completeness2/5

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

    Given no output schema, the description should explain the return structure more fully. It mentions specific flags but not the format (e.g., list of objects). The parameter is also unspecified, leaving gaps for a simple tool.

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

    Parameters1/5

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

    The single parameter 'tab_id' is not explained in the description. Since schema description coverage is 0%, the description should clarify its purpose (e.g., which tab to inspect). It adds no value beyond the schema definition.

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

    Purpose5/5

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

    The description states 'List all iframes' with specific output fields (src, same-origin/accessible flags), clearly identifying the verb and resource. It distinguishes itself from sibling tools by specifying the iframe focus, which is unique among the listed tools.

    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 'zen_dom' or 'zen_html'. There is no indication of prerequisites, contexts, 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?

    No annotations are provided, so the description carries full burden. It reveals a 80KB size cap but does not explain what happens if exceeded, whether formatting is preserved, or any side effects. Critical behavioral details are missing.

    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 very concise with one sentence, but lacks structure such as parameter explanations or usage notes. It is not overly verbose, but could be improved with minimal expansion.

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

    Completeness2/5

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

    Given the tool's moderate complexity (conversion with optional parameters), the description is incomplete. It omits output format details, error handling, and parameter semantics, and there is no output schema to compensate.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description fails to explain the meaning or expected format of the 'selector' and 'tab_id' parameters. The phrase 'selector subtree' hints at usage but does not specify syntax or defaults.

    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 converts a page or selector subtree to Markdown, with a specific size cap of 80KB. This distinguishes it from sibling tools like zen_html or zen_page_text that output other formats.

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

    Usage Guidelines2/5

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

    The description provides no explicit guidance on when to use this tool versus alternatives, nor does it mention limitations or exclusions. The only contextual hint is the selector vs page distinction.

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

  • Behavior2/5

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

    No annotations are provided, so the description bears full responsibility for behavioral disclosure. It states the tool waits for a condition but omits details on polling frequency, timeout behavior (error vs. fallback), or return value. The mention of 'JS regex pattern' adds minimal context, but overall transparency is low.

    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 sentence that directly conveys the core function. It is front-loaded and contains no extraneous words. However, its brevity sacrifices important parameter and behavioral details, which limits its 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?

    Given the tool has 3 parameters, no output schema, and no annotations, the description is insufficient for an agent to use it correctly. It lacks explanation of parameters, return values, timeout effects, and tab identification. The description fails to provide a complete operational picture.

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

    Parameters1/5

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

    Schema description coverage is 0% (no parameter descriptions in schema), and the tool description does not explain any of the three parameters (pattern, timeout, tab_id). It does not add meaning beyond what is evident from the schema structure. This severely impairs proper parameter usage.

    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: wait for document.title to match a JS regex pattern. It specifies the verb (wait), the resource (document.title), and the condition (regex match). Among sibling tools with similar names (e.g., zen_wait_for_url, zen_wait_for_element), this description uniquely identifies its target.

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

    Usage Guidelines2/5

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

    The description provides no explicit guidance on when to use this tool versus alternatives like zen_wait_for_url or zen_wait_for_element. It does not mention when not to use it or any prerequisites. The agent must infer usage solely from the purpose statement.

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

  • Behavior2/5

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

    The description does not explain behavioral aspects such as the effect of the tab_id parameter, whether it operates on the current tab by default, or any limitations. It only describes the return value.

    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 sentence, concise and front-loaded, but omits important details about the parameter. It is efficient but incomplete.

    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 explains the return content but does not specify the output format or clarify the parameter's role. Given the lack of an output schema and annotations, it is somewhat incomplete.

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

    Parameters1/5

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

    The description provides no information about the tab_id parameter. With 0% schema description coverage, the description fails to compensate, leaving the agent unclear about how to use the parameter.

    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 returns every <img> element with src, alt, and natural dimensions, specifying the resource and verb. It distinguishes from sibling tools like zen_dom, zen_html, and zen_links.

    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. The description does not mention context, exclusions, or comparisons with other tools.

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

  • Behavior2/5

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

    No annotations provided, so description must disclose behavior. It only states 'Remove a tag.' without explaining what happens if the tag doesn't exist, side effects, or whether it's idempotent.

    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?

    Extremely concise (one sentence), but this brevity comes at the cost of clarity. It is front-loaded but lacks necessary detail.

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

    Completeness2/5

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

    Given the tool has one parameter, no output schema, and no annotations, the description is incomplete. It does not cover return values, success/failure conditions, or error handling.

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

    Parameters2/5

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

    The only parameter 'name' is required but not explained. Schema description coverage is 0%, and the description adds nothing about what 'name' refers to (e.g., tag name, tab identifier).

    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 'Remove a tag.' clearly states the action and the resource (tag). It is specific and distinguishes from sibling tools like zen_tag_tab (add tag) and zen_list_tags.

    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, no context on prerequisites or when not to use it. The sibling zen_tag_tab exists but is not mentioned.

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

  • Behavior2/5

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

    No annotations provided, so description must disclose behavior. It only states 'Click an element' without explaining error handling (e.g., element not found, coordinates out of bounds), return behavior, or side effects like navigation triggers.

    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 short (5 lines), purpose front-loaded, parameter list follows. No wasted words, though could be slightly more efficient if it merged the purpose with the fallback logic.

    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 4 params, no output schema, and no annotations, the description lacks key details: return value, interaction with page lifecycle (does it wait for element?), error scenarios. Insufficient for full understanding.

    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?

    Description adds meaning beyond schema's minimal titles: explains that x/y are used only if selector is empty, provides CSS selector examples, and clarifies tab_id defaults to active tab. This compensates for 0% 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?

    States verb 'Click' and resource 'element on the page', with two modalities by CSS selector or coordinates. Distinguishes from sibling click-like tools (e.g., double_click, trusted_click) by option of coordinate-based clicking, but doesn't explicitly differentiate from all.

    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 vs alternatives (e.g., double_click, hover) or when not to use it. Lacks prerequisites or context like element visibility requirements.

    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 full burden. It only states the basic action and fallback, but does not disclose side effects (e.g., focus loss), error conditions, or whether it modifies state beyond firing a blur event.

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

    Conciseness5/5

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

    The description is a single, front-loaded sentence with no wasted words. It efficiently communicates the core functionality.

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

    Completeness2/5

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

    The tool has no output schema, no annotations, and the description is minimal. For an AI agent, more context is needed: return value (void/boolean?), errors, and when to use it. The description is insufficient for a straightforward action like blur.

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

    Parameters2/5

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

    Schema coverage is 0%, so description must compensate. It adds meaning for 'selector' (fallback to activeElement if null) but does not explain 'tab_id' at all. The description provides some value but is 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 clearly states the action (blur) and target (an element or document.activeElement as fallback). It is specific and distinguishes from sibling tools like zen_focus.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives (e.g., zen_focus, zen_click). The description does not mention any preconditions or exclusions.

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

  • Behavior2/5

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

    No annotations provided, so description must bear full burden. It does not disclose side effects (e.g., whether original tab remains, what happens if tab_id is null) or behavior beyond duplication.

    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?

    Extremely concise two sentences, front-loaded with action. However, it sacrifices necessary details for brevity.

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

    Completeness3/5

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

    For a simple tool with one optional parameter and no output schema, the description is minimally adequate but lacks usage context and behavioral details.

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

    Parameters2/5

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

    Schema description coverage is 0%. Description does not mention the tab_id parameter at all, failing to add 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?

    Description clearly states action 'duplicate' and resource 'tab', and mentions return value 'new tab id'. Distinguishes from sibling tools like zen_close_tab, zen_new_tab.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs alternatives like zen_new_tab or zen_move_tab. Does not specify prerequisites or context.

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

  • Behavior2/5

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

    No annotations are provided, leaving the description to convey behavioral traits. It states that the tool 'execute JavaScript' but does not disclose that it can mutate page state, trigger events, or run with page privileges. The lack of warnings about side effects or error handling is a significant gap.

    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: two sentences clarify purpose and parameters with an example. No unnecessary words. Front-loaded with the main action. This is an efficient and clear presentation.

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

    Completeness2/5

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

    Given the lack of output schema and the complexity of JavaScript execution, the description omits critical details: what the tool returns (the result of the code?), how errors are reported, whether async code is supported, or if there are restrictions (e.g., no access to certain globals). The agent has insufficient information to use the tool reliably.

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

    Parameters2/5

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

    Schema description coverage is 0%. The description only provides a single example for the 'code' parameter and restates the default for 'tab_id' from the schema. It does not explain expected code format (e.g., synchronous vs async), return value handling, or error behavior, leaving the agent without crucial usage details.

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

    Purpose5/5

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

    Description clearly states the tool executes JavaScript in the current page context, which is a specific and well-defined action. The verb 'execute' and resource 'current page' are precise. No sibling tool offers arbitrary JS execution, so it is easily distinguished.

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

    Usage Guidelines2/5

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

    The description provides an example but offers no guidance on when to use this tool versus siblings like zen_click or zen_fill. It does not mention scenarios where direct JS execution is preferable over higher-level actions, nor does it warn about potential side effects.

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

  • Behavior2/5

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

    No annotations are provided, so the description must handle behavioral disclosure, but it only states the tool lists sessions. It does not reveal any behavioral traits such as whether it is read-only, if it requires an active session, or what happens when no sessions exist.

    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: one sentence with no wasted words. It is front-loaded and efficient.

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

    Completeness3/5

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

    Given no output schema, the description should clarify the return format and metadata details, but it only mentions 'with their metadata.' It minimally covers the tool's function but lacks depth for complete understanding.

    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?

    There are no parameters, and schema description coverage is 100%, so baseline is 4. However, the description could add value by explaining the output or what 'metadata' includes, but it does not.

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

    Purpose4/5

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

    The description clearly states the tool lists saved sessions with metadata, using a specific verb and resource. It distinguishes from sibling tools like save/load/delete, though it could be more precise about what constitutes a session.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives like zen_list_tags or prerequisites (e.g., sessions must exist). The description provides no context for appropriate usage.

    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 mentions 'in-memory ring buffer', which implies non-persistent storage and potentially limited capacity. However, it does not disclose whether the operation is read-only, rate limits, or data freshness. With no annotations, the description provides some but not full transparency.

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

    Conciseness5/5

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

    The description is a single, focused sentence with nine words, front-loading the core purpose. No unnecessary information.

    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 output schema and zero parameter description coverage, the description lacks essential context. It does not explain return format, date format for 'since', or log line structure, leaving significant gaps for an agent.

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

    Parameters1/5

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

    Schema description coverage is 0%, yet the description provides no explanation of parameters 'limit' or 'since'. The agent must infer meaning solely from parameter names, which lacks clarity for 'since'.

    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 specifies the verb 'Return' and the resource 'recent bridge log lines', and adds context 'in-memory ring buffer'. This distinguishes it from sibling tools like zen_console_logs or zen_audit.

    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. The description implies use for debugging bridge logs but does not mention exclusions or alternative tools.

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

  • Behavior2/5

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

    With no annotations, the description must fully disclose behavior. It only states that a new tab is opened and an optional URL can be provided. Missing details: whether the new tab becomes active, what happens if the URL is invalid, whether it requires user permissions, or any side effects on current tabs. This is minimal behavioral disclosure.

    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 very concise at two sentences, using a clear 'Args:' structure for parameter documentation. Every element is useful, though it could be slightly more structured (e.g., bullet points) to improve readability. No wasted words.

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

    Completeness3/5

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

    For a tool with one optional parameter and no output schema, the description covers the basic functionality adequately. However, it lacks information about what the tool returns (e.g., tab ID), edge cases (e.g., max tabs limit), and how it integrates with other tab management tools. It is minimally complete but leaves gaps.

    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 schema coverage is 0%, meaning the schema provides no parameter descriptions. The description compensates by explaining the 'url' parameter: 'URL to open in the new tab (default: blank page)'. This adds clear meaning and context beyond the schema's property name and type.

    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 the action clearly: 'Open a new browser tab.' The verb 'open' and resource 'new browser tab' are specific. However, it does not differentiate from sibling tools like zen_duplicate_tab or zen_create_window, which also create new tabs, missing an opportunity to clarify uniqueness.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives such as zen_navigate, zen_duplicate_tab, or zen_create_window. The description lacks context for decision-making, leaving the agent to guess the appropriate tool.

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

  • Behavior2/5

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

    No annotations provided, so description carries full burden. Discloses typical range and meaning of 1.0, but does not explain effects of tab_id (null vs. integer), persistence, or scope. Minimal behavioral context.

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

    Conciseness5/5

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

    Single sentence with all essential information. No redundant words. Efficient and front-loaded.

    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 tool with one required parameter, but lacks detail on tab_id behavior and scope. Given no output schema, could be more 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 0% with no parameter descriptions. Description adds meaning for 'factor' (range and default meaning) but does not explain 'tab_id' at all. Partial improvement over schema alone.

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

    Purpose4/5

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

    Clearly states the action 'Set zoom factor' and the resource. Distinguishes from sibling 'zen_get_zoom' but not from other set tools. Lacks explicit differentiation.

    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 or alternatives. Only implies usage for changing zoom, but no context or exclusions.

    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 are missing, so the description bears full responsibility. It correctly describes the output (bounding rect and viewport/page sizes) but does not mention any side effects, permissions, or constraints. For a read-only operation, this is acceptable 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, front-loaded sentence with no wasted words. Efficiently conveys the core functionality.

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

    Completeness3/5

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

    For a simple tool with two parameters and no output schema, the description is adequate but incomplete. It omits return format, potential errors, and edge cases like missing elements.

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

    Parameters1/5

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

    Schema coverage is 0% with no parameter descriptions. The tool description adds no meaning to 'selector' or 'tab_id' beyond the schema; it does not explain what the selector refers to or how tab_id is used.

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

    Purpose5/5

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

    Description clearly states the tool returns getBoundingClientRect plus viewport/page sizes for an element, using a specific verb and resource. This distinguishes it from sibling DOM tools like zen_dom or zen_html.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives such as zen_dom or zen_computed_style. The description does not specify any conditions or exclusions.

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

  • Behavior2/5

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

    With no annotations, the description must disclose behavior. It states 'Close a browser tab,' which implies a destructive action, but does not mention what happens if the tab is the last one, error handling for invalid IDs, or any side effects. Minimal disclosure beyond the verb.

    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 very short and to the point, with the main action in the first line and an Args section. No redundant text; every sentence earns its place.

    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 one-parameter tool, the description covers the basic action and parameter sourcing. However, it lacks information on error behavior (e.g., what if tab_id is invalid) or confirmation. Adequate but could be 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?

    Schema coverage is 0%, so the description must compensate. It adds value by specifying that the tab_id comes from zen_tabs, providing a clear source for the parameter. This is helpful context beyond the schema's type and requirement.

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

    Purpose4/5

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

    The description clearly states it closes a browser tab by ID, using a specific verb and resource. However, it does not differentiate from sibling tools like zen_detach_tab or zen_close_window, which are similar tab management operations.

    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 where to get tab IDs (from zen_tabs), but provides no guidance on when to use this tool versus alternatives like zen_detach_tab or zen_close_window. No explicit when-not or context is given.

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

  • Behavior2/5

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

    With no annotations, the description should disclose behavioral traits (e.g., side effects, permissions). It only lists operations without explaining what happens during download, list (return format), or cancel (how to identify). Minimal transparency.

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

    Conciseness5/5

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

    Extremely concise: three lines plus argument list. Front-loaded with 'Downloads operations.' Every sentence adds value without redundancy.

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

    Completeness2/5

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

    Given no output schema and 0% schema coverage, the description is incomplete. It lacks details on return values for list/cancel, how to specify download targets, and error handling. An agent would be underinformed for correct 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 coverage is 0%, so description compensates partially. It explains op values ('download', 'list', 'cancel'), url context ('For download, the URL to fetch'), and query context ('For list, a downloads.search query dict'). However, filename is only 'Optional output filename' without constraints.

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

    Purpose5/5

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

    The description clearly states 'Downloads operations' and lists three specific operations (download, list, cancel) with parameter mappings. Among many zen_* sibling tools, this is the only one dedicated to downloads, making its purpose distinct.

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

    Usage Guidelines2/5

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

    No guidance is given on when to use this tool versus alternatives like zen_cache or zen_intercept. The description does not specify scenarios 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?

    With no annotations provided, the description carries the full burden. It states it returns anchors, implying a read-only operation, but does not explicitly confirm non-destructiveness or disclose potential side effects. The 'crawler primitive' hint suggests safety, but more explicit behavioral traits (e.g., does not navigate, no state changes) would improve transparency.

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

    Conciseness4/5

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

    The description is very concise (two sentences) and front-loaded with the action. However, it could restructure to include parameter explanations without becoming verbose. The current brevity lacks essential details, so conciseness comes 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?

    Given no output schema and two undocumented parameters, the description is incomplete. It provides no return format details (e.g., array structure), error conditions, or behavior for empty results. The usage hint is present, but crucial invocation context is missing.

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

    Parameters1/5

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

    Schema description coverage is 0%, yet the description completely ignores both parameters ('internal_only' and 'tab_id'). An agent cannot infer what 'internal_only' filters or which tab 'tab_id' targets. This is a critical gap that severely hampers correct invocation.

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

    Purpose5/5

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

    The description clearly states 'Return every anchor with href + text', specifying the verb (return) and resource (anchors with href and text). It also provides context 'Useful as a crawler primitive', distinguishing it from siblings like zen_html (full HTML) and zen_dom (DOM structure).

    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 hints at usage with 'Useful as a crawler primitive', but does not explicitly state when to use or not use this tool compared to alternatives. No exclusions or prerequisites are mentioned, leaving the agent to infer from the sibling list.

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

  • Behavior2/5

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

    No annotations provided, so description must disclose behavior. It only states basic functionality, missing side effects, permission requirements, or consequences (e.g., tab order change, window focus).

    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?

    Minimal two-sentence description, no fluff, front-loaded with the action. Every sentence serves a purpose.

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

    Completeness2/5

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

    Incomplete for a 3-parameter tool without annotations or output schema. Missing behavior for invalid indices, prerequisites, return value, and effects on window focus.

    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?

    Adds meaning for index ('-1 = end') and explains optional window_id purpose, but tab_id is not described. With 0% schema coverage, description 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?

    Clearly states 'Move a tab to a position (and optionally to a different window)', which is a specific verb+resource. Distinguishes from siblings like close, duplicate, pin, reload, switch, etc.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs alternatives like zen_switch_tab or zen_detach_tab. Lacks explicit usage context or when-not-to-use.

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

  • Behavior2/5

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

    Without annotations, the description carries the full burden. It explains the parameters but does not disclose behavioral traits such as whether scrolling is smooth or instant, how boundaries are handled, or if there are any side effects. Minimal behavioral insight is given beyond basic functionality.

    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: a one-line headline followed by a straightforward argument list. Every sentence adds value, and there is no redundancy or filler.

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

    Completeness3/5

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

    Given the simple tool (3 parameters, no output schema), the description covers the basic inputs and action. However, it does not describe the return value, error conditions, or whether the scroll is smooth, which leaves some gaps for an agent to fully understand the tool's behavior.

    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 0% schema description coverage, the description compensates by explaining that direction is one of 'up','down','left','right', amount is in pixels, and tab_id is optional. This provides necessary context beyond the bare schema. However, it lacks constraints like min/max for amount.

    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 'Scroll the page' and lists the parameters, making it evident that it scrolls the page in a direction by a given amount. It is distinct from sibling tools like zen_navigate or zen_forward, though not explicitly 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?

    The description provides no guidance on when to use this tool versus alternatives (e.g., zen_click to scroll via scroll wheel simulation, or zen_focus to bring an element into view). It simply states what it does without context on applicable scenarios.

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

  • Behavior2/5

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

    With no annotations, description carries full burden but only states 'type text'. Does not disclose if it simulates keystrokes, triggers events, requires focus, or waits for element existence. Behavioral details are 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?

    Description is extremely concise: one sentence action followed by a clear bullet list of arguments. Every word earns its place, no fluff.

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

    Completeness2/5

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

    No output schema or annotations; description only covers basic usage. Leaves out return value, error handling, prerequisites (element must exist), and interaction with page state. Incomplete for a typing tool with 4 params.

    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?

    Description adds meaning to each parameter beyond schema types: 'CSS selector', 'Text to type', 'clear existing text', 'optional tab'. Schema has 0% coverage, so description compensates partially. Missing details like key combinations or format constraints.

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

    Purpose5/5

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

    The description states 'Type text into an input field' which is a specific verb+resource. It distinguishes from siblings like zen_fill (form filling) and zen_set_editable_content (content setting) by focusing on keystroke typing. Parameter list reinforces the action.

    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 siblings (e.g., zen_fill, zen_click). No mention of contexts where typing is preferred over other input methods. Agent must infer from name and args.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden for behavioral disclosure. It only states 'get' implying read-only, but does not cover permissions, side effects, or limitations. More detail is needed for a tool with no annotations.

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

    Conciseness5/5

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

    The description is extremely concise with two sentences, no wasted words, and front-loads the core purpose. It efficiently communicates the tool's function.

    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, the description is mostly adequate but lacks details about the return format (e.g., list of fields with labels and values). No output schema is provided, so including this would 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 single parameter tab_id is optional with a default. The description adds that it defaults to the active tab, which adds meaning beyond the schema's type and default. However, with only one parameter and no schema description coverage, the contribution is moderate.

    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 retrieves form fields from the current page with labels and values, providing a specific verb and resource. This distinguishes it from siblings like zen_fill (which fills forms) and zen_form_fill (which fills multiple fields).

    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 lacks guidance on when to use this tool versus alternatives like zen_form_fill or zen_fill. It does not mention when not to use it or provide context for choosing it over other form-related 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 lists what information is returned (bridge version, ports, etc.) but does not disclose behavioral traits like side effects (likely read-only), authorization needs, or rate limits. With no annotations, more behavioral detail would be helpful.

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

    Conciseness4/5

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

    Single sentence effectively enumerates the information returned, but the list is somewhat dense and could be structured with bullet points or categories for easier parsing.

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

    Completeness3/5

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

    Given no output schema, the description lists fields but does not specify data types, nesting, or format of values. For a tool returning multiple pieces of heterogeneous information, more detail on structure would improve 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?

    No parameters exist, and schema coverage is 100%. The description adds no parameter information, but none is needed. The baseline for zero-parameter tools is 4.

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

    Purpose4/5

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

    Description states 'Extended health/status' and lists specific items, clearly indicating the tool returns comprehensive health information. However, it does not explicitly differentiate from siblings like zen_check or zen_status, which likely provide simpler or different health data.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs alternatives. It does not describe when zen_health is appropriate compared to zen_check, zen_status, or other monitoring tools, leaving the agent without context for selection.

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

  • Behavior3/5

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

    No annotations are provided, so the description must carry the full burden. It mentions a size limit ('Cap 100KB'), which is a useful behavioral trait. However, it fails to disclose other important behaviors, such as the outcome if the element is not found, whether the operation is read-only, or any authentication requirements.

    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 at two sentences. The first sentence states the core purpose, and the second adds a critical constraint. Every sentence earns its place; there is no redundant information.

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

    Completeness2/5

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

    Given the tool has two parameters, no output schema, and no annotations, the description is incomplete. It does not explain how to use the parameters, what the return value looks like, or edge cases (e.g., element not found). The only extra context is the 100KB cap, leaving significant gaps for an agent to safely invoke the tool.

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

    Parameters1/5

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

    The input schema has two parameters (selector and tab_id) with zero schema description coverage. The description does not explain what these parameters mean, how they affect the output, or any constraints (e.g., selector format, default tab behavior). The agent gains no additional semantic insight beyond the parameter names.

    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 ('Return') and the resource ('outerHTML of a specific element'). It also adds a size constraint ('Cap 100KB'), which further clarifies the tool's scope. Among siblings, 'zen_html' is distinct from tools like 'zen_dom' or 'zen_markdown', as it specifically returns raw HTML.

    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 obtaining HTML content of an element but provides no explicit guidance on when to use this tool versus alternatives like 'zen_dom' or 'zen_markdown'. It does not mention when not to use it or any prerequisites, leaving the decision to the agent's inference.

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

  • Behavior1/5

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

    No annotations provided, and the description gives no details about side effects, safety, performance, or format of the output. It is minimal and lacks behavioral context.

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

    Conciseness5/5

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

    Single sentence, no wasted words. Clearly communicates the tool's function.

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

    Completeness3/5

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

    Given no parameters and no output schema, the description is adequate but could be improved by specifying the format of the mappings or including usage hints.

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

    Parameters4/5

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

    With zero parameters and 100% schema coverage, the description adds no additional parameter meaning, but the baseline is 4. The description suffices for a parameterless tool.

    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 it lists 'all tag → tab id mappings', which is a specific verb and resource. It distinguishes from sibling tools like zen_tag_tab and zen_resolve_tag.

    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 zen_tag_tab or zen_resolve_tag. The description only states what it does without 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?

    With no annotations provided, the description carries full burden for behavioral details. It explains the matching logic but omits key behaviors such as whether the tool waits for the element, triggers change events, or handles errors. The mention of 'by_text' is helpful but insufficient.

    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 two sentences long, efficient, and front-loaded with the main action. Every sentence adds value without redundancy.

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

    Completeness2/5

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

    Given the tool has 4 parameters, no output schema, and no annotations, the description is incomplete. It covers only partial parameter semantics and lacks information about return values, error handling, or prerequisites like element visibility.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must explain all parameters. It describes 'value' and 'by_text' but leaves 'selector' and 'tab_id' unexplained. The description adds some meaning for half the parameters but fails to clarify format or scope for the others.

    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 ('Choose an <option> in a <select>') and specifies two matching modes (by value or by text), which distinguishes it from other form interaction tools like zen_fill or zen_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?

    The description implies usage for selecting an option in a select element but does not explicitly provide when-to-use/when-not-to-use guidance or mention alternatives among the many sibling tools. The context is clear but lacks exclusion criteria.

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

  • Behavior2/5

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

    No annotations exist, so the description must disclose behavior. It only says 'execute' without detailing execution semantics, return values, 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 concise, with the main action front-loaded and parameter details in a clear list format. No unnecessary words.

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

    Completeness2/5

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

    Lacks return value description, error scenarios, or any output details. For an execution tool without output schema or annotations, this is insufficient.

    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 0% schema coverage, the description adds value: 'name: Workflow file name without .md' clarifies the format, and 'variables: Optional template variables' explains purpose.

    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 action (Execute) and its target (a named ZenLink workflow from the bridge workflow directory), which is distinct from the sibling 'zen_workflows' that likely lists workflows.

    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 lacks when or when not to use this tool compared to alternatives, no prerequisites or context for selecting it over other tools.

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

  • Behavior2/5

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

    No annotations are provided, so the description must fully disclose behavioral traits. It mentions actions but does not explain side effects (e.g., whether clearing is destructive, if status is read-only, or any rate limits). For a mutating tool, this is insufficient.

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

    Conciseness5/5

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

    The description is extremely concise, with a single sentence defining the purpose followed by a bullet-style args list. Every sentence is informative, and there is no redundant or missing structure.

    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 covers the actions and parameter dependencies. However, it omits details about return values (e.g., what status returns) and potential side effects of clearing the cache, which are important for an agent to use 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?

    With 0% schema description coverage, the description adds essential meaning by specifying the allowed values for action ('clear', 'status', 'ttl') and the conditional requirement for seconds. This compensates for the schema's lack of enums or 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 'Control the ZenLink bridge response cache' clearly indicates the tool's function of managing a cache. It differentiates from siblings like zen_clear_browsing_data or zen_broadcast, which have different purposes. However, 'control' is somewhat vague; a more specific verb like 'manage' or 'configure' would be clearer.

    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 lists the possible actions (clear, status, ttl) and provides conditional guidance for the seconds parameter ('TTL value when action is ttl'). This gives basic usage direction but does not explicitly state when to use this tool versus alternatives or mention any 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?

    Describes operations (start/stop/read/clear) and that it uses PerformanceObserver, but lacks details on side effects (e.g., whether 'start' clears previous captures) and does not disclose state persistence or permission requirements. No annotations provided.

    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: one-line purpose followed by a clear list of parameters with explanations. No wasted words, front-loaded, and easy to parse.

    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?

    Covers operations and parameters adequately, but missing return format (no output schema) and any details on what data the buffer contains, rate limits, or lifecycle. Adequate but could be more complete.

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

    Parameters4/5

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

    Adds significant meaning beyond the input schema: explains 'op' values, 'since' filtering logic, and 'tab_id' defaults. With 0% schema description coverage, this is essential and well done.

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

    Purpose4/5

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

    The description clearly states it captures network requests via PerformanceObserver, with specific operations (start/stop/read/clear). However, it does not differentiate from sibling tool 'zen_intercept' which might also capture 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 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 'zen_intercept', nor any prerequisites or when-not-to-use conditions. The description only explains the basic operations without context for selection.

    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 and discloses the 'scroll-and-stitch' technique, the 30-viewport height limit, and that it returns a single PNG data URL. However, it does not mention whether scrolling is involved, if the page needs to be fully loaded, or any performance implications, leaving gaps in behavioral transparency.

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

    Conciseness5/5

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

    The description is a single sentence (plus a clarifying clause) that provides all essential information without redundancy. Every word contributes meaning, making it highly concise and well-structured.

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

    Completeness3/5

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

    Given the simple tool with one parameter and no output schema, the description covers the core purpose, technique, limit, and output format. However, it lacks details about parameter usage and behavioral nuances (e.g., whether it scrolls the page or waits for loading), leaving some gaps for a complete understanding.

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

    Parameters1/5

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

    The input schema has one optional parameter (tab_id) with no description (0% coverage). The description does not mention this parameter at all, so it adds no meaning beyond the schema. The agent has no guidance on what the parameter does or how to use it.

    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 it captures a 'scroll-and-stitch screenshot covering the full document height' and returns a PNG data URL. It explicitly distinguishes from viewport-only screenshots by specifying 'full document height' and includes a height limit of 30 viewports. This provides a specific verb+resource combination, easily differentiating it from sibling tools like zen_screenshot and zen_element_screenshot.

    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 full-page capture but does not explicitly state when to use this tool versus alternatives like zen_screenshot (viewport-only) or zen_element_screenshot. There is no direct comparison or exclusion criteria, so the guidance is only implied through the phrase 'full document height'.

    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. It merely states 'Close a browser window' without disclosing side effects (e.g., all tabs close, unsaved data loss) or any confirmation prompts.

    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, focused sentence with no unnecessary words, efficiently conveying the tool's purpose and the source of the required ID.

    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 explains what the tool does and how to identify the window, but omits important context about the destructive nature of closing a window and any implications for open tabs.

    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 context that the window_id should come from zen_windows, which is helpful given 0% schema coverage. However, it does not explain the integer format or constraints beyond that.

    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 (close) and resource (browser window) and specifies the identifier source (from zen_windows), distinguishing it from tab-level operations.

    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 window ID comes from zen_windows but does not provide explicit guidance on when to use this tool versus alternatives like zen_close_tab or zen_focus_window.

    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 burden. It discloses that logs are buffered and non-destructive, but does not address what happens if the prerequisite is unmet or other behaviors like rate limits.

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

    Conciseness5/5

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

    The description is a single sentence that is front-loaded and contains no unnecessary words. Every part earns its place.

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

    Completeness2/5

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

    With 3 undocumented parameters and no output schema or annotations, the description is too brief. It does not explain parameter usage, output format, or error handling, making it inadequate for the tool's complexity.

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

    Parameters1/5

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

    Schema coverage is 0%, and the description adds no information about the three parameters (since, level, tab_id). It fails to explain their purpose or usage, leaving them completely undocumented.

    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 returns buffered console logs from a tab, using the verb 'Return' and specifying the resource. It distinguishes from siblings like zen_logs by mentioning the prerequisite, making it specific.

    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 says 'requires zen_watch_console first', providing clear context for when to use this tool. It does not mention exclusions or alternatives, but the prerequisite is a strong guideline.

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

  • Behavior3/5

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

    Without annotations, the description carries the full burden. It discloses the basic behavior (open window with optional URL) but omits details like what happens if URL is null, whether it returns a window ID, or any permission requirements. It is adequate but not rich.

    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 short sentences, 12 words total. The action is front-loaded, and every word adds value. No redundancy.

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

    Completeness3/5

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

    Given the low complexity (2 parameters, no output schema, no annotations), the description covers the core action and one parameter but does not address incognito or return behavior. It is minimally complete but lacks details that would fully guide an agent.

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

    Parameters3/5

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

    Schema description coverage is 0%, so the description adds value by explaining the URL parameter's purpose. However, the incognito parameter is not mentioned, leaving its semantics unclear. Partial compensation.

    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 (open a new browser window) and the resource (window), with additional detail about loading a URL at start. This differentiates it from related tools like zen_new_tab and zen_close_window.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives, such as zen_new_tab for tabs within existing windows. No context about prerequisites or when not to use it is given.

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

  • Behavior2/5

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

    With no annotations, the description does not fully disclose behavior. It implies a read-only operation but omits potential side effects, authentication needs, rate limits, or performance impact. The scope of 'interactive elements' is undefined.

    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: two sentences covering purpose and parameters with no wasted words. It is front-loaded with the primary action.

    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 sufficient for a simple tool with one optional parameter, but it lacks details about the output format or structure of the accessibility tree. Given no output schema, additional context would be helpful.

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

    Parameters4/5

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

    Schema coverage is 0%, but the description explains the tab_id parameter's purpose (optional, targets a specific tab, defaults to active). This adds significant meaning beyond the schema's type definition.

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

    Purpose5/5

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

    The description clearly states the tool gets the accessibility tree of interactive elements on the page, which is a specific and well-defined resource. It uses a clear verb 'Get' and distinguishes itself from siblings like zen_html or zen_page_text by focusing on interactive elements.

    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 zen_html or zen_audit. The description only mentions an optional tab_id parameter but does not explain usage context, prerequisites, or exclusions.

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

  • Behavior2/5

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

    No annotations are given, so the description carries full burden. It only states 'hover' without disclosing behavioral traits such as whether it triggers events, requires element visibility, or has side effects (e.g., tooltips). This is insufficient for a mutation-like action.

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

    Conciseness5/5

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

    The description is extremely concise: one sentence for purpose and two lines for parameters. It is front-loaded with the essential action and contains no unnecessary words.

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

    Completeness3/5

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

    While the tool is simple, the description omits details like what happens after hover (e.g., success signal, return value) and potential constraints (e.g., element must be visible). For a low-complexity tool without output schema, this is adequate but could be improved.

    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 0% schema description coverage, the description compensates by explaining that 'selector' is a CSS selector and 'tab_id' is optional defaulting to active tab. This adds meaning beyond the schema's type and title.

    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 'Hover over an element on the page' clearly states the action (hover) and target (element on page). It effectively distinguishes from siblings like zen_click (click) and zen_focus (focus), showing a specific verb and resource.

    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 vs alternatives. The description does not mention prerequisites, when hover is appropriate, or contrast with similar actions like click or focus.

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

  • Behavior2/5

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

    No annotations provided, so description bears full burden. It discloses the source directory but omits behavioral traits like auth requirements, side effects, or output format. Incomplete for a tool with no annotations.

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

    Conciseness5/5

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

    One sentence, 12 words, no extraneous information. Front-loaded with the verb and key details. Highly concise.

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

    Completeness3/5

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

    Given no input/output schemas and no annotations, the description provides the basic purpose but doesn't clarify the return format or prerequisites. For a simple list tool, it's minimally adequate but could be more complete.

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

    Parameters4/5

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

    No parameters exist, so baseline is 4. The description adds context about 'named' workflows and the 'bridge workflow directory', which is helpful beyond the empty 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 lists available named ZenLink workflows from a specific directory, with a specific verb and resource. It distinguishes from sibling tools like zen_workflow (singular).

    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, no exclusions or context provided. The description only states the action without usage recommendations.

    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 burden of behavioral disclosure. It explains the parallel execution and per-tab injection, but lacks details on side effects (e.g., failure handling, rate limits, or whether it modifies tab state). The description does not contradict any annotations because none exist, but it falls short of full transparency.

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

    Conciseness4/5

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

    The description is relatively concise with a clear introductory sentence and a structured args section. Each sentence serves a purpose, and the key information is front-loaded. The list format adds some repetition but is efficient. Minor loss for not being fully streamlined.

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

    Completeness3/5

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

    Given the complexity (3 parameters, nested object, no output schema), the description covers the basic function and parameters. However, it lacks details on the return format (only says 'returns per-tab results keyed by tab id' without specifying the structure of each result) and error handling. Without an output schema, the description should provide more 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?

    Schema description coverage is 0%, meaning the schema provides no parameter descriptions. The description adds meaningful context: it explains that 'tab_ids' are targets, 'command' is a dict (e.g., {'action': 'pageInfo'}) and 'timeout' is a per-tab timeout in seconds. While it gives useful examples, it does not exhaustively describe all valid command structures or constraints.

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

    Purpose5/5

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

    The description clearly states the tool's function: 'Fire the same command at every listed tab in parallel.' It specifies the action (fire command), the resource (tabs), and the parallel execution. It also explains that each tab gets the command with its own tabId injected and returns per-tab results keyed by tabId. This distinguishes it from sibling tools like zen_parallel or zen_batch, making the purpose unambiguous.

    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 does not provide guidance on when to use this tool versus alternatives. For example, there is a sibling tool 'zen_parallel' that might also run commands in parallel, but no mention of when broadcast is preferred. No usage context, exclusions, or when-not-to-use information is given.

    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 must disclose behavior. It reveals that the tool listens to tabs.onUpdated(status='complete') and is an atomic operation. However, it omits details on error handling, what happens if navigation does not occur, or timeout behavior, leaving some behavioral aspects unclear.

    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: two sentences. The first sentence directly states the core functionality, and the second adds a comparative advantage and internal mechanism. Every sentence serves a purpose with no wasted words.

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

    Completeness3/5

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

    While the tool is simple and the description covers the primary action and use case, it lacks parameter descriptions and fails to explain edge cases or expected outcomes. Given no output schema, additional guidance on return values or errors would enhance completeness.

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

    Parameters1/5

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

    The input schema has 0% description coverage, so the description should clarify parameter meaning. It does not mention selector, timeout, or tab_id at all, providing no added semantic value beyond the bare 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 the tool clicks an element and waits for navigation. It explicitly distinguishes itself from two-step alternatives (zen_click + zen_wait_for_url) by claiming atomicity and reliability, effectively differentiating among many sibling 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?

    The description advises using this tool for links/submit buttons where navigation follows click, positioning it as a more reliable alternative to separate click and wait steps. It lacks explicit when-not-to-use or alternative scenarios, but provides clear context for its intended use case.

    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?

    It describes the basic behavior of each operation but lacks details on side effects (e.g., clear removes all cookies for url or domain) and does not mention return formats or error handling. No annotations are provided to supplement.

    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 brief, uses bullet points effectively, and front-loads the key operations. Every sentence adds value without unnecessary details.

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

    Completeness2/5

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

    Despite the simplicity of the tool, the description lacks details on return values for get (e.g., list of cookies), error scenarios, and prerequisites. No output schema or annotations exist to compensate, leaving gaps for an agent.

    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 explains the role of url, name, and value for set/remove but fails to document other parameters like secure, path, and domain, which are in the schema. With 0% schema coverage, the description should cover more parameters.

    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 it handles cookie operations with four specific verbs (get, set, remove, clear). It is distinct from sibling tools like zen_clear_browsing_data, which clears all browsing data, not just cookies.

    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 lists required parameters for each operation (e.g., set requires url+name+value) but does not provide when-to-use guidance or mention alternative tools for similar tasks like zen_storage.

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

  • Behavior2/5

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

    No annotations are provided, so the description must fully disclose behavioral traits. It states that a visual overlay is added but does not clarify duration, whether the overlay is permanent or temporary, if it modifies the DOM, or if it requires user interaction. This lack of detail impairs the agent's understanding of side effects.

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

    Conciseness4/5

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

    The description is concise (3 sentences) and front-loads the main purpose. The parameter breakdown is clear. However, it could be slightly more structured with a separate summary line, but overall it's efficient and wastes no words.

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

    Completeness3/5

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

    The tool is simple, but the description lacks information about the return value or state (e.g., does it return success status or element info?). Given no output schema, the agent is left guessing. The description covers basic invocation but not the complete behavioral contract.

    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 0% schema description coverage, the description compensates by explaining each parameter: 'selector: CSS selector of the element to highlight' and 'tab_id: Optional tab to target. Defaults to active tab.' This adds meaningful context beyond the bare schema properties (title and type), though selector could be further clarified.

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

    Purpose5/5

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

    The description clearly states the tool's function: 'Highlight an element on the page with a visual overlay.' It uses a specific verb ('highlight') and resource ('element') and distinguishes itself from sibling tools like zen_blur or zen_bounds by specifying the visual overlay effect.

    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 (e.g., to visually emphasize an element) but does not provide explicit guidance on when to use this tool versus alternatives, nor does it mention exclusions or prerequisites. The mention of an optional tab parameter adds context but lacks decision criteria.

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

  • Behavior2/5

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

    No annotations are provided, and the description does not disclose behavioral traits beyond the basic purpose. It does not state if the tool is read-only, whether it has side effects, or any required permissions, leaving gaps for an agent.

    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: two sentences plus a one-line parameter doc. It is front-loaded with the core purpose and wastes no words, achieving maximum efficiency.

    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 informational tool with one parameter, the description covers the return values adequately. It mentions the key properties (URL, title, dimensions, scroll position), though it could hint at the format or structure of the output. Still, it is largely complete given the tool's simplicity.

    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%, but the description adds meaning for the sole parameter: 'Optional tab to target. Defaults to active tab.' This goes beyond the schema's type definition and clarifies behavior, earning a score above baseline.

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

    Purpose5/5

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

    The description explicitly states the tool returns 'current page URL, title, dimensions, and scroll position', which is a specific verb+resource combination. It clearly distinguishes from siblings like zen_page_text or zen_meta that return different data.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives (e.g., zen_dom, zen_html). It only mentions the optional tab_id parameter, leaving the agent 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.

  • Behavior3/5

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

    With no annotations, the description must convey behavior. It mentions setting text/HTML and the clear parameter for replacing vs appending, but does not disclose whether it triggers DOM events, waits for element visibility, or handles errors like non-editable elements. The behavioral disclosure is adequate but not thorough.

    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 with a one-line purpose, a practical example, and a structured parameter list. It avoids unnecessary elaboration and front-loads key information, making it efficient for an AI agent to parse.

    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 5 parameters, 2 required, no output schema, and zero schema description coverage, the description provides comprehensive parameter explanations and a clear use case. It is complete enough for typical usage, though missing details on return values or error handling are minor gaps.

    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 carries full burden. It includes an Args section that explains each parameter's purpose (selector, value, format, clear, tab_id) beyond the schema's type-only definitions, adding meaningful context. This compensates well for the lack of schema 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 states the tool sets text or HTML in contenteditable editors, inputs, or textareas. It specifies the action and target resource well, but does not explicitly differentiate from siblings like zen_type or zen_fill, which also modify input elements.

    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 suggests use for rich editors like Gmail compose bodies where typing is slow, providing a clear use case. However, it lacks explicit guidance on when not to use it or comparisons to alternative tools like zen_type or zen_fill, leaving the decision partially ambiguous.

    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?

    Covers blocking behavior, polling, and timeout, but with no annotations, missing details on error handling (e.g., timeout expiration), side effects, or what happens if a tab is closed.

    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?

    Highly concise with front-loaded summary, a practical note, and a clear parameter list. No unnecessary words.

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

    Completeness3/5

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

    Covers main purpose and parameters but does not specify return value or error scenarios. For a 4-parameter tool with no output schema, this leaves some gaps.

    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 0% schema coverage, description compensates effectively: clearly explains each parameter's purpose, provides an example for predicate, and notes defaults for timeout and poll_interval.

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

    Purpose4/5

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

    Description clearly states the core function: block until a JS predicate returns truthy on every listed tab. It differentiates from hand-rolled loops but does not explicitly distinguish from sibling wait tools like zen_wait_for_element.

    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?

    Implies use for synchronizing multiple tabs and replacing manual loops, but lacks explicit when-to-use vs alternatives, prerequisites, or exclusions like closed tabs or timeout behavior.

    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?

    With no annotations provided, the description fully carries the behavioral disclosure burden. It explicitly states that tags live in memory and do not survive bridge restarts unless re-tagged, a critical behavioral trait. This is valuable for an agent to understand persistence, though it does not cover potential side effects like overwriting existing tags.

    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 exceptionally concise: two sentences. The first sentence states the primary purpose, and the second adds a critical behavioral note. No wasted words, perfectly front-loaded.

    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 tagging tool with no output schema, the description covers the core purpose, persistence behavior, and the companion tool. It does not explain error conditions (e.g., invalid tab_id) or whether tagging is additive, but these are minor gaps. Overall, it sufficiently informs an agent for basic use.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate. It adds minimal meaning: `name` is described as 'memorable' and `tab_id` is implied to be a tab identifier, but no details on format, constraints, or valid values are provided. This is insufficient for full parameter understanding.

    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 tool's verb ('Give a tab a memorable name') and resource (tab). It also references the complementary tool `zen_resolve_tag` for later use, providing a usage context. However, it does not explicitly differentiate from sibling tools like `zen_untag_tab` or `zen_list_tags`, which slightly reduces clarity.

    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 use case (tag for later reference via `zen_resolve_tag`), but does not explicitly state when to use or avoid this tool, nor mention alternatives. The guidance is implied rather than direct, meeting the minimum bar.

    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 notes that params have 'JS code stripped,' which is a behavioral trait. However, it does not explicitly state that the operation is read-only or non-destructive, and it omits details about the scope of the audit (e.g., session vs. persistent).

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

    Conciseness5/5

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

    The description is a single concise sentence that front-loads the purpose and key details. Every word earns its place, with no redundancy or unnecessary information.

    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 two parameters and no output schema. The description lists the return fields but does not explain the meaning or usage of 'limit' and 'since_ms,' which are critical for effective use. Without these, the agent cannot properly invoke the tool with desired filtering.

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

    Parameters2/5

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

    Schema coverage is 0% with no parameter descriptions. The description does not mention the 'limit' or 'since_ms' parameters at all, failing to add meaning beyond the schema. While the parameter names are somewhat self-explanatory, the description should compensate for the lack of schema documentation.

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

    Purpose5/5

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

    The description clearly states 'Return recent command audit entries' with specific fields (action, params stripped, success, error, duration). It distinguishes well from sibling action tools like zen_click or zen_logs, as audit is a retrospective introspection 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 description provides a clear use case: 'Useful for "what did the agent do?" reviews.' This indicates when to use it, though it does not explicitly mention when not to use it or name alternatives like zen_logs. The guidance is sufficient but not exhaustive.

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

  • Behavior2/5

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

    With no annotations provided, the description must carry the full burden of behavioral disclosure. It only states the basic operation and does not mention side effects (e.g., overwriting clipboard), required permissions, error handling, or what happens on invalid inputs. This is insufficient for a tool that interacts with the system.

    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, using three lines to state the purpose and parameters. It front-loads the core function and avoids any unnecessary words 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 tool has only two parameters and a simple function, but the description does not mention return values (e.g., clipboard content on read or success indicator on write). Given no output schema, this omission leaves the behavior partially undefined, though the operation is straightforward.

    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 0% description coverage, so the description must compensate. It explains that op must be 'read' or 'write' and that text is only relevant for 'write'. This adds meaningful context beyond the schema's raw type 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 tool reads or writes the system clipboard using a dedicated parameter, which is a specific verb-resource pair. No sibling tools perform clipboard operations, so there is no confusion.

    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 specifies the two possible values for op ('read' or 'write') and explains when text is needed, which gives implicit guidance. However, it does not explicitly state when to use this tool over alternatives or provide any broader 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 provided, and the description only says 'directly' without detailing side effects, permissions, or whether event listeners are triggered.

    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: one-line purpose followed by parameter list, no wasteful prose.

    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?

    Describes all parameters and provides usage context, but omits return value, failure behavior, and whether it waits for the element, which is needed given 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?

    Explains all three parameters (selector as CSS selector, value, tab_id with default), adding meaning beyond the bare schema which has no 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?

    Clearly states it sets a form field's value directly and is faster than typing, distinguishing from sibling tools like zen_type and zen_form_fill.

    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?

    Mentions it's faster than typing but lacks explicit guidance on when not to use it or alternatives, such as when to prefer zen_form_fill or zen_type.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It only states the tool returns the policy, with no mention of side effects, error conditions, authentication needs, or behavior when no policy exists.

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

    Conciseness5/5

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

    The description is a single sentence that directly states the tool's purpose. Every word earns its place; no wasted text.

    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 getter tool with no parameters and no output schema, the description is minimally adequate. However, it does not explain the format or structure of the returned policy, which could be helpful 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?

    With zero parameters and 100% schema description coverage, the schema already fully documents the input. The description adds no parameter info, but none is needed. Baseline for 0 parameters is 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 states it returns the active URL/readonly policy, using a specific verb ('Return') and resource. It implicitly distinguishes from the sibling tool 'zen_set_policy' which sets the policy.

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

    Usage Guidelines3/5

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

    No explicit guidance on when to use this tool vs alternatives. The presence of 'zen_set_policy' implies a getter/setter pair, but the description does not elaborate on context 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?

    No annotations are provided, so the description carries the full burden. It mentions the option for hard reload but does not disclose whether the reload blocks or any side effects on tab state. 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?

    The description is extremely concise: one sentence plus a usage directive. No unnecessary words.

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

    Completeness3/5

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

    The tool is simple, but the description omits details about what happens with null tab_id, blocking behavior, and error handling. Adequate for a basic action 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?

    With 0% schema description coverage, the description adds meaning for bypass_cache ('hard reload') but not for tab_id (implicitly current tab). This partially compensates but is 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 clearly states the action ('reload') and resource ('tab'). It is specific and distinguishes from sibling tools like zen_navigate or zen_duplicate_tab.

    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 usage guidance for the bypass_cache parameter but does not provide context on when to use this tool versus alternatives like zen_navigate. The usage is implied but not explicit.

    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 provides basic behavioral info: synthetic event, modifiers, text insertion, default target. However, it lacks details on side effects (e.g., triggering event listeners, navigation) or whether the event is trusted.

    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 with a clear first sentence and a structured bullet list for parameters. It avoids redundancy and is easy to scan.

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

    Completeness3/5

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

    Given no annotations or output schema and 0% schema coverage, the description covers most parameters but omits tab_id. It is adequate for a keyboard event tool but could be more comprehensive.

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

    Parameters4/5

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

    Schema description coverage is 0%, but the description explains 4 of 5 parameters (key, modifiers, text, selector) with examples and default values. The 'tab_id' parameter is not mentioned, which is a gap.

    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 dispatches a synthetic keyboard event, specifies modifiers, and text insertion. It distinguishes itself from sibling tools like zen_click or zen_type by focusing on keypress events and providing examples of key names.

    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 keyboard events but does not explicitly state when to use this tool over alternatives like zen_type or zen_focus. No exclusions or scenarios are given.

    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?

    With no annotations, the description provides transparent algorithmic details (text density, paragraph count, inverse link density, stripping nav/aside) and fallback logic. However, it omits error cases or whether the operation is read-only.

    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: a clear one-line purpose followed by a brief explanation of the heuristic. Every sentence adds value, no redundancy.

    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 algorithm is explained, the description omits the output format (e.g., JSON, plain text) and does not clarify the tab_id parameter usage. Given no output schema, these gaps reduce completeness for an extraction 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?

    The description does not mention the single parameter tab_id (integer or null, default null). Schema coverage is 0%, and the description adds no meaning beyond the schema, which is insufficient for a parameter that controls which tab to act on.

    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 the main article (title, byline, clean text). It uses a specific verb ('extract') and resource ('main article'), distinguishing it from siblings like zen_page_text or zen_markdown.

    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 article extraction via heuristic (text density, paragraph count, inverse link density) and fallback behavior, but lacks explicit guidance on when to use vs alternatives or exclusions.

    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 provided, description covers key behaviors (grow/shrink, auto-grow on empty acquire). Lacks details on side effects like tab closure or auth, but adequate for a pool maintenance 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?

    Three sentences, front-loaded. Each sentence adds unique value. No redundancy.

    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?

    No output schema, no annotations, low schema coverage. Explains size and auto-grow, but missing url parameter semantics. Reasonably complete for a simple tool, but could improve.

    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 0% so description must compensate. Explains 'size' well, but completely omits explanation of 'url' parameter, leaving its purpose unclear.

    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 describes it maintains a warm pool of tabs, grows/shrinks to size, and references sibling tools for acquire/release. 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?

    Gives context on when to use (setup pool) and references specific sibling tools for acquire/release. Does not explicitly list exclusions or when not to use, but sufficient for a maintenance tool.

    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 provided, so the description must shoulder the burden. It discloses that the tool navigates to the Elementor editor and extracts innerHTML, implying a read operation. However, it does not clarify side effects (e.g., does it leave the editor open?), or whether it modifies state, leaving some behavioral ambiguity.

    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, with a main sentence, step-by-step logic, and a separate Args list. It is front-loaded with the primary purpose. The Args section is slightly redundant with the schema but adds necessary explanation. No unnecessary sentences.

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

    Completeness3/5

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

    Given the tool's complexity (browser automation, Elementor integration), the description covers prerequisites and steps but omits error handling (e.g., page not found), return format beyond 'clean HTML/CSS/JS', and potential failure modes. An output schema is absent, placing more burden on the description, which falls short.

    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%, but the tool's description includes an Args section with clear explanations and examples (e.g., site_url: 'https://thankyouexperiences.com', page_id: 5719). This adds meaningful semantic context beyond the bare schema, though it could provide more detail on constraints like URL format.

    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 'Extract HTML widget content from a WordPress Elementor page,' specifying a unique verb-resource combination. It distinguishes this tool from siblings like zen_html (general HTML) and zen_dom by focusing on Elementor HTML widgets.

    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 mentions a prerequisite ('browser must already be logged into WP admin') and outlines the steps (navigate, wait, extract). However, it does not explicitly compare with alternatives or state when not to use this tool, leaving usage context implied.

    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. The description discloses the destructive nature (clear) and lists the data types affected, which is sufficient. However, it does not detail any side effects, permissions needed, or confirmation requirements, which limits transparency for a destructive action.

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

    Conciseness5/5

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

    The description is extremely concise: two sentences for the main purpose, followed by clear parameter explanations. No unnecessary words, well-structured, and front-loaded with the action.

    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 2-parameter tool with no output schema, the description covers the essential context: what types are cleared, default behavior, and optional timestamp filter. It could benefit from mentioning that the operation is irreversible or that it returns nothing/an empty response, but overall it is mostly complete.

    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 has no descriptions (0% coverage), but the description fully explains both parameters: 'types' lists possible values and default behavior, 'since_ms' defines the timestamp meaning. This adds complete semantic meaning beyond the schema.

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

    Purpose4/5

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

    The description clearly states the tool clears browsing data of specified types, listing them explicitly. It distinguishes the action (clear) from sibling tools like zen_cache or zen_cookies, but does not explicitly differentiate when to use this tool versus those individual ones.

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

    Usage Guidelines3/5

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

    The description provides the usage context (which types to clear, optional timestamp filter) but offers no guidance on when to use this tool vs. alternative sibling tools like zen_cache or zen_downloads. It implies usage for bulk clearing but lacks explicit when-not or 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?

    No annotations are provided, so the description carries the full burden. It discloses that the tool scrolls into view (a side effect), captures, crops via OffscreenCanvas, and returns a PNG data URL. This is fairly transparent for a screenshot 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 only two sentences, front-loads the key action, and provides essential process details without unnecessary words. Every sentence is valuable.

    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 explains the output (PNG data URL) and the process (scroll, capture, crop), which is sufficient for a simple tool. However, it does not mention error handling or behavior when the element is not found, which could be added for completeness.

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

    Parameters2/5

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

    Schema description coverage is 0%, and the description does not explain the 'selector' or 'tab_id' parameters. It only mentions 'single element' but provides no additional meaning beyond the schema's names and types.

    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 it screenshots a single element, distinguishing it from sibling tools like zen_screenshot and zen_full_page_screenshot. It specifies the action and resource uniquely.

    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 capturing a single element but does not explicitly compare with alternatives or state when not to use it. Minimal guidance beyond the core purpose.

    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 burden. It describes the expected output (match count, sample matches, suggestions) but does not disclose potential side effects, permissions, or limits. The description adds some value beyond the schema but lacks full behavioral detail.

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

    Conciseness5/5

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

    The description is a single sentence that is concise and front-loaded. Every word adds value, and there is no redundant information.

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

    Completeness3/5

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

    Given the tool has two parameters, no output schema, and no annotations, the description is adequate but incomplete. It explains the tool's output but does not specify how 'tab_id' affects behavior or mention any error cases. There is room for improvement.

    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 has 0% description coverage, so the description must compensate. It clarifies the purpose of the 'selector' parameter but does not mention the optional 'tab_id' parameter, which could limit the tool's usefulness. It partially adds 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 tool's purpose: diagnose a CSS selector by providing match count, sample matches, and suggestions for a more specific selector. It uses a specific verb and resource, distinguishing it from siblings like zen_computed_style or zen_dom.

    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 when to use the tool (e.g., when you have too many matches) but does not explicitly mention when not to use it or provide alternatives. The context is clear, but exclusion criteria are missing.

    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. The description only notes that it returns 'full visible text content' and operates without switching tabs. It does not disclose potential errors (e.g., invalid tab ID, unloaded page), side effects, or whether it is read-only. This is insufficient for a tool that accesses page content.

    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 and well-structured: a one-line summary, an argument definition, and a return statement. No unnecessary words, and the format is clear.

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

    Completeness3/5

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

    Given no output schema, the description mentions the return type (full visible text). However, it lacks information about error handling, edge cases, and compatibility with other tools (e.g., relationship to zen_page_text). For a simple tool, it is adequate but not comprehensive.

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

    Parameters4/5

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

    With 0% schema description coverage, the description adds crucial meaning to the single parameter tab_id by stating it is a 'tab ID to read from' and directing users to get IDs from zen_tabs. This compensates for the schema's lack of description.

    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 ('Get page text'), the resource ('page text from a specific tab by ID'), and a key differentiator ('without switching to it'). This distinguishes it from related tools like zen_page_text (likely for current tab) and zen_switch_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?

    The description provides context on when to use the tool: when you have a tab ID and want text without switching. It also points to zen_tabs to get IDs. However, it doesn't explicitly mention alternatives or when not to use it (e.g., for current tab, use zen_page_text).

    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 discloses that it captures the active tab of the focused window and returns a file path. However, it omits details like image format, resolution, or any side effects, which would be beneficial for a comprehensive behavioral understanding.

    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, with two sentences and a note. It front-loads the main purpose and provides additional context efficiently without any 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 tool with no parameters and no output schema, the description adequately explains its function and provides a usage hint. It does not mention error handling or edge cases, but overall it is sufficient 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.

    Parameters4/5

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

    The tool has no parameters, so schema coverage is 100%. The description does not need to add parameter information beyond what is already clear. Baseline score of 4 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?

    The description clearly states it captures a screenshot of the current page, using a specific verb and resource. It does not explicitly differentiate from sibling tools like zen_element_screenshot or zen_full_page_screenshot, but the added note about switching tabs provides indirect differentiation.

    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 includes a note on when to use this tool (for the active tab) and how to screenshot a specific tab by first switching with zen_switch_tab. It gives clear context but does not explicitly state when not to use it or mention alternative screenshot 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?

    No annotations are provided, so the description carries the transparency burden. It discloses the selector omission behavior but does not mention side effects (e.g., navigation, confirmation dialogs) or required permissions. Some transparency, but not comprehensive.

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

    Conciseness5/5

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

    The description is extremely concise: two sentences with no redundant information. It is front-loaded with the core purpose and efficient.

    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 covers the basic usage scenario but lacks return value information (no output schema), error handling, or prerequisites. For a tool with only two parameters and a simple action, it is adequate but could be more 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?

    The description adds meaning to the 'selector' parameter (optional, defaults to null, submits first form if omitted). However, it provides no information about the 'tab_id' parameter. With 0% schema description coverage, this is partial but not full compensation.

    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 ('Submit a form') and the resource ('form'), with an additional behavioral detail about selector omission. This effectively distinguishes it from sibling tools like zen_fill or zen_click.

    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 a clear usage hint: if selector is omitted, the first form is submitted. However, it does not explicitly state when to use this tool versus alternatives like zen_form_fill 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.

  • Behavior3/5

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

    Covers polling behavior, timeout, and interval, but lacks details on what 'non-empty' means (truthy vs non-null), error handling, or that the expression runs in page context. As there are no annotations, the description carries full burden but 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.

    Conciseness5/5

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

    The description is extremely concise: a single-line purpose statement followed by a bulleted parameter list. Every sentence earns its place with no redundancy.

    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 no output schema and no annotations. The description omits any explanation of what the tool returns (e.g., the result value, type, or structure). While inputs are well-covered, the output behavior is entirely missing.

    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?

    Given 0% schema description coverage, the docstring adds meaningful explanations for all four parameters: code, timeout, poll_interval, and tab_id. It clarifies their roles and defaults beyond the schema titles.

    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 polls a JavaScript expression until a non-empty result, which is a specific verb-resource combination. It distinguishes from siblings like zen_js (one-time execution) and other wait tools.

    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 waiting on JS expressions but does not explicitly state when to use versus alternatives like zen_wait_for_element or zen_js. No when-not or alternative guidance is provided.

    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 exist, so description carries full burden. It states it lists windows and tabs but doesn't disclose details like ordering, inclusion of minimized windows, or any side effects. Adequate but not rich in behavioral context.

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

    Conciseness5/5

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

    One short, clear sentence with no wasted words. Front-loaded with the essential information.

    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?

    No output schema, so description should explain return values. It says it lists windows with tabs, but doesn't specify the structure or fields of returned data. Adequate for high-level understanding, but lacks detail for precise invocation understanding.

    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 no parameters, so baseline is 4. Description adds no parameter info because none exist. The schema coverage is 100% by default.

    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?

    Describes exactly what the tool does: list all open browser windows and their tabs. The verb 'list' and specific resource 'open browser windows with tabs' clearly distinguishes it from sibling tools like zen_tabs or zen_create_window.

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

    Usage Guidelines3/5

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

    No explicit guidance on when or when not to use this tool versus alternatives. The usage is implied by the description, but no exclusions or sibling comparisons are provided.

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

  • Behavior3/5

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

    No annotations are provided, so the description must disclose behavior. It states that the tool uses natural language to find elements but does not clarify what is returned (e.g., element handles, count) or whether it is a read-only operation. The description partially covers behavior but lacks important details.

    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: two sentences plus an argument list. It is front-loaded with the purpose and avoids unnecessary words. Every sentence adds value.

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

    Completeness2/5

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

    Despite having only two parameters and no output schema, the description fails to clarify what the tool returns (e.g., element identifiers, success status). The output is crucial for an element-finding tool, and missing this information leaves the agent uncertain.

    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 compensates well. It explains the 'query' parameter with examples and specifies the optional 'tab_id' with default behavior. This adds meaningful context beyond the raw 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: 'Find elements on the page using natural language description.' This distinguishes it from sibling tools like zen_click or zen_hover, which act on elements rather than locating them.

    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 explicit usage context with examples for the 'query' parameter and mentions optional tab_id. However, it does not offer guidance on when to avoid this tool or suggest alternatives like zen_query or zen_explain_selector.

    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 burden. It discloses the action but does not explain whether it overwrites existing data, what happens if the session doesn't exist, or any permission requirements.

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

    Conciseness5/5

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

    The description is a single, front-loaded sentence with no extraneous information. It is concise and to the point.

    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 parameter and no output schema, the description is adequate. It explains the core function and implies the input, but lacks error handling or prerequisite guidance.

    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% for the single 'name' parameter, but the description links it to 'previously saved session', adding meaning beyond the raw schema. However, it could specify format or constraints.

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

    Purpose5/5

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

    The description clearly states the tool restores cookies and localStorage from a previously saved session, using a specific verb and resource. It distinguishes itself from sibling tools like zen_save_session and zen_delete_session.

    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 tool should be used after saving a session via zen_save_session, but does not explicitly state when to use it or when not to use alternatives. No guidance on prerequisites or errors.

    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?

    Describes the core navigation action without annotations. Does not disclose whether it waits for page load or error handling, but is not misleading.

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

    Conciseness5/5

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

    Uses only two sentences plus a concise Args list, no redundant or rambling content. Efficiently conveys the essential information.

    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?

    Adequately covers the tool's purpose and parameters for a simple navigation action, though missing details about page load behavior. Acceptable given 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?

    Adds meaning beyond the schema by providing an example for url and explaining tab_id default behavior. Compensates for 0% schema description coverage.

    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 navigates the active tab to a URL, using a specific verb and resource. Distinguishes from siblings like zen_back, zen_forward, and zen_reload_tab.

    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?

    Implicitly indicates usage for navigation, but lacks explicit when-to-use or when-not-to-use guidance compared to alternatives like zen_new_tab or zen_click.

    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. The description discloses that it returns a tab_id and that it 'checks out' a tab, suggesting removal from the pool. However, it does not explicitly state whether the tab is removed or what state the pool is left in, leaving some behavioral ambiguity.

    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 short sentences with no unnecessary words. Every word adds value.

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

    Completeness4/5

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

    Given zero parameters and no output schema, the description provides the essential information (action and return value). It could briefly mention the effect on the pool (e.g., 'removes the tab from the pool') but is mostly complete.

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

    Parameters4/5

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

    There are zero parameters, so schema coverage is 100%. The description does not need to add parameter info; baseline for 0 params is 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 states the action ('check out a warm tab from the pool') and the return value ('Returns its tab_id'). It distinguishes from sibling tools like 'zen_pool_release' which would return a tab, not acquire one.

    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 when to use it (when you need a warm tab from the pool) but does not provide explicit guidance on alternatives or when not to use it. No exclusion criteria are mentioned.

    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 burden. It explains that read-only mode blocks write actions while allowing read ops, which is helpful. However, it does not disclose whether setting policy overwrites existing policies, or if there are any side effects, leaving some behavioral aspects unclear.

    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 three sentences, front-loaded with the main purpose, then explains read-only mode succinctly, and ends with a usage note. 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?

    Given three optional parameters, no output schema, and simple function, the description covers the purpose of each parameter and provides a use case. It lacks mention of default behavior or cumulative effects, but is reasonably complete for a straightforward setting tool.

    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 add meaning. It maps parameters to 'allow/deny regex lists' and 'read-only mode', providing essential context beyond the bare parameter names. While it doesn't specify regex format or that allow/deny are arrays, it adds significant value.

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

    Purpose5/5

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

    The description clearly states the tool's action ('Set') and the resources ('URL allow/deny regex lists' and 'read-only mode'). It is concise and distinct from siblings, as no other sibling tool appears to set policy.

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

    Usage Guidelines3/5

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

    The description provides a use case for read-only mode ('useful for let the agent observe only'), but does not explicitly state when to use this tool over alternatives or when not to use it. It implies usage context but lacks explicit 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?

    No annotations are provided, so the description must convey behavior. It states a read-only check but does not specify the return value (e.g., boolean, status message) or any potential side effects like network calls. It is minimally adequate.

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

    Conciseness5/5

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

    A single sentence that is direct and front-loaded. Every word is necessary; no 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?

    For a simple 0-parameter tool with no output schema, the description covers the essential purpose. However, specifying the return format (e.g., 'returns true if connected') would 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 input schema has 0 parameters and schema description coverage is 100%, so the baseline is 3. The description adds no parameter details, but none 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 uses a specific verb ('Check') and clearly identifies the resource ('ZenLink bridge and browser extension are connected'). It distinguishes zen_status from all sibling tools, as none other appears to be a connectivity check.

    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 when to use the tool (to verify connectivity) without explicit alternatives or exclusions. Given the tool's simplicity, this is clear enough.

    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 must disclose behavioral traits. It lists allowed operations and parameter dependencies but omits side effects (e.g., permanent change on set/remove), permission requirements, or error scenarios. The per-origin mention adds useful context, but more detail on impacts would improve transparency.

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

    Conciseness4/5

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

    The description is concise, using bullet-like 'Args' format. It front-loads the purpose. While the docstring style is verbose, it efficiently conveys all necessary information without redundancy.

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

    Completeness3/5

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

    Given no output schema and no annotations, the description covers the basic operations and parameters. However, it lacks details on return values, error handling, and the permanence of modifications. For a storage tool, users need to know that set/remove/clear are irreversible, which 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?

    Schema coverage is 0%, so the description must explain parameters. It does: 'kind: local or session', 'op: get|set|...', 'key: Required for get/set/remove', 'value: For set, the string value. For restore, a dict.' This adds essential meaning beyond the bare schema types.

    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 it handles 'localStorage / sessionStorage ops' and enumerates operations (get, set, remove, etc.). This is specific and distinct from sibling tools, which are mostly unrelated.

    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 includes guidance: 'Storage is per-origin, so prefer driving it on a tab already at the right origin.' It also clarifies which parameters are required for which operations. However, it doesn't explicitly state when not to use this tool or compare to alternatives, though no similar sibling exists.

    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 implies a read-only operation without explicit state modification. Since no annotations are provided, the description carries the burden, and it adequately conveys the tool's non-destructive nature. However, it could explicitly state that no state is changed.

    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 wasted words, directly front-loaded with the verb 'List'. Perfectly concise for the information it conveys.

    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 tool's simplicity (no parameters, no output schema), the description is largely complete. It covers purpose and output. Missing details like whether all windows are included could be added, but the current level is sufficient.

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

    Parameters4/5

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

    With zero parameters and 100% schema coverage, the baseline is 4. The description adds value by specifying exactly what fields (IDs, titles, URLs) are returned, which is beyond the empty 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 'List all open browser tabs with their IDs, titles, and URLs' clearly states the action (list), resource (tabs), and specific output fields. It distinguishes from siblings like zen_page_info or zen_close_tab by focusing on listing all tabs rather than acting on one.

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

    Usage Guidelines2/5

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

    No guidance is given on when to use this tool versus alternatives like zen_switch_tab or zen_page_info. The description does not specify prerequisites or exclusions, leaving the agent to infer usage from context alone.

    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. It only states that the tool stops the pinger, but does not disclose any behavioral traits such as side effects on tab state, whether it's reversible by start, or any confirmation needed. The description is minimal for such a simple action, but could benefit from clarifying what happens to active keep-alive pings.

    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: two sentences and an Args section, with no unnecessary words. It front-loads the core purpose and immediately explains the parameter.

    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 tool with one parameter, no output schema, and simple action, the description is complete. It covers what the tool does, how to use the parameter, and the expected behavior. There is no missing information needed for an agent to use it 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 sole parameter tab_ids is described in the text: 'Tabs to stop pinging. Omit (or pass null) to stop all.' This adds meaning beyond the schema's type and default, explaining both how to select specific tabs and how to stop all. Given 0% schema description coverage, the description compensates well.

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

    Purpose5/5

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

    The description clearly states the verb 'stop' and the resource 'keep-alive pinger', and distinguishes from the sibling 'zen_keep_alive' tool which starts the pinger. It also explains the scope (some or all tabs) using the tab_ids parameter.

    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 context on when to use this tool: to stop keep-alive pinging for specific tabs (by providing tab_ids) or all tabs (by omitting or passing null). While it does not explicitly mention when not to use it, the simplicity of the tool makes the usage obvious.

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

  • Behavior3/5

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

    No annotations are provided, so the description carries full burden. It implies sequential execution and speed benefits but does not disclose failure behavior, atomicity, rate limits, or idempotency. This leaves gaps about what happens when a command fails.

    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 and well-structured: a one-sentence summary, followed by parameter details, a list of actions, and an example. Every sentence adds value without redundancy.

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

    Completeness3/5

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

    Given the complexity of multiple actions and no output schema, the description covers usage well but lacks information about the return format (e.g., array of results per command) and error handling. This is a notable gap for a tool that chains multiple commands.

    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 provides minimal detail (array of objects with additionalProperties), but the description compensates excellently: it explains each command is a dict with 'action' and parameters, lists available actions, and gives a concrete example. Schema coverage is 0% so the description does the heavy lifting.

    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: 'Run multiple commands in a single request for speed.' It identifies the resource (commands) and action (run multiple), and distinguishes itself from the sibling tool zen_parallel by mentioning concurrency differences.

    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 an explicit alternative: 'For true concurrency across tabs, prefer zen_parallel.' It also explains how to target specific tabs with tabId. However, it does not specify when not to use batch versus individual action 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?

    No annotations provided, so the description carries the full burden. It explains the basic operation (text extraction) and parameter behavior (default to active tab), but does not disclose potential side effects, permissions, or limitations (e.g., dynamic content handling). It is adequate but lacks deeper behavioral context.

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

    Conciseness4/5

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

    The description is concise: a one-line purpose and a brief parameter note. It does not waste words, though the parameter section could be more structured (e.g., bulleted). Overall, it is appropriately sized and front-loaded.

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

    Completeness3/5

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

    Given the tool's simplicity (1 parameter, no output schema), the description covers the main purpose and parameter usage but omits details about return values, error conditions, or edge cases (e.g., empty pages). It meets minimum viability but lacks 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?

    The description adds meaning beyond the schema by explaining the 'tab_id' parameter's default (active tab) and recommending usage for non-active tabs. However, schema coverage is 0%, so the description must compensate, and it does so effectively with contextual guidance.

    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 states 'Extract all readable text from the current page' which is a specific verb+resource. It also distinguishes from the sibling tool 'zen_page_text_by_tab_id' by noting they do the same thing now, clarifying the tool's role.

    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 when to use tab_id (for non-active tabs) and compares with the sibling 'zen_page_text_by_tab_id', advising preference for this tool. This provides clear guidance on tool selection.

    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 explains the exponential backoff mechanism, default behavior (retry on any error), and parameter details (max_attempts includes first try, backoff_ms doubles). It could add more context about idempotency or side effects, but the main behaviors are disclosed.

    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 with a clear verb + resource statement followed by a parameter list. It is front-loaded and uses efficient formatting. The 'Args:' block could be slightly more compact, but overall it's well-structured.

    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 tool with 4 parameters, no output schema, and no annotations, the description covers the input semantics well. However, it does not mention the return value or what happens on success/failure. Given that the tool wraps a command, the return likely mirrors the command's output, but explicit mention would improve completeness.

    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 schema has 0% description coverage, but the description thoroughly explains each parameter: command is a dict like zen_batch entries, max_attempts is total tries, backoff_ms initial wait doubling each retry, and on_errors substrings to filter errors. This adds significant meaning beyond the schema's type and default values.

    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: 'Wrap any command in exponential-backoff retry.' It specifies the command shape matches zen_batch entries, distinguishing it from sibling tools like zen_batch and others that execute commands but do not include retry logic.

    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 retrying commands with exponential backoff but does not explicitly state when not to use it or mention alternatives. It provides parameter details but lacks guidance on scenarios where retry is inappropriate.

    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?

    With no annotations, the description carries full burden. It discloses the buffer limit of 500 entries and the types of captured messages, which is fairly transparent. It does not mention side effects or what happens on re-toggle, but the core behavior is clear.

    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 two sentences, front-loads the purpose, and provides essential behavioral details without extraneous information.

    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 tool's low complexity, the description covers the main behavioral aspects (toggle, buffer, retrieval). Minor omissions like buffer clearing on re-toggle are not critical.

    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 0%, so the description should compensate. While 'enabled' and 'tab_id' are implied by 'Toggle console capture on a tab', the description does not explicitly explain parameter semantics (e.g., whether null tab_id refers to current tab). The parameters are simple, so minimal addition is acceptable.

    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 toggles console capture on a tab, specifies the types of messages captured, and mentions the buffer limit. It distinguishes itself from the sibling tool 'zen_console_logs' by indicating that the retrieval tool is separate.

    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 context for when to use the tool (enable capture) and directs to 'zen_console_logs' for retrieval, but does not explicitly state when not to use it or mention alternatives.

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

  • Behavior3/5

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

    No annotations are provided, so the description must convey all behavioral details. It states the action (switch focus) but does not disclose any side effects, permission requirements, or error handling. The behavior is simple, so a score of 3 is appropriate.

    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 two sentences, front-loading the purpose. Every word is necessary, with no extraneous information.

    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 tool's simplicity (one parameter, no output schema), the description covers the essential aspects: purpose, parameter, and input source. It could mention behavior on invalid tab IDs, but overall it is sufficiently complete.

    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 defines tab_id as an integer with no description. The description compensates by explaining the parameter's purpose and providing guidance on where to obtain valid IDs ('get IDs from zen_tabs'), adding significant 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 action ('Switch focus') and the resource ('specific browser tab'), distinguishing it from sibling tools like zen_back, zen_forward, zen_close_tab, and zen_new_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?

    The description provides a clear prerequisite: 'get IDs from zen_tabs'. It does not specify when not to use this tool, but for a simple action this is adequate.

    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?

    Describes matching order (CSS selector → name → label → placeholder) and value setters (.value, .checked, value for selects). Discloses return format (per-key results). With no annotations, this provides solid behavioral insight, though side effects or error handling are not mentioned.

    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 succinct sentences plus an example; no unnecessary words. Front-loaded with the main purpose.

    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?

    Covers essential behavior (matching, setting, return) despite no output schema. Missing explanation of `tab_id` parameter, but overall adequate for a form fill tool.

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

    Parameters4/5

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

    Schema coverage is 0%, but description explains the `fields` parameter in detail with matching strategy and example. The `tab_id` parameter is not described, but it's optional with a default, so the main parameter is well covered.

    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 'Fill many fields at once via fuzzy matching', distinguishing it from sibling like zen_fill (likely single field) and zen_forms. Uses specific verb 'fill' and resource 'fields'.

    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?

    Implicitly conveys when to use (batch filling with fuzzy matching), but does not explicitly contrast with alternatives or provide when-not-to-use conditions.

    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?

    With no annotations provided, the description carries the full burden. It explains the operations (op: add/clear/list/log/clearLog) and effects (block/redirect), disclosing that 'block' cancels requests. However, it does not mention what 'list' or 'log' return, which is a minor gap.

    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: a single-line purpose, a one-sentence use case, and a bullet list of arguments. Every sentence adds value, and the structure is easy to scan.

    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 explains parameters and usage, it does not describe the return value or behavior of 'list' and 'log' operations. Given no output schema, this gap reduces completeness. The tool is straightforward, but output behavior is missing.

    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 description coverage is 0%, but the description fully explains each parameter: op (with allowed values), patterns (regex array), and effect (default block). This adds crucial meaning beyond the minimal schema (title and type only).

    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 explicitly states the tool's function: 'Block, log, or redirect HTTP requests by URL regex.' This clearly identifies the verb ('intercept') and the resource ('HTTP requests'), distinguishing it from sibling tools like zen_navigate or zen_cache.

    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 a concrete use case: 'Useful to suppress analytics/ads during agent runs (3–10× page speed-up).' It does not explicitly list when not to use or name alternatives, but the context is clear enough for an agent to decide.

    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 provided, so description carries full burden. It discloses speed/cost benefits, default fields, and a cap on limit (500). It implies read-only nature via 'extract', but doesn't explicitly state no side effects or error handling. Still, it's fairly transparent for a query 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 well-structured: a one-line summary, a benefit statement, then an Args section. It is concise, with every sentence adding value. 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?

    Given no output schema, the description could hint at return format (e.g., array of objects). It implies extraction but doesn't explicitly state output shape. However, the examples and context are sufficient for an agent to infer behavior. Slight gap in explicit output description.

    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 0%, but the description thoroughly explains each parameter: selector (CSS selector), fields (defaults and examples like 'data-foo', 'bounds'), limit (max 500), and tab_id (optional). This fully compensates for missing 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 it extracts multiple fields from elements matching a CSS selector, and explicitly contrasts with zen_js for efficiency. It lists default fields and how to get extras, distinguishing it from siblings like zen_links or zen_js.

    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 says 'Much faster and cheaper than calling zen_js per element' and explains how to use the 'fields' parameter. It provides context for when to use this tool over alternatives, but could mention when to use zen_js instead (e.g., complex JavaScript evaluation).

    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 when urls are given, each origin gets opened briefly in a temp tab to read localStorage. This discloses a behavioral side effect. No annotations are present, so the description carries full burden. It does not mention file overwrite behavior, but core behavior is 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 very concise: a one-line summary, a use case paragraph, and an Args section. Every sentence adds value without redundancy. It is well-structured and front-loaded.

    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 tool's simplicity (2 parameters, no output schema, no annotations), the description covers the main behavioral aspects. It lacks details on whether the same file name overwrites, but the use case and parameter explanations are sufficient for an agent to understand the tool's purpose and side effects.

    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 schema has 0% description coverage, so the description must compensate. It fully explains both parameters: 'name' becomes a filename under ~/claude-zen-sessions/, and 'urls' specifies origins whose cookies and localStorage are snapshotted with the note about temporary tabs.

    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 snapshots cookies and per-origin localStorage to disk. It provides a specific use case (login once, save, load for parallel agents) and distinguishes from siblings like zen_load_session and zen_cookies.

    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 use case for when to use this tool (saving authenticated sessions for later use by parallel agents). While it does not explicitly list alternatives or when-not-to-use, the context implies that zen_load_session is for loading and zen_cookies for manipulating cookies directly.

    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?

    With no annotations, the description carries full burden. It discloses that it returns immediately upon element found, uses polling, and parameter defaults. Could mention behavior on timeout or element not found.

    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 and well-structured with a brief intro followed by an Args section. Every sentence is informative and earns its place, with no 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?

    All parameters are explained, and behavior is described. Missing return value details (e.g., what is returned upon success/failure) would complete it, but the tool's purpose is waiting, so this is acceptable.

    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 0%, but the description thoroughly explains each parameter: selector with examples, timeout default, poll_interval, and optional tab_id. This adds significant value beyond the raw 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 it waits for a CSS selector to appear and become visible, with a specific verb and resource. It distinguishes itself from sleep and among sibling wait tools by emphasizing return on element found, not fixed duration.

    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 advises to use instead of sleep when waiting for dynamic content. While it does not enumerate all alternatives, the guidance is clear and actionable.

    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 covers parallel execution, race condition warnings, and return format (list of result lists). With no annotations, it carries full burden. It lacks details on error handling or partial failure behavior, but the core behavioral traits are well communicated.

    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?

    Front-loaded with a concise summary, then a key warning, then return info, then parameter details. Every sentence adds value; no fluff. The example is well-placed. Structure is clean and efficient.

    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 adequately covers what the tool returns (list of result lists). It explains the complex input parameter in detail and provides a realistic use case. No critical gaps remain for the tool's intended use.

    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 0%, but the description fully defines the 'sequences' parameter: it explains the structure (list of lists of command dicts), the command format (action + params, same as zen_batch), and provides a concrete example. This adds critical meaning beyond the minimal 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 runs command sequences in parallel, one per tab, distinguishing it from serial batch execution. The verb 'run' and resource 'command sequences' are explicit, and the context of parallel vs serial 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 advises to include tabId in commands to avoid race conditions, which is critical guidance. It provides an example with tabId. However, it does not mention when not to use this tool or contrast with siblings like zen_batch or zen_workflow, missing a chance to clarify usage boundaries.

    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 provided, but the description explains idempotency, behavior when tab is alive vs. unloaded, and that it waits for page load. This is transparent for a wake operation.

    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: two paragraphs plus a bulleted arg. No fluff, front-loaded with the main action. Efficiently structured.

    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?

    No output schema, but the description covers the key behavior and uses case. Lacks explicit return info but is adequate for a simple wake command.

    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 0% coverage but description adds 'The tab ID to wake (get IDs from zen_tabs)'. This provides meaningful context beyond the integer type, compensating for the lack of schema description.

    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 'Revive a tab that Zen's Tab Unloader may have discarded' with a specific verb and resource. It distinguishes from siblings by mentioning zen_keep_alive as an alternative for repeated use.

    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 guidance: 'Use before targeting a tab that might have been idle for a while. Prefer zen_keep_alive for tabs you'll touch repeatedly.' This covers when to use and when to use an alternative.

    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?

    Explains it is slower and moves the user's cursor, but lacks details on failure modes or side effects beyond cursor movement.

    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?

    Well-structured with a brief intro, usage hint, and Args section, no unnecessary information.

    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?

    Good coverage of parameters and purpose, but lacks description of return value or error handling; acceptable for a click tool.

    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?

    Adds meaning to all six parameters, including the relationship between selector and coordinates, and coordinate_space explanation, compensating for 0% schema coverage.

    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 clicks using the real OS mouse pointer for pages that reject synthetic DOM events, distinguishing it from zen_click.

    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 recommends preferring zen_click unless a page ignores synthetic clicks, providing 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?

    The description fully discloses the mechanism (fires no-op JS, resets idle timer), lifecycle (replaces existing keep-alive, auto-stops on bridge restart), and constraints (minimum 10s interval, default 60s, should be under unloader timeout). No annotations are provided, but the description compensates completely.

    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 with a punchy first sentence, followed by a mechanism explanation, usage guidance, and parameter documentation. Every sentence contributes essential information without redundancy, making it efficient for an AI agent.

    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 moderate complexity, the description covers mechanism, usage, lifecycle, and parameters completely. It addresses replacement behavior, auto-stop, and interval constraints. No output schema exists, but the description doesn't need to explain return values as the tool is side-effect focused.

    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?

    With 0% schema coverage, the description fully explains both parameters: tab_ids ('Tab IDs to keep loaded') and interval_seconds ('How often to ping each tab. Minimum 10s, default 60s. Should be well under Zen's unloader timeout'). This adds significant meaning beyond the schema's type 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 tool's purpose (keeping tabs warm to prevent unloading) using specific verbs like 'Keep tabs warm', 'starts a background pinger', and 'fires a no-op JS evaluation'. It distinguishes itself from the sibling tool zen_keep_alive_stop and provides context on when it should be used (start of parallel multi-tab work).

    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 the tool ('Use this at the start of parallel multi-tab work'), how to drive tabs in parallel via zen_parallel or individual commands, and when to stop (zen_keep_alive_stop). Also notes that it replaces any existing keep-alive for the same tabs and auto-stops on bridge restart.

    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?

    With no annotations, the description fully discloses behavior: extension acks request, reloads ~100ms later, background script reconnects, content scripts survive. It also explains the version dependency, giving a complete picture of what happens.

    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 well-structured paragraphs, front-loaded with the main purpose, then details. Every sentence adds value, no wasted words. The length is appropriate for the complexity.

    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 zero parameters, no output schema, and no annotations, the description covers all necessary aspects: when to use, what happens, and limitations. It is fully complete for an agent to invoke 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?

    There are zero parameters, and schema coverage is 100%. The description adds no param info because none is needed. It instead focuses on behavior, which is appropriate and fully compensates for the lack of parameters.

    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 hot-reloads the ZenLink extension, distinguishing it from sibling tools like zen_reload_tab which reloads a tab. It uses a specific verb ('hot-reload') and resource ('ZenLink extension'), leaving 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 Guidelines5/5

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

    The description explicitly says to use it after editing extension source, avoiding manual toggling in about:addons. It also notes the limitation (first install requires manual toggle), providing clear context for when to use and when not.

    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

ZenLink-MCP MCP server

Copy to your README.md:

Score Badge

ZenLink-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/JayQuan-McCleary/ZenLink-MCP'

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