Skip to main content
Glama
ColorSource

cloakbrowser-mcp

by ColorSource

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool has a distinct purpose, covering specific browser actions like clicking, typing, scrolling, navigating, and extracting data. There is no overlap; even similar-sounding tools like browser_snapshot, browser_screenshot, and browser_read_page serve clearly different needs.

    Naming Consistency5/5

    All tools follow a consistent `browser_verb` pattern in snake_case, such as browser_launch, browser_click, browser_new_page. This predictable naming makes it easy for an agent to infer functionality.

    Tool Count4/5

    With 28 tools, the count is higher than the typical 3-15 range for a well-scoped server. However, the complex domain of browser automation justifies this many operations, and each tool serves a unique and necessary function.

    Completeness5/5

    The tool set covers the full lifecycle: launch, page management, navigation, interaction, data extraction, network control, cookies, and PDF generation. Only minor features like page refresh or file upload are missing, but the core workflows are fully supported.

  • Average 3.9/5 across 28 of 28 tools scored. Lowest: 2.6/5.

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

    • No community issues in the last 6 months
    • 5 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under Apache 2.0.

  • This repository includes a README.md file.

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

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

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

  • If you are the author, simply .

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

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

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

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

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

How is the quality score calculated?

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

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

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

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

Tool Scores

  • Behavior2/5

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

    No annotations are present, so the description carries full burden. It only states 'close' without detailing side effects (e.g., whether the page is removed, memory freed, or any prerequisites). The behavioral impact is under-communicated.

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

    Conciseness3/5

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

    The description is short but includes a somewhat redundant Args section. It could be more concise, e.g., 'Close a page by its ID.' Every sentence is short, but the structure is minimal.

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

    Completeness2/5

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

    For a simple tool with a single required parameter and no annotations, the description lacks completeness. It does not explain how to obtain page IDs, potential errors, or its relationship to sibling tools like 'browser_list_pages'.

    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%, meaning the parameter name 'page_id' is not described. The description adds 'Page ID to close', which is essentially a repetition. No extra semantics like format, source, or valid values are provided.

    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 page by ID, using specific verb 'close' and resource 'page'. It distinguishes from sibling 'browser_close' which likely does not take an ID, though the difference is not explicit.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives like 'browser_close' or 'browser_list_pages'. The description lacks context for when page ID is known versus when to use 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. Description does not disclose behavioral traits such as side effects, permissions needed, or cookie format. Merely describes the basic operation.

    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?

    Very short description; uses Args format but provides no extra details. Could include more structured information without being verbose.

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

    Completeness3/5

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

    Output schema exists, so return format is handled. Param count is 1 and it's described minimally. Lacks context about cookie structure or behavior, but sufficient for a simple getter.

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

    Parameters2/5

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

    Schema coverage is 0%. Description adds minimal explanation for page_id ('Target page ID'), which is already implied by the name. No additional meaning beyond schema.

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

    Purpose5/5

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

    Clearly states the tool gets all cookies from the page's browser context, using specific verb+resource. Distinguished from siblings like browser_set_cookies.

    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 browser_set_cookies or browser_downloads. No context about prerequisites or when to avoid.

    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. It does not disclose that JavaScript execution can modify the page state or have side effects. The description is too sparse for a potentially destructive operation.

    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 very short and front-loaded, with no wasted words. The argument list format is efficient. Could be structured as a more formal docstring, but brevity is acceptable.

    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 an output schema (not shown), the description lacks information about execution context (e.g., synchronous? sandboxed?), error handling, or limitations. More behavioral context is needed for a 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?

    Schema has 0% description coverage, but the description provides one-line explanations for both parameters ('Target page ID', 'JavaScript expression to evaluate'), adding minimal value beyond the 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?

    Description clearly states the tool executes JavaScript and returns the result, with specific verb and resource. It is distinct from sibling tools like browser_click, browser_navigate, etc., which perform different actions.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives. It does not mention when to prefer browser_evaluate over other browser tools for custom scripts 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 provided. The description does not explain what happens with the generated PDF (e.g., downloaded, file path, returned) or mention side effects. It only lists parameter descriptions without behavioral context beyond the action.

    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 concise and front-loaded with the main action. The Args section is structured and clear, though slightly redundant with the schema.

    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 an output schema, the description omits important context: where the PDF is saved, whether it's returned in the response, and any file naming conventions. This lack of completeness forces the agent to infer behavior.

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

    Parameters3/5

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

    Schema coverage is 0%, so description must add meaning. It briefly describes each parameter (page_id as target, format options, print_background as include background graphics) but lacks detail on default values and exact format specifications.

    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 'Save the current page as a PDF file' clearly states the verb and resource, distinguishing from sibling tools like browser_screenshot (image) and browser_read_page (text).

    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 browser_screenshot or browser_read_page. The description does not mention any prerequisites or 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, the description carries the full burden of behavioral disclosure. It only states the action ('set') without revealing side effects, permission requirements, or whether cookies are appended or replaced. 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 one sentence plus a parameter breakdown. No redundant information, every part is earned.

    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 an output schema exists, the description does not address return values, behavioral contexts, or preconditions. For a mutation tool, it lacks completeness regarding effects, but given tool simplicity, it is minimally adequate.

    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?

    Despite 0% schema coverage, the description usefully specifies that 'cookies' is a list of dicts with 'name, value, domain, path', adding significant semantics beyond the input schema's generic 'array of objects' with additionalProperties.

    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 cookies') and the context ('in the page's browser context'), distinguishing it from related tools like browser_get_cookies. It is specific and not a tautology, though it could elaborate on 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?

    The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no mention of edge cases like adding vs. overwriting cookies. It is purely declarative.

    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?

    Mentions returning an updated snapshot but fails to disclose behavior when no forward history exists, or other side effects; no annotations provided to fill gaps.

    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 concise sentences with front-loaded action, 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?

    For a simple navigation tool with an output schema, the description adequately states purpose and return type, but parameter documentation is weak and lacks error handling context.

    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 description only gives 'Target page ID' which adds minimal 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.

    Purpose5/5

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

    Description clearly states the verb 'navigate forward' and resource 'browser history', distinguishing it from sibling 'browser_back'.

    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 usage for forward navigation but does not provide when-not-to-use or alternatives like 'browser_back' for backward steps.

    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 like side effects, prerequisites (e.g., element visibility), or error conditions. It only states the action and basic return, lacking 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?

    Description is front-loaded with action and result, followed by clean parameter list. No extraneous words; every sentence serves a 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?

    For a simple hover tool with output schema, the description covers the essential action and return. Could mention behavior on missing element or asynchronous aspects, but overall fairly 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%, so description must compensate. It adds minimal meaning: 'page_id' is 'Target page ID' and 'ref' is 'Ref ID from snapshot'. This is helpful but not extensive; baseline 3 given lack of enums or further detail.

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

    Purpose5/5

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

    The description clearly states the action (hover over an element by ref ID) and the output (returns an updated snapshot). It distinguishes from sibling tools like browser_click or browser_drag by specifying '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 on when to use this tool vs alternatives (e.g., browser_click, browser_scroll). No when-not-to-use or context provided.

    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 only states it goes back and returns a snapshot. It omits details like what happens if history is empty or if multiple steps can be taken, providing 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?

    The description is two sentences plus a single arg line, front-loading the core purpose with zero filler.

    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 navigation action and existence of an output schema, the description is mostly complete. It lacks error cases but is sufficient for the use case.

    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%, but the description adds a brief explanation for the sole parameter: 'Target page ID'. This provides minimal extra meaning beyond the schema 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 clearly states 'Navigate back in browser history' using a specific verb and resource, distinguishing it from siblings like browser_forward and browser_navigate.

    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 (navigating back) but does not explicitly state when to use it compared to alternatives like browser_forward or browser_navigate, nor does it mention prerequisites.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden. It states it returns an updated snapshot but does not disclose behavioral traits like whether it triggers events, requires specific page states, or is destructive. The mutation aspect is implied but not explicit.

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

    Conciseness4/5

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

    The description is short and well-structured with a lead sentence followed by a bulleted list of arguments. It avoids unnecessary details, making it efficient, though it could be slightly more concise by integrating the list into the main sentence.

    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 existence of an output schema, mentioning the updated snapshot is sufficient. However, the description lacks information on error handling, prerequisites (e.g., element must be a <select>), and behavior on no match. The tool has 3 optional parameters, and the description covers their usage but not edge cases.

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

    Parameters3/5

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

    Schema coverage is 0%, so the description must compensate. It explains value, label, and index well (e.g., 'Option value attribute to select'). However, required parameters page_id and ref are only named, not described beyond their names, which are self-explanatory but lack full context.

    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 selects a dropdown option by ref ID, using a specific verb and resource. It distinguishes itself from sibling tools like browser_click or browser_type by focusing on select elements and requiring value, label, or index.

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

    Usage Guidelines4/5

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

    The description specifies to provide one of value, label, or index, giving clear selection criteria. It does not explicitly mention when not to use or alternatives, but the context of sibling tools implies this is for dropdowns only, which is adequate.

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

  • Behavior2/5

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

    No annotations are provided, so the description must fully disclose behavior. It only states the removal action but omits side effects, such as behavior if the rule does not exist or if the page is invalid. The output is not described.

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

    Conciseness5/5

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

    The description is highly concise with two sentences for the main purpose and two lines for parameters, containing no extraneous 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?

    The tool is simple, but the description omits details about edge cases (e.g., rule not found) and does not explain the output despite an output schema being present. It is adequate but not fully comprehensive.

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

    Parameters4/5

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

    The input schema lacks parameter descriptions, but the description adds meaning by explaining page_id as 'Target page ID' and url_pattern as 'Same pattern used in browser_network_intercept,' clarifying the required relationship.

    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 as 'Remove a network interception rule,' using a specific verb and resource. This distinguishes it from sibling tools like browser_network_intercept, which adds rules.

    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 by noting that url_pattern should be the same as used in browser_network_intercept, but it does not explicitly state when to use this tool versus alternatives or provide 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?

    With no annotations, the description carries the full burden. It only says 'Press a keyboard key' and 'Returns an updated snapshot,' lacking details on focus requirements, key validity, or underlying DOM events. This is insufficient for a mutating 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 concise: two sentences plus an Args list. The action is front-loaded, and every sentence serves a purpose. 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's simplicity, the description covers basic purpose and parameters. It mentions return of an updated snapshot but omits context like focus requirements or behavior with modifiers. Completeness is adequate but not thorough.

    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 add meaning. It clarifies page_id as 'Target page ID' and key as 'Key name (DOM KeyboardEvent key)', providing useful context beyond the schema's minimal type/title. However, it could specify exact key 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 the action: 'Press a keyboard key' with examples such as Enter, Tab, Escape, etc. It distinguishes this tool from siblings like browser_click and browser_type by specifying key presses.

    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 sending special keyboard keys but does not explicitly state when to use this tool over alternatives like browser_type or browser_click. No exclusions or prerequisites 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?

    With no annotations, the description bears full responsibility. It describes the clear parameter that mutates state by clearing the buffer, but omits details like whether logs persist across navigations or if buffer is cumulative. The basic reading operation is clear, but side effects and retention behavior are not fully disclosed.

    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 sentence for purpose and a bullet list for parameters. No redundancy, each word adds value. The structure is 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?

    The description states what is retrieved (console output and JS errors) and mentions the clear parameter. The output schema exists (though not shown), so return format documentation is partially offloaded. However, it does not specify whether output is an array, how errors are differentiated from logs, or what happens if no output exists. Slightly incomplete for a complete 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?

    The input schema has 0% description coverage, so the description's parameter explanations are essential. It adds "Target page ID" for page_id and "Clear the message buffer after reading" for clear, which clarifies the boolean's effect beyond the default value in the schema. For a simple two-parameter tool, this is adequate but not extensive.

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

    Purpose5/5

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

    Clearly states the tool retrieves browser console logs and JS errors. Verb "Get" plus resource "browser console output" makes purpose unambiguous and distinct from siblings like browser_evaluate or browser_read_page.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives. For instance, it does not explain when to prefer this over browser_evaluate for retrieving logs or interacting with console. The description lacks contextual usage hints.

    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 description must carry full burden. Mentions 'Returns an updated snapshot' but lacks details on 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.

    Conciseness5/5

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

    Two sentences with a list of parameters. No redundant words, front-loaded with purpose and return 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?

    Adequate for a simple scroll tool with three parameters and an output schema. Could mention parameter constraints (e.g., valid direction values), but serviceable.

    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 meaning for all three parameters: page_id as target, direction as 'up'/'down', amount as pixels. This fills the gap effectively.

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

    Purpose5/5

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

    Clearly states the specific verb 'scroll' on the resource 'page', and distinguishes it from sibling tools like browser_navigate, browser_click, 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 versus alternatives like browser_navigate or browser_wait. The description is purely functional.

    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 description carries full burden. It discloses return info (filenames, local paths) and retrieval timing, but does not clarify idempotency, side effects like clearing list, or error states.

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

    Conciseness5/5

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

    Four short sentences front-load the purpose and usage, with no extraneous information. Efficient and 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?

    Given a single parameter and an output schema (not shown), the description covers return values (filenames, paths) and usage context. Lacks mention of empty list scenarios or error conditions, but adequate for a simple 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?

    Only one parameter (page_id) with minimal description ('Target page ID') in the description. Schema coverage is 0%, and the description adds little beyond what is already in the schema, failing to provide format details or usage 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 retrieves a list of downloaded files on a page, with a specific verb and resource, distinguishing it from sibling tools like browser_navigate or browser_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?

    Explicitly advises to call this after clicking a download link to retrieve the path, providing clear context for use. Lacks explicit 'when not to use' but sufficient for common scenarios.

    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 description carries full burden. It mentions returning an updated snapshot but does not disclose behaviors like waiting for state change, error handling on invalid ref, or side effects on disabled elements.

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

    Conciseness5/5

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

    Description is concise: one sentence plus a short bullet list, no unnecessary words, and front-loaded with the main 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 presence of an output schema (not shown), the description covers the action, parameters, and return value (updated snapshot) adequately. Lacks details on failure modes but sufficient for typical use.

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

    Parameters4/5

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

    With 0% schema description coverage, the description compensates well by explaining all three parameters: 'page_id: Target page ID', 'ref: Ref ID from snapshot', and 'checked: True to check, False to uncheck', adding clear 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 'Check or uncheck a checkbox/radio by ref ID' with a specific verb and resource, distinguishing it from sibling tools like browser_click which handles generic clicks.

    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 over alternatives like browser_click for checkboxes; usage is implied by the action but lacks when-not or exclusion criteria.

    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 only states the action without detailing side effects, permissions, or return behavior. 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?

    Extremely concise: purpose stated in first line, then parameter details. No wasted words.

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

    Completeness4/5

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

    For a simple tool with one optional parameter and output schema present, the description covers essential behavior. Minor gap: no mention of return value, but output schema likely fills that.

    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?

    Only parameter 'url' is described as 'URL to navigate to after creating the page', adding meaningful context beyond the schema which lacks descriptions.

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

    Purpose5/5

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

    The description clearly states the tool opens a new browser page/tab, distinguishing it from siblings like browser_navigate (which navigates an existing page) and browser_close_page.

    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?

    Implied usage: use to create a new page; but no explicit when-to-use vs alternatives, nor 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, but the description is straightforward about behavior. It does not disclose any side effects or constraints beyond listing, which is sufficient for a simple read 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?

    Single sentence, no wasted words. Front-loads the action and outputs.

    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?

    With no parameters and an output schema, the description provides all necessary context. It is complete for a list 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?

    No parameters exist, and schema coverage is 100%. The description adds no extra 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 the action (list) and resource (open pages) with specific outputs (IDs and URLs). It differentiates from sibling tools like browser_close_page or browser_navigate.

    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 or alternatives. Usage is implied by the tool's purpose: to see open pages. But lacks exclusions or context.

    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?

    Discloses auto-retry behavior for moved elements and that it returns an updated snapshot. No annotations present, so description carries the full burden and does well.

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

    Conciseness5/5

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

    Two short, focused paragraphs. First states the action and key behavior, second defines parameters. 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?

    Adequate for a simple click tool. Mentions retry and output. Could mention dependency on a prior snapshot, but not critical given tool name and sibling context.

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

    Parameters4/5

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

    With 0% schema coverage, the description adds meaning: page_id targets a page, ref is the ref ID with example format. This compensates for 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?

    The description clearly states the action (click) and the resource (element by ref ID from snapshot), distinguishing it from other browser tools like hover or type.

    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 or avoid this tool, nor comparison to alternatives like browser_select or browser_type. Usage is implied from the context of snapshots.

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

  • Behavior3/5

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

    The description adds 'release all resources,' which provides some behavioral context beyond the tool's name. However, with no annotations, it does not disclose potential side effects (e.g., losing unsaved state) or prerequisites (e.g., browser must be launched).

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

    Conciseness5/5

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

    Two sentences, no filler. Every word earns its place: the action, what it releases, and when to call it.

    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 parameters and an existing output schema, the description adequately covers the tool's purpose and usage context. It could be enhanced by explicitly noting that it is for the stealth browser and mentioning potential outcomes (e.g., session ends).

    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 and the schema coverage is 100%. The description does not need to add parameter details, so it meets the baseline for zero-parameter tools.

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

    Purpose5/5

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

    The description clearly states the action: 'Close the stealth browser and release all resources.' It distinguishes from siblings like browser_close_page, which closes a single page instead of the entire browser.

    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?

    Includes the instruction 'Always call when done,' which implies it is a cleanup step called at the end of a session. However, it does not explicitly state when not to use it or mention alternative tools like browser_close_page for closing individual pages.

    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 and discloses many traits: anti-detection enabled by default, headless/headed modes, humanization, proxy support, persistent profiles, and auto-detection features. No contradictions found.

    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 long but well-structured: a summary line followed by a parameter list. Each line adds value; no obvious fluff. Slightly verbose but justified by parameter count.

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

    Completeness4/5

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

    Given the complexity (15 parameters, no output schema description), the description covers the tool's purpose, all parameters, and default behaviors. It omits potential error conditions or prerequisites, but is largely complete for agent usage.

    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%, so the description adds extensive meaning: it explains each parameter with defaults, examples, and behavior (e.g., viewport_width default varies by mode). This goes far beyond the schema's bare types and 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 'Launch a stealth CloakBrowser instance.' It specifies the verb 'Launch' and resource 'CloakBrowser instance', and distinguishes itself from sibling tools like navigate, click, etc. which are post-launch actions.

    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 starting a browser session, but does not explicitly state when to use this vs. alternatives (e.g., browser_new_page). No when-not-to-use or prerequisites 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?

    Describes stripping non-content and token efficiency, but with no annotations, missing details like error handling, auth requirements, or whether links/images are preserved. Adequate but not exhaustive.

    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?

    Very concise: three sentences plus bullet arguments. No wasted words, front-loaded with purpose. Efficiently communicates key 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 two simple parameters and an output schema, description covers purpose, usage, and parameter semantics. Lacks a bit on behavioral edge cases but overall 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?

    Adds meaning beyond schema by explaining page_id and max_length with defaults. Schema had only titles, so description adds value, though could include more detail like format of page_id.

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

    Purpose5/5

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

    Description clearly states it returns page content as clean, readable markdown, stripping navigation/ads. Differentiates from sibling tools like screenshot or snapshot by focusing on textual content.

    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?

    Indicates 'Best for reading articles, docs, search results' providing clear usage context. Does not explicitly state when not to use or name alternative sibling tools, but context is sufficient.

    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 the burden. It discloses that the tool modifies network request behavior (block, mock, passthrough) and explains mock action parameters. However, it does not mention persistence scope or side effects on future requests.

    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 front-loaded with a clear one-line intro, followed by a well-structured Args list. It is efficient, though the Args could potentially be integrated more succinctly into prose.

    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?

    All 6 parameters (2 required) are documented in the description. The output schema exists, so return value explanation is unnecessary. The tool's functionality is fully covered for an interception 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?

    With 0% schema description coverage, the description adds extensive meaning via the Args section, detailing each parameter's purpose (e.g., url_pattern as glob pattern, action options). This fully compensates for the schema 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 'Intercept network requests — block, mock, or passthrough' using specific verbs and a clear resource. It effectively distinguishes from sibling tools like browser_navigate or browser_network_continue.

    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 outlines parameters and actions but does not provide explicit guidance on when to use block vs mock vs continue, or when not to use this tool. Usage is implied but not differentiated.

    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?

    Without annotations, the description carries full burden. It discloses humanization defaults (non-center, curved path, randomized timing) and fallback mechanism for HTML5 drag-and-drop, but does not mention failure scenarios or side effects beyond retry.

    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 clear and well-structured with a purpose statement followed by behavior details and a parameter list, but slightly longer than necessary; could be more concise.

    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 presence of an output schema and the description's coverage of parameters, behavior, and return ('returns an updated snapshot'), the tool is adequately described, though prerequisites and error handling are omitted.

    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?

    Despite 0% schema description coverage, the description provides detailed parameter explanations (e.g., humanize, duration_ms clamped, fallback) that add significant meaning beyond the schema's property definitions.

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

    Purpose5/5

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

    The description clearly states the action ('Drag one element to another') and the resource ('by their [@eN] ref IDs from browser_snapshot'), distinguishing it clearly from sibling tools like browser_click or browser_hover.

    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 explains when to use the tool (to drag elements) and discusses humanization and fallback behavior, but does not explicitly specify when not to use it or compare it to alternatives, though none are obvious.

    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 covers key behavioral traits: auto-waiting for network idle and DOM stable, handling Cloudflare challenges, and returning a snapshot. It does not mention side effects or error handling, but the disclosed behavior is sufficient 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.

    Conciseness5/5

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

    The description is very concise, with only 5 lines. It front-loads the main action, then adds key features (auto-wait, Cloudflare, snapshot), followed by a clear parameter list. Every sentence adds value without redundancy.

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

    Completeness5/5

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

    Given the presence of an output schema (which documents return values) and the tool's straightforward navigation purpose, the description is complete. It covers behavior, parameters, and special handling, leaving no critical gaps for an AI 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?

    Schema description coverage is 0%, but the description adds brief explanations for each parameter: page_id (target page ID), url (URL to navigate), timeout (navigation timeout in ms). This adds meaning beyond the schema's basic types, though more detail on page_id context could be helpful.

    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 'Navigate to a URL' with a specific verb and resource. It differentiates from sibling tools like browser_back and browser_forward by focusing on direct URL navigation, and mentions auto-wait and Cloudflare handling, which are unique to this 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 clear context for usage (navigating to a URL with auto-wait and Cloudflare handling), but does not explicitly state when not to use it or mention alternatives like browser_new_page. The context is clear enough for most scenarios.

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

  • Behavior4/5

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

    With no annotations, the description discloses key behaviors: clears field by default, can press Enter, and returns an updated snapshot. It does not mention limitations or error handling, but for a typing tool, this is sufficient.

    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 moderately concise with a clear intro followed by structured Args. It could be slightly more concise, but the information is well-organized and front-loaded.

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

    Completeness5/5

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

    The tool has 5 parameters (3 required) and an output schema (not shown). The description covers all parameters, explains defaults, and mentions return value (updated snapshot). This is complete for the complexity.

    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 coverage, the description provides an Args section explaining each parameter: page_id, ref (accepts with/without '@'), text, clear (default True), submit (default False). This adds meaning 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?

    The description clearly states 'Type text into an input by its [@eN] ref ID from browser_snapshot', specifying the action, resource, and context. It distinguishes from sibling tools like browser_click and browser_select by focusing on text input.

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

    Usage Guidelines4/5

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

    The description explains when to use (for typing into input fields after taking a snapshot) and provides default behaviors (clear field, submit option). It does not explicitly list when not to use or alternatives, but the context is clear enough.

    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 fully carries the burden of behavioral transparency. It describes the wait condition (no DOM mutations and network idle) and the return information (whether settled and mutation count). It does not explicitly state that it is non-destructive, but the behavior is well covered.

    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 and well-structured, starting with a clear one-line purpose, followed by usage guidance, and then an Args list. Every sentence adds value with no redundancy.

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

    Completeness5/5

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

    For a simple wait tool with two parameters and an output schema, the description provides all necessary context: what it does, when to use it, parameter details, and what it returns. It is complete without being verbose.

    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 adds meaning by documenting both parameters in an Args block: page_id as 'Target page ID' and timeout_ms with default 5000. This clarifies usage beyond the schema's type and title alone.

    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 the page to settle (no DOM mutations + network idle).' This provides a specific verb ('Wait') and resource ('page'), and defines the settling condition. It distinguishes from sibling tools that perform actions like clicking or navigating.

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

    Usage Guidelines4/5

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

    The description gives explicit usage context: 'Use after actions that trigger dynamic content loading.' This helps the agent decide when to invoke it. It also mentions the return values, but does not explicitly state when not to use it or name alternatives, which is a minor gap.

    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 must cover behavioral aspects. It explains the output (file path to PNG, element count) and that it captures an annotated screenshot. While it doesn't explicitly state that it is read-only or has no side effects, the nature of a screenshot implies no mutation. Minor lack of explicit safety disclosure.

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

    Conciseness5/5

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

    Description is concise at 6 sentences, with no redundant information. It is front-loaded with the main purpose, followed by details on element numbering, usage guidance, return value, and arguments. Every sentence contributes value.

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

    Completeness4/5

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

    Given the tool is a screenshot with overlays, the description covers purpose, usage, parameters, and return value. The existence of an output schema (not shown but signaled) reduces the need to detail return structure. It lacks error conditions or permissions, but for a browser tool these are often implied. Adequately complete.

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

    Parameters4/5

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

    Schema description coverage is 0%, so the description adds critical meaning. It explains page_id as 'Target page ID' and full_page as 'Capture entire scrollable page (default: viewport only).' This goes beyond the schema's bare titles, providing functional context for each 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 action: 'Take an annotated screenshot with element indices overlaid.' It specifies the resource (browser page) and the key feature (annotations with element indices), distinguishing it from sibling tools like browser_snapshot which is text-based.

    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: 'Use when you need VISUAL context — images, charts, CAPTCHAs, or layout.' Also advises when not to use: 'For most interactions, prefer browser_snapshot() instead.' This provides clear guidance and 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?

    No annotations are provided, so the description carries full burden. It discloses that it returns interactive elements with ref IDs, that full mode includes text context, and that it is faster/cheaper than screenshots. It does not mention if it captures only visible content or entire page, but overall good disclosure.

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

    Conciseness5/5

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

    The description is concise (about 10 lines) and well-structured with bullet points and examples. It front-loads the main purpose and avoids fluff.

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

    Completeness5/5

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

    Given the tool's simplicity (3 parameters, output schema exists), the description covers what the tool does, how to use it, parameter details, and comparison to siblings. With output schema present, return values need not be explained.

    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 all three parameters: page_id (target page), full (boolean with default false, and behavior difference), and max_length (default 12000). It adds meaning beyond schema by explaining what the parameters do.

    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 the accessibility tree, specifies it is the primary way to understand pages, and distinguishes from browser_screenshot by being faster, cheaper, and more reliable. It also notes it returns ref IDs for interaction.

    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 to call this before interacting with a page and to prefer it over browser_screenshot for deciding what to click. It provides clear context but does not explicitly state when not to use it (e.g., for visual layout).

    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

cloakbrowser-mcp MCP server

Copy to your README.md:

Score Badge

cloakbrowser-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/ColorSource/cloakbrowser-mcp'

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