Skip to main content
Glama

Server Details

Headless browser primitives for AI agents when sites need real JS rendering.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsB

Average 3.4/5 across 17 of 17 tools scored. Lowest: 2.6/5.

Server CoherenceA
Disambiguation5/5

Each tool has a clearly distinct purpose: navigation, interaction (click, type, scroll, select), data extraction (get_html, get_text, get_links, extract_table), state management (cookies, PDF, screenshot), and JavaScript evaluation. No two tools overlap in functionality.

Naming Consistency5/5

All tool names follow a consistent verb_noun or verb_preposition pattern in snake_case (e.g., get_cookies, fill_form, close_browser). No mixing of conventions or ambiguous verb styles.

Tool Count4/5

With 17 tools, the count is slightly above the typical well-scoped range (3-15) but still reasonable for a comprehensive browser automation server. Each tool serves a distinct purpose, and the set does not feel bloated.

Completeness4/5

The tool set covers core browser automation tasks: navigation, interaction, data extraction, and state management. Minor gaps exist (e.g., no hover, double-click, or file upload), but the provided tools handle the majority of common workflows effectively.

Available Tools

17 tools
clickBInspect

Click an element matched by CSS selector or visible text.

ParametersJSON Schema
NameRequiredDescriptionDefault
textNo
buttonNoleft
selectorNo
double_clickNo
Behavior3/5

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

Annotations already indicate readOnlyHint=false (mutation) and openWorldHint=true (external side effects). The description adds no additional behavioral context beyond stating the action. It does not disclose, for instance, whether a navigation event follows the click or if there are any prerequisites.

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, short sentence that conveys the core purpose without any fluff. Every word is meaningful and front-loaded.

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 4 parameters and no output schema, the description omits important details: what the tool returns, whether double clicks are supported, and potential navigational consequences. It is too minimal for an autonomous agent to fully understand the tool's behavior.

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

Parameters2/5

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

With 0% schema description coverage, the description must compensate for parameter meanings. It clarifies that selector and text are alternative locators, but it does not explain the button parameter (left/right) or double_click behavior. The defaults are not mentioned.

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

Purpose5/5

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

The description states the verb 'click' and the resource 'element', and specifies two matching methods: CSS selector or visible text. This clearly differentiates it from sibling tools like type_text or fill_form.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus alternatives. For example, it does not mention that select_option should be used for dropdowns or that fill_form is for filling multiple fields. The description is too vague to help the agent decide.

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

close_browserAInspect

Close the underlying browser, freeing resources.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already indicate this is a destructive operation (readOnlyHint false). The description adds 'freeing resources' but does not clarify post-close behavior or any side effects beyond the browser closure.

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

Conciseness5/5

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

The description is a single, front-loaded sentence that conveys the core action without any extraneous 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?

The description is minimal but sufficient for a zero-parameter, no-output tool. However, mentioning that subsequent tool calls on the closed browser will fail would add completeness.

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

Parameters4/5

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

No parameters exist, and schema coverage is 100%. The description needs no parameter details; baseline 4 is appropriate.

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

Purpose5/5

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

The description uses a specific verb 'Close' and resource 'underlying browser', clearly indicating the tool's action. It is easily distinguishable from sibling tools like navigate or click.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. While the tool is simple, stating when to call it (e.g., at end of session) would improve usability.

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

evaluateAInspect

Evaluate JavaScript in the page context. Use return for values or an expression.

ParametersJSON Schema
NameRequiredDescriptionDefault
scriptYes
Behavior3/5

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

Annotations already indicate readOnlyHint=false (destructive possible) and openWorldHint=true. The description adds that it runs in 'page context' but does not elaborate on the potential to modify page state or execution side effects. It provides minimal additional behavioral context beyond annotations.

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

Conciseness5/5

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

The description is two short sentences with no unnecessary words. It is front-loaded with the purpose and includes a practical usage tip. Every sentence adds value.

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

Completeness4/5

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

Given the tool's simplicity (one parameter, no output schema), the description covers the essential purpose and usage. It could explicitly mention that the result is returned, but the hint about `return` implies this. Annotations fill some gaps.

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

Parameters3/5

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

With schema description coverage at 0%, the description partially compensates by noting that `script` should contain JavaScript with optional `return`. However, it does not explain parameter format, constraints, or how results are returned. More detail would be beneficial.

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 evaluates JavaScript in the page context, which is a specific verb+resource. It also provides a usage hint about using `return`. This distinguishes it from all sibling tools, which are about DOM 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 a clear usage hint ('Use `return` for values or an expression') but does not explicitly state when to use this tool versus alternatives. However, since no sibling tool does JavaScript evaluation, 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.

extract_tableB
Read-only
Inspect

Extract a standard HTML table as a list of row objects keyed by header.

ParametersJSON Schema
NameRequiredDescriptionDefault
selectorNotable
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the description adds the output format detail. However, it does not disclose edge cases like missing tables, multiple tables, or malformed HTML, which would be helpful.

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

Conciseness5/5

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

The description is a single sentence of 13 words, starting with the action. It is concise and waste-free.

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

Completeness2/5

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

The description is incomplete for a tool with no output schema and minimal parameter documentation. It fails to mention behavior on no match, multiple matches, or tables without headers, leaving significant gaps.

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

Parameters1/5

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

The only parameter 'selector' has a default value but no description in the schema or in the tool description. With 0% schema coverage, the description should explain what the selector does, but it does not, leaving the agent to guess.

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

Purpose5/5

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

The description clearly states the verb 'Extract' and the resource 'standard HTML table', and specifies the output format as 'list of row objects keyed by header', which is distinct from sibling tools like get_html or get_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 versus alternatives (e.g., get_html, get_text), nor when not to use it. The description lacks explicit usage context.

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

fill_formAInspect

Fill multiple form fields from a list of {selector, value} and optionally submit.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsYes
submitNo
Behavior3/5

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

Annotations indicate it is not read-only (readOnlyHint=false) and may have side effects (openWorldHint=true). The description adds the optional submit behavior but does not explain other aspects like how errors are handled or whether form submission triggers navigation.

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

Conciseness4/5

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

The description is a single sentence that is front-loaded with the key action and input format. It is concise and to the point, though it could benefit from structuring the submit behavior separately.

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

Completeness3/5

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

For a tool with two parameters and no output schema, the description is adequate but lacks details on submission behavior (e.g., whether it waits for page load after submit) and error handling. It covers the basic purpose but leaves questions for an agent.

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

Parameters4/5

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

Despite 0% schema description coverage, the description adds meaning by specifying that 'fields' is a list of {selector, value} objects, clarifying the expected structure beyond the vague 'additionalProperties: true' in the schema. This is helpful for understanding parameter usage.

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

Purpose5/5

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

The description clearly states the tool's purpose: filling multiple form fields from a list of selector-value pairs with optional submission. It uses a specific verb ('fill') and resource ('form fields'), distinguishing it from siblings like 'type_text' (single field) or 'select_option'.

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 over alternatives (e.g., when to use 'fill_form' vs 'type_text' or 'select_option' for individual fields). Also, no context is given for the 'submit' parameter's implications.

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

get_cookiesA
Read-only
Inspect

Return all cookies for the current browser context.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the description adds no additional behavioral context. No mention of output format, domain scope, or potential errors. Adequate but not exemplary.

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

Conciseness5/5

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

Single sentence with no wasted words. Information is front-loaded and immediately actionable.

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 read operation with strong annotations, the description is sufficient. Lacks detail on cookie format or filtering, but with no output schema and zero parameters, the tool is straightforward.

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

Parameters4/5

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

No parameters, schema coverage 100%. Baseline score of 4 is appropriate as there is nothing to explain.

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 'Return all cookies for the current browser context' uses a specific verb ('Return') and resource ('cookies'), clearly distinguishing it from sibling tools like set_cookies. Scope is explicit.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as set_cookies or other browser context tools. No when-not conditions or explicit context provided.

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

get_htmlC
Read-only
Inspect

Return the HTML of the page or a specific element.

ParametersJSON Schema
NameRequiredDescriptionDefault
outerNo
selectorNo
Behavior2/5

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

Annotations already indicate readOnlyHint=true, so the description does not need to reinforce safety. However, it fails to disclose behaviors such as what happens if the selector is not found, the difference between outer and inner HTML, or any performance implications. The added value beyond annotations is minimal.

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

Conciseness3/5

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

The description is a single short sentence, which is concise but lacks structure. It front-loads the purpose but omits parameter details, which are critical for correct usage. The brevity sacrifices necessary information.

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

Completeness2/5

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

Given the tool has two parameters, no output schema, and moderate complexity, the description is incomplete. It does not explain how to use 'selector' or 'outer', nor does it describe the return format. This is insufficient for an agent to reliably invoke the tool.

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

Parameters2/5

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

With 0% schema description coverage, the description must compensate by explaining the two parameters. It does not mention that 'selector' is a CSS selector for targeting elements or that 'outer' controls whether the outer HTML is returned. The hint 'page or a specific element' is too vague, leaving the agent to guess parameter semantics.

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 that it returns the HTML of the page or a specific element, using a specific verb and resource. It distinguishes itself from sibling tools like 'get_text' (which returns text) and 'get_links' (which returns links), making its purpose unambiguous.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as 'get_text' or 'get_links'. There is no mention of when to specify a selector or how to choose between outer/inner HTML. The agent receives no context for appropriate usage scenarios.

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

get_textA
Read-only
Inspect

Extract visible text from the page or a specific element.

ParametersJSON Schema
NameRequiredDescriptionDefault
selectorNo
Behavior3/5

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

Annotations already declare readOnlyHint and openWorldHint. The description adds that it extracts visible text, which is the basic behavior. No further behavioral traits (e.g., limitations on visibility, selector failure handling) are disclosed. Adequate but not enriched beyond annotations.

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

Conciseness5/5

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

Extremely concise single sentence, front-loaded with the purpose. Every word earns its place with no fluff.

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 read-only tool with one optional param and no output schema, the description is somewhat minimal. It doesn't specify return type or more details about the extraction context. Adequate but could be more complete for agent 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 coverage is 0%, so description must compensate. It mentions 'from the page or a specific element', implying the selector parameter targets an element, but doesn't specify syntax (e.g., CSS selector) or behavior when null (page text). Adds some meaning but insufficient 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 is specific: 'Extract visible text from the page or a specific element.' It clearly identifies the verb (extract) and resource (visible text), and distinguishes from siblings like get_html (HTML) and get_links (links).

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

Usage Guidelines3/5

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

No explicit guidance on when to use this tool vs alternatives. The description implies usage via context, but lacks when-not-to-use or comparisons to similar sibling tools like extract_table or get_html.

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

page_pdfA
Read-only
Inspect

Render the current page as PDF (headless only). Returns base64 PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
format_NoA4
landscapeNo
Behavior4/5

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

Annotations already indicate readOnlyHint=true and openWorldHint=true. The description adds that PDF rendering is only supported in headless mode and returns base64-encoded data, which are behavioral traits beyond the annotations. This provides useful context for the agent.

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

Conciseness5/5

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

The description is extremely concise: one sentence with two clear clauses. Every word is necessary and the key information (action, constraint, output) is front-loaded without any fluff.

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 (2 optional params, no output schema), the description covers the core functionality and output format. However, it lacks parameter details needed for correct invocation, such as acceptable format_ values. Overall, it is minimally adequate but leaves gaps.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not explain the parameters (format_, landscape). The agent is left to infer acceptable values for format_ (likely paper sizes) and the effect of landscape. The description adds no semantic meaning beyond the parameter names.

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

Purpose5/5

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

The description clearly states the tool renders the current page as a PDF, including the constraint 'headless only' and the return format 'base64 PDF'. This specifies the verb, resource, and scope, distinguishing it from siblings like screenshot or get_html.

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

Usage Guidelines3/5

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

The description mentions 'headless only' which implies a usage constraint, but does not provide explicit context on when to use this tool versus alternatives (e.g., screenshot for images). There is no when-not-to-use guidance or mention of alternative tools for PDF generation.

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

screenshotB
Read-only
Inspect

Take a PNG screenshot of the current page (or a specific element). Returns base64 PNG.

ParametersJSON Schema
NameRequiredDescriptionDefault
selectorNo
full_pageNo
Behavior3/5

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

The description adds 'Returns base64 PNG' beyond the annotations (readOnlyHint, openWorldHint). However, it does not disclose that the screenshot may capture only the viewport unless full_page is used, or that the selector parameter requires a CSS selector. Without annotations, the description would be insufficient, but with them, it provides modest additional 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 sentence with two concise clauses, no repetition or filler. It is front-loaded with the core action and provides all essential information efficiently, earning its place without waste.

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

Completeness2/5

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

Given the tool has two optional parameters and no output schema, the description lacks crucial details: how to use the parameters (e.g., format of selector, effect of full_page), and the precise format of the returned base64 PNG (e.g., data URL vs raw). Without these, an agent may misuse the tool.

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

Parameters3/5

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

With 0% schema description coverage, the description must compensate for missing parameter details. It partially explains the selector parameter ('or a specific element') but completely omits any mention of full_page's effect (e.g., capturing the full page). This adds some meaning but is incomplete.

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

Purpose5/5

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

The description clearly states the action ('Take a PNG screenshot'), the resource ('current page or a specific element'), and the output format ('Returns base64 PNG'). This distinguishes it from siblings like page_pdf, which creates PDFs, making the purpose unambiguous.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like page_pdf or click. It does not specify prerequisites (e.g., page must be loaded) or when not to use it. An agent would need to infer usage from context.

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

scrollBInspect

Scroll the page (or an element) in the given direction by amount pixels.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountNo
selectorNo
directionNodown
Behavior2/5

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

Minimal disclosure beyond the basic action. Annotations indicate it is not read-only (mutation) and has side effects, but the description does not elaborate on scrolling behavior (smooth vs instant, event triggering, or waiting for content).

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

Conciseness5/5

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

Single, concise sentence with no wasted words. Ideal length for a simple tool.

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

Completeness3/5

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

Covers core functionality but lacks details on units, default behavior when no selector is given, error handling, or return value. Adequate for a basic tool but has gaps.

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

Parameters3/5

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

The description explains 'amount' and 'direction' but not 'selector', despite the schema listing it. With 0% schema description coverage, the tool description partially compensates but leaves the selector parameter unclear.

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

Purpose4/5

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

Description clearly states the tool scrolls a page or element by a direction and amount, distinguishing it from siblings like click or navigate. However, it could be more explicit about scrolling the viewport or a specific element.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives like navigate, or when not to use it. The description lacks context for appropriate usage.

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

select_optionBInspect

Choose an option from a element by value or visible label.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelNo
valueNo
selectorYes
Behavior3/5

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

Annotations provide readOnlyHint=false and openWorldHint=true, but the description adds no extra behavioral context such as what happens on failure, multiple matches, or precedence between label and value. With annotations present, a score of 3 is appropriate.

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

Conciseness4/5

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

The description is a single focused sentence. It is concise and wastes no words, though it could benefit from slightly more detail without becoming verbose.

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

Completeness2/5

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

Given the complexity of three parameters and no output schema, the description is insufficient. It does not cover behavior such as error handling, return values, or what happens when both label and value are provided.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It mentions 'by value or visible label' but does not explain the role of each parameter, which takes precedence, or how selector is used. This leaves ambiguity for a 3-parameter tool.

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

Purpose5/5

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

The description clearly states the action (choose an option) and the target resource (<select> element), and specifies the method (by value or visible label). It distinguishes from sibling tools like fill_form and click.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., fill_form, click) or when not to use it. The description lacks context about prerequisites or edge cases.

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

set_cookiesCInspect

Set cookies for the current browser context.

ParametersJSON Schema
NameRequiredDescriptionDefault
cookiesYes
Behavior2/5

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

Annotations indicate readOnlyHint=false (mutation) and openWorldHint=true (state may change), but the description adds no behavioral traits beyond 'set'. It doesn't disclose whether cookies are appended or overwritten, or if any side effects (e.g., affecting other tabs) occur. The description does not contradict annotations.

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

Conciseness2/5

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

The description is extremely concise (one sentence) but lacks necessary detail. While front-loaded with the verb, it does not earn its place because it omits crucial parameter and behavior information. A more structured description would balance brevity with completeness.

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

Completeness2/5

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

Given the tool's mutation nature, single parameter (with no schema description), and lack of output schema, the description is incomplete. It fails to explain the expected input structure or what happens after execution. An agent cannot reliably use this tool without additional context.

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

Parameters1/5

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

Schema description coverage is 0%, so the description must compensate. However, it only says 'Set cookies' and does not explain the structure of the 'cookies' parameter (e.g., required fields like name, value, domain). The schema defines it as an array of objects with additionalProperties: true, but without guidance, agents may provide malformed input.

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

Purpose5/5

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

The description states exactly what the tool does: 'Set cookies for the current browser context.' The verb 'set' and resource 'cookies' are specific, and it clearly distinguishes itself from sibling tools like 'get_cookies' (which retrieves cookies). No ambiguity.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites (e.g., page must be loaded) or scenarios where setting cookies is appropriate. Without context, an AI agent has little to decide when to invoke this tool.

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

type_textAInspect

Type text into an input/textarea. Optionally clear first or press Enter after.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
clearNo
selectorYes
press_enterNo
Behavior3/5

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

Annotations already indicate a write operation (readOnlyHint=false) and possible side effects (openWorldHint=true). The description adds that the tool can clear or press Enter, but does not elaborate on other behavioral aspects like event triggering 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?

The description is extremely concise with two sentences, no redundant information, and front-loaded purpose.

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

Completeness3/5

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

For a simple typing tool, the description covers the main functionality and optional behaviors. However, it lacks details on selector format, element existence handling, and comparative context with fill_form.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It mentions text, clear, and press_enter implicitly, but does not explain the selector parameter or provide format details beyond the schema.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'Type text into an input/textarea.' It also specifies optional behaviors (clear first, press Enter). This distinguishes it from sibling tools like click or fill_form.

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

Usage Guidelines3/5

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

The description provides some usage context by mentioning optional clearing and pressing Enter, but it does not explicitly compare to alternative tools (e.g., fill_form) or state when not to use this tool.

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

wait_forAInspect

Wait until a selector reaches a given state (visible|hidden|attached|detached).

ParametersJSON Schema
NameRequiredDescriptionDefault
stateNovisible
timeoutNo
selectorNo
Behavior3/5

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

Annotations indicate readOnlyHint=false and openWorldHint=true, but the description does not elaborate on behavioral traits such as timeout handling, error conditions, or side effects. It adds minimal context beyond the annotation hints.

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

Conciseness4/5

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

The description is a single concise sentence that conveys the core functionality without unnecessary words. It is front-loaded and efficient, though it could be slightly more structured by listing parameters.

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

Completeness2/5

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

Given the tool has 3 parameters, no output schema, and no error handling info, the description is incomplete. It fails to mention return values, behavior on timeout, or any prerequisites, which are important for a waiting tool.

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

Parameters3/5

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

Schema description coverage is 0%, so the description must compensate. It adds meaning by enumerating the allowed states (visible, hidden, attached, detached) for the 'state' parameter, but does not explain 'timeout' or 'selector' in detail. This is partial 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 tool waits for a selector to reach a given state, listing the four possible states. This distinguishes it from sibling tools like click or 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 for waiting, but does not explicitly state when to use this tool versus alternatives, nor when not to use it. No exclusions or context are provided.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources