Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool has a clearly distinct purpose with no ambiguity. The browser tools handle web interactions, desktop tools manage OS-level operations, and screenshot tools capture different screen areas, all with specific, non-overlapping functions.

    Naming Consistency5/5

    All tools follow a consistent snake_case naming pattern with clear verb_noun structure (e.g., browser_click, desktop_clipboard_read, screenshot_fullscreen). The naming is predictable and organized by domain prefixes (browser_, desktop_, screenshot_).

    Tool Count4/5

    With 20 tools, the count is slightly high but reasonable for the broad scope of desktop automation covering browser control, OS interactions, and screenshot functionality. Each tool serves a distinct purpose, though some could potentially be consolidated.

    Completeness5/5

    The toolset provides comprehensive coverage for desktop automation, including full browser control (navigation, interaction, reading), OS operations (clipboard, keyboard, mouse, windows), and screenshot capabilities (fullscreen, region, window). No obvious gaps exist for the stated purpose.

  • Average 3.1/5 across 20 of 20 tools scored.

    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
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.

    If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.

    MCP servers without a LICENSE cannot be installed.

  • 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?

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the basic action but lacks critical details: whether this requires a loaded page, what happens if the selector isn't found (e.g., error or no-op), if it waits for elements, or any side effects like navigation triggers. This is inadequate for a tool that interacts with a dynamic environment like a browser.

    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, direct sentence with zero wasted words. It front-loads the core action ('Click an element') and specifies the method ('by CSS selector'), making it highly efficient and easy to parse.

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

    Completeness2/5

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

    Given the complexity of browser interaction (dynamic pages, potential errors) and no annotations or output schema, the description is incomplete. It doesn't address failure modes, prerequisites, or return values, leaving significant gaps for an AI agent to use this tool safely and effectively in a real-world scenario.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema fully documents all parameters (selector, button, clickCount) with descriptions and defaults. The description adds no additional parameter semantics beyond implying CSS selector usage, which is already covered in the schema. This meets the baseline for high schema coverage.

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

    Purpose4/5

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

    The description clearly states the action ('click') and target ('element on the page by CSS selector'), which is specific and unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'desktop_mouse_click', which performs a similar action but in a different context (desktop vs browser).

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an open browser page), exclusions, or comparisons to siblings like 'desktop_mouse_click' or other browser tools for different interactions.

    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 disclosure. 'Read content from the current page' implies a read-only operation, but it doesn't specify what happens if no page is open, whether it returns structured data or raw text, or any performance considerations. For a tool with no annotation coverage, this leaves significant behavioral gaps unaddressed.

    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, efficient sentence that gets straight to the point with zero wasted words. It's appropriately sized for a simple tool and front-loads the core functionality without unnecessary elaboration.

    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 no annotations and no output schema, the description is insufficiently complete. It doesn't explain what format the read content returns (text string, HTML structure, etc.), doesn't mention error conditions, and provides no context about the browsing environment required. For a tool with 2 parameters and rich sibling tools, more completeness is needed.

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

    Parameters3/5

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

    Schema description coverage is 100%, providing complete documentation for both parameters. The description adds no parameter-specific information beyond what's in the schema. According to scoring rules, when schema coverage is high (>80%), the baseline is 3 even with no param info in the description, which applies here.

    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 ('Read') and resource ('content from the current page'), making the purpose immediately understandable. It distinguishes from siblings like browser_navigate or browser_click by focusing on reading rather than navigation or interaction. However, it doesn't explicitly differentiate from desktop_clipboard_read or other reading tools, keeping it at 4 rather than 5.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to prefer browser_read over browser_screenshot for content extraction, or when to use it versus desktop_clipboard_read. There's no context about prerequisites (e.g., requires an open browser page) or exclusions, leaving the agent with minimal usage direction.

    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. While 'Take a screenshot' implies a read operation, it doesn't address permissions needed, whether it requires an active browser session, what format the screenshot returns, or any error conditions. This leaves significant behavioral gaps for a tool with no annotation coverage.

    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, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized and front-loaded, with every word earning its place in conveying 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?

    Given no annotations and no output schema, the description is insufficiently complete. It doesn't explain what the screenshot returns (e.g., image data format, file path), error handling, or dependencies on browser state. For a tool with 2 parameters and behavioral uncertainty, more context is needed.

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

    Parameters3/5

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

    Schema description coverage is 100%, with both parameters ('fullPage' and 'selector') well-documented in the schema. The description adds no additional parameter information beyond what the schema provides, which is acceptable given the high schema coverage but doesn't enhance 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 action ('Take a screenshot') and target ('current browser page'), providing a specific verb+resource combination. However, it doesn't differentiate from sibling screenshot tools like 'screenshot_fullscreen' or 'screenshot_region', which would require explicit distinction for a perfect score.

    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 offers no guidance on when to use this tool versus alternatives. With multiple screenshot-related siblings (screenshot_fullscreen, screenshot_region, screenshot_window), there's no indication of when this browser-specific tool is preferred over desktop screenshot tools or vice versa.

    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 disclosure. It mentions the action but lacks details on permissions, side effects (e.g., if typing triggers events), error handling, or performance aspects. This is inadequate for a mutation tool with zero annotation coverage.

    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, efficient sentence that directly states the tool's function without redundancy. It's front-loaded and wastes no words, making it easy for an agent to parse quickly.

    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 mutation tool with no annotations and no output schema, the description is insufficient. It doesn't cover behavioral traits, error cases, or return values, leaving significant gaps in understanding how the tool operates in practice.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema fully documents all parameters. The description doesn't add any semantic details beyond what the schema provides (e.g., it doesn't explain selector syntax or text formatting). Baseline 3 is appropriate when the schema handles parameter 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 ('type text') and target ('into an input element on the page'), providing a specific verb+resource combination. However, it doesn't explicitly differentiate from sibling tools like 'desktop_keyboard_type' which might have overlapping functionality, preventing a perfect score.

    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 offers no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., requiring a browser to be open), exclusions, or comparisons to sibling tools like 'browser_click' or 'desktop_keyboard_type', leaving the agent without contextual usage cues.

    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 provides minimal behavioral details. It mentions launching by path/name/URI but doesn't disclose critical traits like permissions needed, error handling, platform dependencies, or what happens if the app fails to launch. This is inadequate for a mutation tool with zero annotation coverage.

    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, efficient sentence with zero waste. It's front-loaded with the core purpose and avoids unnecessary elaboration, 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.

    Completeness2/5

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

    Given this is a mutation tool with no annotations and no output schema, the description is incomplete. It lacks details on behavior, error cases, platform specifics, and return values, which are essential for an agent to use it effectively in a desktop automation context.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema fully documents parameters. The description adds no additional meaning beyond implying the target can be a path, name, or URI, which is already covered in the schema's description. Baseline 3 is appropriate as the schema does the heavy lifting.

    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 ('Launch') and resource ('application'), specifying it can be done by path, name, or URI. It distinguishes from browser-related siblings but doesn't explicitly differentiate from other desktop tools like desktop_window_focus or desktop_keyboard_type, which is why it's not a 5.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives is provided. For example, it doesn't clarify when to use desktop_app_launch versus browser_open for URIs, or versus other desktop tools for automation tasks, 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.

  • 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 the action but does not disclose behavioral traits like whether this requires user permissions, overwrites existing clipboard content, or has platform-specific limitations.

    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, efficient sentence with zero waste. It is front-loaded and directly conveys the core functionality 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?

    Given the lack of annotations and output schema, the description is incomplete. It does not address key contextual aspects like error conditions, return values, or system dependencies, which are important for a clipboard operation.

    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 description coverage is 100%, with the parameter 'text' fully documented in the schema. The description adds no additional meaning beyond what the schema provides, so the baseline score of 3 is appropriate.

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

    Purpose4/5

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

    The description clearly states the verb ('write') and resource ('text to the clipboard'), making the purpose immediately understandable. However, it does not explicitly differentiate from its sibling 'desktop_clipboard_read', which is a minor gap.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives like 'desktop_clipboard_read' or other clipboard-related methods. It lacks context about prerequisites, such as requiring clipboard access permissions.

    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 the action ('Press') but doesn't disclose behavioral traits like whether this requires focus on a specific window, if it simulates key presses vs. system events, potential side effects, or error conditions. The description is minimal and lacks critical operational context for a system interaction tool.

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

    Conciseness5/5

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

    The description is a single, efficient sentence with zero waste. It's front-loaded with the core purpose and includes helpful examples. Every word earns its place, making it easy to parse quickly.

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

    Completeness2/5

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

    Given the complexity of a system-level keyboard interaction tool with no annotations and no output schema, the description is insufficient. It doesn't cover behavioral aspects, error handling, or what happens after execution. For a tool that could have significant side effects, more context is needed to ensure safe and correct usage.

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

    Parameters3/5

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

    Schema description coverage is 100%, with the schema fully documenting the 'keys' parameter and providing examples. The description adds no additional parameter semantics beyond what's in the schema. According to rules, with high schema coverage, the baseline is 3 even without param info in the description.

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

    Purpose4/5

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

    The description clearly states the action ('Press') and the resource ('keyboard shortcut') with examples. It distinguishes this from sibling tools like desktop_keyboard_type (which types text) and desktop_mouse_click, but doesn't explicitly differentiate from all siblings. The purpose is specific and unambiguous.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives like desktop_keyboard_type or browser_type. It lacks context about appropriate scenarios, prerequisites, or exclusions. The examples imply usage for common shortcuts but offer no explicit usage rules.

    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 but only mentions simulation of key presses. It doesn't disclose critical behavioral traits like requiring window focus, potential side effects (e.g., unintended input), or that it operates at the OS level rather than within an app. This is inadequate for a mutation tool with zero annotation coverage.

    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, efficient sentence with zero wasted words. It's front-loaded with the core action and includes a clarifying parenthetical, 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.

    Completeness2/5

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

    Given this is a mutation tool with no annotations and no output schema, the description is incomplete. It lacks details on behavioral context (e.g., focus requirements, error conditions) and doesn't explain what happens after typing (e.g., no return values mentioned). This leaves significant gaps 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.

    Parameters3/5

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

    Schema description coverage is 100%, so the schema fully documents both parameters ('text' and 'delayMs'). The description adds no additional meaning beyond what's in the schema, such as examples or constraints, meeting the baseline for high coverage.

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

    Purpose4/5

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

    The description clearly states the action ('Type text using the keyboard') and the mechanism ('simulates key presses'), which distinguishes it from browser-based typing tools. However, it doesn't explicitly differentiate from sibling 'desktop_keyboard_hotkey' or 'browser_type', which would require a 5.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives like 'browser_type' for web contexts or 'desktop_keyboard_hotkey' for shortcut keys. It lacks context about prerequisites (e.g., needing a focused window) or exclusions.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the basic action but lacks details on permissions needed (e.g., accessibility settings), side effects (e.g., cursor visibility), or constraints (e.g., screen bounds). This is a significant gap for a tool that interacts with the desktop environment.

    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, efficient sentence that directly states the tool's purpose without any wasted words. It's front-loaded and easy to parse, 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.

    Completeness2/5

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

    Given the complexity of desktop interaction tools and the lack of annotations and output schema, the description is incomplete. It doesn't cover behavioral aspects like error handling, coordinate system, or interaction with other desktop tools, leaving gaps for an AI agent to use it correctly in context.

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

    Parameters3/5

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

    Schema description coverage is 100%, with clear descriptions for 'x', 'y', and 'smooth' parameters. The description adds no additional meaning beyond what the schema provides, such as coordinate system details (e.g., origin at top-left) or 'smooth' animation specifics. Baseline 3 is appropriate as the schema does the heavy lifting.

    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') and target ('mouse cursor to screen coordinates'), which is specific and unambiguous. However, it doesn't distinguish this tool from sibling tools like 'desktop_mouse_click', which might also involve mouse movement, though the distinction is somewhat implied by the name.

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

    Usage 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. For example, it doesn't specify if this is for desktop interactions only (vs. browser tools) or when to prefer 'desktop_mouse_click' for combined move-and-click actions. There's no mention of 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 provided, so the description carries the full burden of behavioral disclosure. It states the action ('focus a window') and matching logic ('partial match'), but lacks critical details: what happens if multiple windows match (e.g., first match, error), whether it requires specific permissions or window states, and what the expected outcome is (e.g., window brought to foreground). For a mutation tool with zero annotation coverage, 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 a single, efficient sentence with zero waste. It is front-loaded with the core action and includes essential detail (partial matching) without redundancy. Every word earns its place, 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.

    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 (a mutation operation with no annotations and no output schema), the description is incomplete. It doesn't explain behavioral traits like error handling, matching precedence, or system requirements. While the schema covers the parameter, the lack of output schema and annotations means the description should provide more context about results and constraints, which it fails to do adequately.

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

    Parameters3/5

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

    Schema description coverage is 100%, with the parameter 'title' fully documented in the schema as 'Window title to match (partial)'. The description adds no additional meaning beyond what the schema provides, such as examples of partial matching or edge cases. With high schema coverage, the baseline score of 3 is appropriate.

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

    Purpose4/5

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

    The description clearly states the verb ('focus') and resource ('a window'), and specifies the matching mechanism ('by title (partial match)'). It distinguishes from sibling tools like desktop_window_list (which lists windows) and desktop_window_resize (which resizes windows), though it doesn't explicitly name these alternatives. The purpose is specific and actionable.

    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 doesn't mention prerequisites (e.g., whether the window must be visible or active), nor does it compare to siblings like desktop_window_list (for finding windows) or desktop_app_launch (for opening applications). Usage is implied but not explicitly defined.

    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 disclosure. It mentions the action but doesn't describe important behavioral aspects: whether this requires specific permissions, what happens if multiple windows match the partial title, whether changes are immediate or animated, or what happens on failure. The description is minimal and lacks operational 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 extremely concise - a single 6-word phrase that communicates the core functionality without any waste. It's front-loaded with the essential action and target, making it easy to parse quickly.

    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 mutation tool with 5 parameters, no annotations, and no output schema, the description is insufficiently complete. It doesn't address critical context like error conditions, coordinate reference frames, what 'partial' matching entails, or what happens when only some parameters are provided. The agent would need to guess about important operational details.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema already documents all 5 parameters with clear descriptions. The description adds no additional parameter semantics beyond what's in the schema - it doesn't explain coordinate systems, units, or how partial title matching works. Baseline 3 is appropriate when schema does the heavy lifting.

    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 ('Resize and/or move') and the target ('a window by title'), providing specific verb+resource. However, it doesn't explicitly differentiate from sibling tools like desktop_window_focus or desktop_window_list, which also operate on windows by 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?

    No guidance is provided on when to use this tool versus alternatives. For example, it doesn't mention whether this should be used instead of desktop_window_focus for positioning, or how it relates to other window manipulation tools. The description only states what it does, not when it's 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 provided, the description carries full burden but only states the basic action. It doesn't disclose behavioral traits like whether it requires user consent, saves files to disk, returns image data, has rate limits, or affects system state. For a screen capture tool with zero annotation coverage, this 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 a single, efficient sentence with zero waste. It's front-loaded with the core action and resource, making it immediately scannable and appropriately sized for the tool's complexity.

    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 screen capture tool with no annotations and no output schema, the description is incomplete. It doesn't explain what happens after capture (e.g., returns image bytes, saves to file), error conditions, or platform dependencies. Given the sensitivity of screen capture operations, more context is needed.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema fully documents all four parameters (x, y, width, height). The description adds no parameter-specific information beyond implying rectangular region capture. Baseline 3 is appropriate when the schema does the heavy lifting.

    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 ('capture') and resource ('rectangular region of the screen'), making the purpose immediately understandable. It distinguishes from sibling tools like 'screenshot_fullscreen' and 'screenshot_window' by specifying a region rather than fullscreen or window capture, though it doesn't explicitly name those 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?

    The description provides no guidance on when to use this tool versus alternatives like 'screenshot_fullscreen' or 'screenshot_window'. It doesn't mention prerequisites (e.g., screen access permissions) or typical use cases (e.g., capturing specific UI elements).

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool captures a window via partial title match, implying it's a read operation (screenshot) that likely doesn't modify the window. However, it doesn't disclose critical behaviors like what happens on match failures, whether it captures the entire window or just visible parts, permissions needed, or output format (e.g., image data). This leaves significant gaps for a tool with potential side effects.

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

    Conciseness5/5

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

    The description is a single, efficient sentence with zero waste. It's front-loaded with the core action ('capture') and resource ('window'), followed by the key constraint ('by title (partial match)'). Every word earns its place, 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.

    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 (involving window capture with partial matching), no annotations, and no output schema, the description is incomplete. It doesn't explain the return value (e.g., image format, error handling), behavioral nuances, or how it integrates with sibling tools like 'desktop_window_list'. For a tool that could fail or produce varied outputs, more context is needed.

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

    Parameters3/5

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

    The input schema has 100% description coverage, with the 'title' parameter fully documented in the schema. The description adds minimal value beyond the schema by reiterating 'partial match', but doesn't provide additional context like examples of partial matching, case sensitivity, or how to handle ambiguous titles. Baseline 3 is appropriate as the schema does the heavy lifting.

    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 ('capture') and resource ('a specific window'), specifying it's for screenshots. It distinguishes from sibling 'screenshot_fullscreen' and 'screenshot_region' by focusing on windows, but doesn't explicitly differentiate from 'browser_screenshot' which might also capture browser windows. The purpose is specific but could be more precise about sibling 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?

    The description provides no guidance on when to use this tool versus alternatives like 'screenshot_fullscreen', 'screenshot_region', or 'browser_screenshot'. It mentions 'by title (partial match)' which hints at a usage condition, but doesn't explain when this is preferable or what happens if multiple windows match. No explicit alternatives or exclusions are 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?

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the action ('Close') but doesn't explain what happens upon closure (e.g., whether it terminates the browser process, closes all tabs, or affects other tools). This leaves gaps in understanding the tool's effects and potential side effects.

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

    Conciseness5/5

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

    The description is a single, clear sentence with no wasted words. It's front-loaded with the core action and resource, making it highly efficient 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?

    Given the tool's simplicity (0 parameters, no output schema), the description is adequate but minimal. It covers the basic purpose but lacks details on behavioral aspects (e.g., what 'close' entails) and usage context, which could be important for an agent to avoid errors like closing a non-existent browser.

    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 0 parameters, and the schema description coverage is 100%, so there are no parameters to document. The description doesn't need to add parameter details, earning a high baseline score for this dimension.

    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 ('Close') and the target resource ('the browser instance'), which is specific and unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'browser_open' or 'desktop_window_focus', which might also involve browser window management, so it doesn't reach the highest score.

    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 doesn't mention prerequisites (e.g., requiring an open browser instance), exclusions, or related tools like 'browser_open' for starting a browser, 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.

  • 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 states what the tool does but lacks behavioral details such as output format (e.g., image file, base64), permissions needed, side effects, or error conditions. For a capture tool with no annotation coverage, this is a significant gap in 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, efficient sentence that front-loads the core purpose without unnecessary words. Every part earns its place by specifying the capture scope, making it highly concise and well-structured for quick understanding.

    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 a single parameter with full schema coverage, the description is incomplete. It doesn't explain what is returned (e.g., image data, file path), potential errors, or system dependencies, leaving gaps for a tool that performs a system-level operation.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema already documents the 'display' parameter with its description. The description adds no additional parameter semantics beyond implying the scope ('entire screen or a specific display'), which aligns with but doesn't enhance the schema. Baseline 3 is appropriate when schema does the heavy lifting.

    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 ('capture') and target ('entire screen or a specific display'), making the purpose immediately understandable. It distinguishes from sibling 'screenshot_region' and 'screenshot_window' by specifying full-screen capture, though it doesn't explicitly name those alternatives. The description avoids tautology by not just restating the tool name.

    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 this tool (for full-screen or display-specific capture) versus alternatives like 'screenshot_region' or 'screenshot_window', but it doesn't explicitly state when-not-to-use or name the alternatives. The context is clear but lacks explicit guidance on tool selection, leaving some interpretation to the agent.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action ('Click') but does not describe what happens after the click (e.g., whether it triggers UI events, if it's blocking, or potential side effects like focus changes). It lacks details on permissions, error conditions, or interaction constraints, leaving significant gaps for a tool that performs a physical 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 a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is front-loaded with the core action ('Click at screen coordinates'), making it easy to understand at a glance. Every part of the sentence contributes 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?

    Given the tool's moderate complexity (performing a physical mouse action) and no annotations or output schema, the description is minimally adequate. It covers the basic purpose but lacks behavioral details (e.g., what 'click' entails, error handling) and usage context. It is complete enough to understand the tool's intent but insufficient for safe or effective use without additional inference.

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

    Parameters3/5

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

    The input schema has 100% description coverage, so the schema fully documents all parameters (x, y, button, clickCount). The description adds no additional meaning beyond implying coordinate-based clicking, which is already clear from the schema. This meets the baseline score of 3 for high 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?

    The description clearly states the specific action ('Click at screen coordinates') and resource ('using the mouse'), distinguishing it from sibling tools like 'desktop_mouse_move' (which moves without clicking) and 'browser_click' (which is browser-specific). It precisely conveys the tool's function without redundancy.

    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 to prefer 'desktop_mouse_click' over 'browser_click' (for desktop vs. browser contexts) or 'desktop_keyboard_hotkey' (for keyboard shortcuts), nor does it specify prerequisites like needing mouse control or screen access.

    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 but only states the basic action without disclosing behavioral traits like whether navigation blocks execution, handles redirects/errors, requires page load, or has timeouts. For a navigation tool with zero annotation coverage, this leaves significant behavioral 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?

    The description is a single, efficient sentence that front-loads the core purpose with zero wasted words. Every word earns its place, making it immediately understandable without unnecessary elaboration.

    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 a navigation tool that likely has important behavioral considerations (loading states, errors, timeouts), the description is incomplete. It covers the basic action but misses critical context about how the tool behaves and what results to expect.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema fully documents both parameters. The description doesn't add any parameter semantics beyond what the schema provides (URL parameter and waitUntil options). This meets the baseline for high 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?

    The description clearly states the specific action ('Navigate') and target resource ('current browser page to a URL'), distinguishing it from siblings like browser_open (opens new page) or browser_read (reads content). It uses precise terminology that leaves no ambiguity about the tool's function.

    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 context ('current browser page') but doesn't explicitly state when to use this versus alternatives like browser_open for new pages or desktop navigation tools. It provides basic context but lacks explicit guidance on prerequisites or exclusion 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 carries the full burden of behavioral disclosure. It states the action but does not mention potential side effects (e.g., opening a new window, resource usage), permissions required, or error conditions (e.g., invalid URL handling). For a tool that launches an external application with no annotation coverage, this 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 a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is front-loaded and every part of the sentence contributes to understanding 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 the tool's moderate complexity (launching a browser with two parameters) and no annotations or output schema, the description is minimally adequate. It covers the basic action but lacks details on behavior, errors, or integration with sibling tools, leaving gaps for an AI agent to infer usage correctly.

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

    Parameters3/5

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

    Schema description coverage is 100%, with both parameters (url and headless) fully documented in the schema. The description does not add any additional meaning beyond what the schema provides, such as explaining URL validation or headless mode implications. Baseline 3 is appropriate when the schema 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 specific action ('Launch Chromium browser and navigate to a URL'), including the resource (Chromium browser) and the operation (launch and navigate). It distinguishes itself from siblings like browser_navigate (which navigates an already open browser) and desktop_app_launch (which launches other desktop applications).

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

    Usage Guidelines4/5

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

    The description implies usage for opening a new browser instance, which differentiates it from browser_navigate (for existing browsers) and desktop_app_launch (for non-browser apps). However, it lacks explicit guidance on when to use this versus alternatives like browser_navigate or when not to use it (e.g., if a browser is already open).

    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 tool's behavior by specifying what information is returned (titles, process names, positions) but lacks details on format, ordering, or potential limitations (e.g., hidden windows, performance impact). This provides basic transparency but misses richer 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 a single, efficient sentence that front-loads the core purpose ('List all visible windows') and adds specific details without waste. Every word contributes to understanding 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 annotations, no output schema, and 0 parameters, the description is complete for a simple read operation but lacks output details (e.g., return format, error handling). It covers the basic 'what' but not the 'how' of results, leaving gaps for an agent to infer behavior.

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

    Parameters4/5

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

    There are 0 parameters, and schema description coverage is 100%, so no parameter documentation is needed. The description appropriately does not discuss parameters, earning a high baseline score for not adding unnecessary information.

    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 specific action ('List') and resource ('all visible windows') with precise attributes ('titles, process names, and positions'). It distinguishes from siblings like desktop_window_focus or desktop_window_resize by focusing on enumeration rather than manipulation.

    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 gathering window information but does not explicitly state when to use this tool versus alternatives (e.g., screenshot_window for visual capture or desktop_window_focus for interaction). No exclusions or prerequisites are mentioned, leaving usage context inferred rather than guided.

    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 basic behavior of reading clipboard text but lacks details like whether it requires specific permissions, if it only works with text (vs. images), or potential errors (e.g., empty clipboard). The description is accurate but minimal, not fully compensating for the lack of 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 a single, clear sentence with no wasted words, front-loading the core purpose ('Read the current clipboard text content'). It is appropriately sized for a simple tool with no parameters, making it easy to understand quickly.

    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 (0 parameters, no output schema, no annotations), the description is minimally complete but lacks depth. It does not explain return values (e.g., format of text, handling of empty clipboard) or behavioral nuances, which could be helpful for an AI agent despite the low complexity.

    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 0 parameters, and schema description coverage is 100%, so no parameter documentation is needed. The description does not add parameter information, which is appropriate here. A baseline of 4 is applied as it adequately handles the absence of parameters without introducing confusion.

    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 specific action ('Read') and target resource ('current clipboard text content'), distinguishing it from sibling tools like 'desktop_clipboard_write' which performs the opposite operation. It precisely communicates what the tool does without ambiguity.

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

    Usage Guidelines4/5

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

    The description implies usage context by specifying 'clipboard text content,' suggesting it should be used when text data is needed from the clipboard. However, it does not explicitly state when to use this tool versus alternatives or mention any prerequisites, such as ensuring the clipboard contains text rather than other data types.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

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

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

Card Badge

mcp-desktop-tools MCP server

Copy to your README.md:

Score Badge

mcp-desktop-tools 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/K1ta141k/mcp-desktop-tools'

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