Skip to main content
Glama

JoyDemo: Demo recorder for your product

Server Details

Record a product demo by walking through a product or website. Turn it into an interactive product demo: a clickable product tour customers can navigate step by step, instead of watching a video from beginning to end. Edit the product demo with AI, then share it by link or embed it on your website for sales, onboarding, customer success, or product marketing.

Ownership verified
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

B3.4/5.0

Scored across 23 tools

Disambiguation4/5

Most tools map to a distinct action+target (check_element, uncheck_element, select_option, fill_element). The main tension is between the accessible-element primitives and the 'fallback' browser tools (click_element vs click_browser, fill_element vs type_text, press_element vs press_keys), though the descriptions do label the fallbacks explicitly enough to mostly disambiguate.

Naming Consistency5/5

Every tool follows a clean verb_noun snake_case pattern (start_demo, get_page_state, fill_element, navigate_browser). Even edge cases like press_keys and uncheck_element stay within the same convention, making the set highly predictable.

Tool Count4/5

23 tools is on the heavier side, but the domain spans demo lifecycle, page inspection, interaction primitives, and fallbacks, so the count is defensible. The five 'fallback' browser tools add some redundancy but each targets a real visual-only edge case.

Completeness4/5

Covers the full lifecycle (start_demo, finish_demo, cancel_demo, get_demo_status, prepare_recording_export) plus inspection, navigation, human handoff, and a solid interaction surface. Minor gaps remain around tab/window management and history navigation, but core demo-recording workflows are complete.

Available Tools

23 tools
cancel_demoB
Destructive
Inspect

Stop an active browser session without waiting for its recording to finish processing.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the destructive nature is covered structurally. The description adds genuine value by disclosing that it returns without waiting for recording processing, but it never says whether the in-progress recording is discarded or recoverable.

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

Conciseness5/5

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

One tight sentence with the key behavioral caveat front-loaded after the action. Nothing is wasted and the semantics land immediately.

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?

An output schema exists so return values need not be explained, and annotations cover the safety profile. However, for a destructive cancel the description omits what happens to already-recorded data and how job_id is obtained, leaving meaningful 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% for the single required job_id parameter, so the description must compensate and does not. It only obliquely implies via 'active browser session' that job_id identifies the session; no format, source, or retrieval guidance is offered.

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

Purpose4/5

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

States a specific verb and resource: stop an active browser session. The agent can understand what happens, but the description never references the demo/job terminology of the tool name nor distinguishes this from the closely related finish_demo sibling.

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

Usage Guidelines2/5

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

There is no when-to-use guidance and no mention of alternatives. Given siblings like finish_demo, get_demo_status, and prepare_recording_export, the agent is left to infer whether cancel is the right call versus waiting for completion or checking status.

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

check_elementC
Destructive
Inspect

Check one accessible checkbox.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes
targetYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true and openWorldHint=true, so the mutation risk is covered structurally. The description adds only the hint that the target is located by accessible name; it says nothing about what state is changed, whether the action is idempotent, or what happens if the box is already checked.

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?

A single short, front-loaded sentence with no filler or repetition. Its brevity is efficient, though it errs toward under-specification rather than tight 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?

An output schema exists, so return values need not be described, but for a destructive browser-mutation tool with an unexplained job_id and no when-to-use context, the description leaves real gaps an agent would need to fill by trial.

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 reported at 0%: job_id carries no description in the schema and the description text does not explain it at all (no indication it comes from start_demo). The nested ActionTarget does document 'by'/'value' internally, but the description adds no locator syntax or usage detail of its own.

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 gives a specific verb (check) and resource (accessible checkbox), and the word 'check' implicitly contrasts with the sibling uncheck_element. However, it never explicitly names that sibling or clarifies that it locates via the accessible-name locator strategy, so sibling differentiation is left partly to inference.

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

Usage Guidelines2/5

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

There is no guidance on when to use this versus click_element, press_element, or uncheck_element, all of which touch the same class of element. No prerequisites (e.g. an active job/session) are mentioned.

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

click_browserA
Destructive
Inspect

Fallback: click a visible point in a screenshot when no accessible target is available.

ParametersJSON Schema
NameRequiredDescriptionDefault
xYes
yYes
buttonNoleft
job_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and openWorldHint=true, so the agent knows this is a risky, environment-affecting action. The description usefully adds that this is a last-resort fallback and that it targets a pixel rather than a DOM node, but it says nothing about coordinate reference frame, retry/reliability behavior, or what gets clicked if the point is stale. Moderate added value on top 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?

One sentence, front-loaded with "Fallback" so the routing signal arrives first, and every clause earns its place. No padding or restatement of the tool name.

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?

An output schema exists, so return values need no explanation. However, for a coordinate-based click with 0% schema description coverage and destructive annotations, the description leaves key operational gaps: the coordinate reference frame and the roles of button and job_id. Adequate but not sufficient for confident invocation.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must carry parameter meaning, and it only loosely covers x/y ("a visible point in a screenshot"). It never mentions the button enum (left/middle/right) or what job_id identifies, leaving two of four parameters undocumented anywhere. The coordinate-frame question (viewport vs page vs screenshot pixels) is also unanswered.

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

Purpose5/5

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

States a specific verb (click), the resource (a visible point in a screenshot), and the precise condition that defines this tool's niche: no accessible target is available. That condition is exactly what separates it from click_element and check_element, so an agent can route correctly without opening a schema.

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?

"Fallback ... when no accessible target is available" gives a clear when-to-use condition and implicitly names the alternative path (the accessible-element tools). It stops short of explicitly naming click_element or stating exclusions, so it is clear context rather than a full when/when-not routing rule.

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

click_elementB
Destructive
Inspect

Click one accessible page element, including a submit button in the user's requested workflow.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes
targetYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and openWorldHint=true, so the mutation and open-world nature are covered. The description adds the single-element scope and the notable hint that the target may be a submit button, which signals a potentially irreversible form submission. It still omits post-click effects, but with annotations carrying the safety profile a 3 is fair.

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?

It is a single front-loaded sentence with no filler, which is structurally clean. However, the trailing 'including a submit button in the user's requested workflow' clause is vague and under-specifies rather than informs.

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?

An output schema exists, so return values need not be described. But for a destructive, open-world click tool the description says nothing about side effects such as navigation or submission, and leaves the required job_id completely unexplained, so it is incomplete.

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?

Top-level schema description coverage is 0%: job_id has no description anywhere and target is an unresolved $ref. The description offers no information about how to supply the job_id or the locator target, so it fails to compensate for the coverage gap, though the nested ActionTarget $defs partially documents the target fields.

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

Purpose4/5

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

States a specific verb (Click) and resource (one accessible page element), and the mention of a submit button clarifies the kind of target. It does not explicitly differentiate from the sibling click_browser, so an agent must infer the accessible-locator approach differs from any coordinate-based click.

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

Usage Guidelines3/5

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

The phrase 'in the user's requested workflow' implies the tool is used as part of executing a user task, giving implied context. However, no when/when-not conditions or named alternatives (e.g., click_browser vs. hover_element) are provided, leaving sibling selection to inference.

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

continue_after_humanBInspect

After the user messages in chat, check the Live View handoff and resume browser control.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare that this is not read-only, not destructive, and open-world. The description adds operational context ('check the Live View handoff') but does not explain permissions, side effects, or what 'resuming control' entails beyond the annotations.

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

Conciseness4/5

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

The description is a single front-loaded sentence that states the trigger before the action. It is efficient with no wasted words, though 'Live View handoff' is slightly jargon-heavy.

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?

While an output schema exists and annotations cover safety, the description omits the required job_id parameter and provides no guidance on its source or relationship to other tools. For a tool that resumes a workflow, this leaves a notable gap.

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 schema has one required parameter, job_id, with 0% description coverage. The description does not mention the parameter at all, so it adds no meaning beyond the schema's type and title.

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

Purpose4/5

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

The description states a specific verb and resource: 'resume browser control' after a human handoff. It is clear what the tool does, though it does not explicitly name sibling tools like request_human_help to differentiate itself.

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

Usage Guidelines4/5

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

It gives a clear trigger: 'After the user messages in chat'. This tells the agent when to invoke it, but it does not state exclusions or name alternatives for different scenarios.

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

drag_browserB
Destructive
Inspect

Fallback: drag along screenshot points for visual-only controls such as canvas widgets.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
job_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false, and openWorldHint=true, so the mutation risk is covered structurally. The description adds that the drag happens along screenshot coordinates against visual-only surfaces, which is useful context, but says nothing about permissions, reversibility, or how the drag target is resolved.

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?

A single tightly written sentence with the 'Fallback' qualifier front-loaded so the agent immediately understands the tool's role. No padding, though it is terse enough that it sacrifices needed detail.

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

Completeness2/5

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

An output schema exists, so return values need no explanation, and annotations cover the safety profile. However, for a required-coordinate drag tool with 0% schema coverage, the description omits the one thing an agent must know: how to construct 'path' coordinates.

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 carry the parameters. It hints that 'path' corresponds to screenshot points, but never explains the array-of-arrays integer format (polyline vs. start/end pair) or what 'job_id' refers to, leaving a real ambiguity for a required 2-param call.

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

Purpose4/5

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

States a specific verb (drag) and the resource it interacts with (visual-only controls such as canvas widgets via screenshot points). The 'Fallback' framing distinguishes it conceptually from the element-based siblings, though it never names those siblings directly.

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?

'Fallback' plus 'visual-only controls such as canvas widgets' clearly signals when this tool applies: after DOM-based interaction (click_element, hover_element) cannot reach a target. No explicit exclusions or named alternatives, but the selection context is unambiguous.

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

fill_elementB
Destructive
Inspect

Replace the value of one accessible field with ordinary, non-sensitive text.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYes
job_idYes
targetYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false and openWorldHint=true, so the safety profile is covered. The description usefully adds the constraint that only 'ordinary, non-sensitive text' should be supplied and that the operation overwrites ('Replace'), which is real value beyond the annotations, though it omits what happens to existing content, failure modes, and permission needs.

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?

A single sentence with no filler, and the action verb is front-loaded. It is efficient, though arguably too terse given the tool's destructive nature and three undocumented parameters.

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?

An output schema exists so return values need not be explained, and annotations cover the safety profile. Still, for a destructive three-parameter browser fill, the description leaves job_id semantics, locator strategy, and sibling routing entirely unaddressed.

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 reported as 0%, so the description is expected to compensate but does not: job_id, target, and value are never explained. The phrase 'non-sensitive text' loosely constrains value, but provides no format, length, or locator guidance for the target/job_id parameters.

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

Purpose4/5

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

States a specific verb ('Replace the value') and resource ('one accessible field'), which is concrete enough for an agent to act on. However, it never differentiates itself from the very similar sibling type_text, and 'accessible field' is only loosely defined.

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

Usage Guidelines2/5

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

No when-to-use, when-not-to-use, or alternative is given, despite siblings like type_text, select_option, check_element and press_keys that plausibly overlap. The agent must infer routing purely from the tool name.

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

finish_demoAInspect

Finish a demo, upload its recording to Joydemo, and return the private editor link.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes

TDQS

A3.6/5.0
Behavior4/5

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

Annotations confirm this is a non-read-only, non-destructive, closed-world operation. The description adds real behavioral context beyond that: the tool performs an upload to Joydemo (a side effect) and produces a 'private editor link', which substitutes for the absent output schema. It does not say whether the operation blocks until upload completes or is idempotent.

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

Conciseness5/5

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

One sentence, front-loaded with the core action and then the two outcomes. Nothing is padded and every clause carries information.

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

Completeness4/5

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

For a one-parameter tool with no output schema, the description covers the action, the upload side effect, and the return value, which is what an agent most needs. It remains thin on the job_id contract and failure behavior, but the core call path is clear.

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

Parameters2/5

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

The single required parameter job_id has 0% schema description coverage and the description never mentions it, its expected format, or where it originates (presumably start_demo). With low coverage the description is expected to compensate, and it does not.

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

Purpose4/5

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

States a specific verb and resource ('Finish a demo') and goes further by naming the two side effects: uploading the recording and returning the private editor link. This clearly separates it from start_demo and cancel_demo, though those siblings are not named explicitly.

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 verb 'finish' implies this is the terminal step of a demo session, so usage is inferable from the lifecycle. However, there is no explicit statement of prerequisites (a demo must already be running), no mention of what happens if the demo does not exist, and no routing to alternatives like cancel_demo.

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

get_demo_statusC
Read-only
Inspect

Get the current state of a demo session.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds nothing beyond that: it does not say whether the state is a snapshot vs live poll, what lifecycle states exist (running/finished/cancelled), or whether it blocks.

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?

A single front-loaded sentence with no wasted words. It is appropriately terse for a simple lookup, though the terseness is partly a symptom of under-specification rather than deliberate economy.

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?

An output schema exists, so return values need not be described, and annotations cover the safety profile. Still, for a demo-session workflow with 23 siblings, an agent would benefit from knowing how this status tool relates to start_demo, cancel_demo, and finish_demo, which is absent.

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 single required parameter job_id is undocumented in both schema and description. The description never explains what a job_id is, where it comes from, or whether it corresponds to the demo started by start_demo, so it fails to compensate for the coverage gap.

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

Purpose4/5

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

States a clear verb (get) and resource (demo session state), which is a specific, understandable operation. However, it does not differentiate itself from similar-looking siblings such as get_page_state or get_screenshot, so an agent must infer that this one targets demo sessions rather than page content.

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

Usage Guidelines2/5

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

There is no guidance on when to call this versus alternatives like get_page_state, nor any indication of prerequisites (e.g., that a demo must have been started via start_demo) or polling expectations. The agent is left to infer usage entirely from the tool name.

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

get_page_stateB
Read-only
Inspect

Return the current URL, title, and compact Playwright ARIA snapshot.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds value by specifying the returned snapshot format (compact Playwright ARIA), but says nothing about size limits, permissions, or rate behavior.

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

Conciseness5/5

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

A single front-loaded sentence with no filler, leading with the verb and immediately listing the returned fields. Every word earns its place.

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

Completeness3/5

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

Because an output schema exists, the description need not explain return values, and annotations cover behavior. However, the required job_id parameter is left entirely undefined across description and schema, which is a meaningful gap for an agent trying to invoke it.

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?

There is one required parameter, job_id, with 0% schema description coverage, and the description never mentions it. With low coverage the description is expected to compensate, but it provides no meaning for job_id, leaving the agent to guess what job it references.

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 gives a specific verb ('Return') and enumerates the exact payload (current URL, title, and compact Playwright ARIA snapshot), so the agent knows precisely what the tool yields. It does not distinguish itself from sibling inspection tools like get_screenshot or check_element, so it falls short of a 5.

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

Usage Guidelines3/5

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

Stating that it returns page state implies when it is useful (inspecting the current page), but there is no explicit guidance on when to prefer it over get_screenshot or check_element, nor any exclusions or prerequisites. Usage is left to inference.

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

get_screenshotB
Read-only
Inspect

Return a browser screenshot for visual inspection when the page has visual-only controls.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds that the result is for visual inspection but says nothing about output format, size, or latency for a screenshot-returning read.

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?

A single front-loaded sentence with no wasted words, appropriate for a simple one-parameter tool. It borders on terse given the missing parameter context but is well structured.

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

Completeness3/5

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

The tool is simple and annotations cover safety, but with no output schema and 0% parameter coverage the description should at least explain the job_id input and what the screenshot response contains. It leaves an agent underspecified on the one argument it must supply.

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

Parameters2/5

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

Schema coverage is 0% and the single required parameter job_id is undocumented in both schema and description. The description never mentions job_id or what identifies a job, so it fails to compensate for the coverage gap.

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

Purpose4/5

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

States a specific verb (Return) and resource (browser screenshot) plus the purpose (visual inspection). It implicitly differentiates from get_page_state by scoping to 'visual-only controls', though it does not name that sibling explicitly.

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

Usage Guidelines4/5

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

Provides a clear triggering condition – use it 'when the page has visual-only controls' – which routes the agent away from non-visual inspection tools. It offers no explicit when-not cases or named alternatives, so it falls short of a 5.

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

hover_elementBInspect

Hover over one accessible page element to reveal hover-only content.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes
targetYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

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

Annotations declare destructiveHint=false and openWorldHint=true, so safety and world scope are already covered; readOnlyHint=false signals a state-affecting interaction. The description usefully adds that the effect is revealing hover-only content, but says nothing about session/job scoping, whether the hover persists, or timing/wait implications in a live browser.

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?

A single efficient sentence with the action front-loaded and no filler. It is appropriately sized but a touch terse given the tool takes a session id and a structured locator.

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?

An output schema exists, so return-value explanation is not required. However, for an open-world browser-automation tool requiring job_id and a composed locator target, the description leaves the session context and interaction side effects unaddressed, making it only minimally complete.

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 reported schema description coverage at 0% and only the nested ActionTarget fields carrying their own text, the description contributes nothing about parameters. It never explains what job_id is (presumably a browser session handle) or how the target locator is used, so an agent gets no help from the prose on the top-level required inputs.

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 gives a specific verb and resource: 'Hover over one accessible page element.' The 'hover-only content' qualifier tells an agent what effect to expect, which distinguishes it implicitly from click_element, press_element, and fill_element in the sibling set. It stops short of explicitly naming a sibling it is not.

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

Usage Guidelines2/5

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

There is no when-to-use guidance: nothing says to hover when content is hidden behind a tooltip/menu, nor when to prefer click_element or press_element instead. Usage is only weakly implied by 'reveal hover-only content,' leaving the agent to infer the trigger condition.

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

prepare_recording_exportBInspect

Retry a completed recording's export and Joydemo upload.

ParametersJSON Schema
NameRequiredDescriptionDefault
session_idYes
browser_identifierNo

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already disclose the safety profile (readOnlyHint=false, destructiveHint=false, openWorldHint=false), so the mutation/non-destructive nature is covered. The description adds that the call re-triggers both an export and an upload, but says nothing about idempotency, whether an existing export is overwritten, timing, or failure behavior for a retry operation.

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

Conciseness4/5

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

A single front-loaded sentence with no filler; the action and target come first. It is efficient, though the terseness contributes to the gaps in parameter and usage detail.

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

Completeness2/5

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

For a mutating retry tool with 0% parameter documentation, no output schema, and no return or timing information, the definition is thin. Annotations cover only the safety profile, so the description should have explained prerequisites and the parameters but instead leaves the agent to guess.

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 never mentions either parameter, so session_id (required) and browser_identifier are entirely undocumented. With two bare parameters, the description needed to compensate for the schema gap and does not.

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

Purpose4/5

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

The description names a specific verb ('Retry') and resource ('a completed recording's export and Joydemo upload'), so the agent knows the operation and its two effects. No sibling tool overlaps this function, so there is nothing to differentiate against, though the name ('prepare') and description ('retry') are not perfectly aligned and 'Joydemo upload' is unexplained jargon.

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?

Usage is only implied: 'Retry' plus 'a completed recording's' hints that this applies to a prior failed export for a finished recording, but the description never states when to call it, what state the recording must be in, or what to do if the export has not been attempted before. No alternatives are named.

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

press_elementB
Destructive
Inspect

Press one key while an accessible page element is focused.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYesOne key name, such as Tab or Enter.
job_idYes
targetYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, and openWorldHint=true, so the safety profile is covered. The description adds one useful behavioral precondition — the target element must already be focused — but says nothing about side effects, auth needs, or whether the press can trigger 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?

A single tight sentence with the verb front-loaded and zero filler. It is appropriately sized for a simple action, though it could carry one more clause of routing or precondition detail without bloating.

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?

An output schema exists, so return values need not be described. Still, for a destructive-hinted action against a browser page, the definition omits how the target session (job_id) is scoped and whether focus must be established beforehand, leaving modest 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?

Schema coverage is only 33%, with job_id completely undocumented in both schema and description. However, the schema's own ActionTarget and key descriptions are rich, and the description's 'one key' constraint reinforces the single-key restriction beyond the key field text.

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

Purpose4/5

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

States a specific verb (Press) and resource (one key on a focused accessible element), which is clear and actionable. It implicitly distinguishes itself from the sibling press_keys by saying 'one key,' but it never names that alternative outright, so full sibling differentiation is left to inference.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no exclusions, and no mention of when to choose this over press_keys, click_element, or type_text. The agent must infer the selection conditions entirely.

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

press_keysC
Destructive
Inspect

Fallback: press one key or a key chord such as ["CTRL", "L"].

ParametersJSON Schema
NameRequiredDescriptionDefault
keysYes
job_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false, and openWorldHint=true, so the safety profile is covered structurally. The description adds that this is a fallback, but says nothing about what state is affected, whether the key press is reversible, or what the job_id controls.

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?

It is a single, front-loaded sentence with no filler, and the key format example is efficiently embedded. The terse 'Fallback:' label is the only structural weakness.

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 destructive, job-scoped mutation tool with 0% schema description coverage and two required parameters, the description is far too thin. It does not explain job_id, side effects, or alternatives, even though the output schema means return values need not be covered.

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 does give a helpful format example for the 'keys' parameter (e.g. ["CTRL", "L"]), but the required 'job_id' parameter is never explained, leaving half of the parameters undocumented.

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

Purpose4/5

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

The description names a clear verb (press) and resource (one key or key chord), and gives a concrete example of the chord format. The word 'Fallback' hints at the relationship with sibling press_element, but does not explicitly distinguish the two.

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?

'Fallback' implies this tool is secondary and should be used when a primary key-pressing route is unavailable or fails, which is useful implied context. However, it never names the primary alternative or states explicit when-to-use/when-not-to-use conditions.

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

request_human_helpAInspect

Pause automation and return a Live View link; tell the user to click Done, then message Done in chat to resume.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes
instructionsYes

TDQS

A3.7/5.0
Behavior4/5

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

Adds real behavioral context beyond the annotations: it pauses the automation loop and returns a Live View link, and discloses the resume handshake. Annotations already cover the safety profile (readOnly=false, destructive=false), so this is useful supplemental depth, though it doesn't say whether the call blocks or times out.

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

Conciseness5/5

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

One compact sentence that front-loads the action ('Pause automation') and then the follow-up procedure; no filler or redundancy.

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

Completeness3/5

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

The workflow is adequately conveyed and the return value (a Live View link) is mentioned even without an output schema, but with two required, zero-coverage parameters the definition is not complete enough for confident invocation.

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

Parameters2/5

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

Schema description coverage is 0% and both parameters (job_id, instructions) are required, yet the description never explains what job_id identifies or what instructions should contain. It only indirectly gestures at 'instructions' via the user-facing message, leaving the core inputs undocumented.

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

Purpose4/5

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

States a specific verb and effect ('Pause automation and return a Live View link'), so an agent immediately knows this halts the workflow and yields a handoff artifact. It does not explicitly name the related sibling (continue_after_human), but the described pause/resume cycle makes its role clear.

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?

Conveys the trigger context (need a human to intervene) and the exact resume procedure: tell the user to click Done, then message Done to resume. It stops short of naming the sibling that resumes or stating conditions where this should not be used.

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

scroll_browserBInspect

Fallback: scroll at a visible point when semantic controls cannot reach the content.

ParametersJSON Schema
NameRequiredDescriptionDefault
xYes
yYes
job_idYes
delta_xNo
delta_yNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=true, so safety profile is covered. The description adds that this is a last-resort path requiring a 'visible point' (implying a coordinate source such as a screenshot), but says nothing about how delta_x/delta_y change behavior or whether state changes persist. Adequate over the annotation baseline, not rich.

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

Conciseness4/5

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

One sentence, no padding, and the routing cue ('Fallback') is front-loaded. It is efficient, though the brevity is partly under-specification rather than tight writing.

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?

An output schema exists so return values need no prose, but for a 5-parameter, 0%-coverage coordinate tool inside a large browser-automation suite the description is far too thin: no delta semantics, no job_id explanation, no prerequisite about obtaining a visible point. An agent could not invoke this reliably from the text alone.

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% across 5 parameters, so the description carries the full burden. 'Scroll at a visible point' loosely hints that x/y form a coordinate target, but delta_x, delta_y and job_id — including the 500px default scroll amount — are entirely unexplained.

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

Purpose4/5

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

States a specific action (scroll) with a scope qualifier ('at a visible point') and frames itself as a fallback relative to semantic controls, which the sibling list ('click_element', 'check_element', 'press_element') makes meaningful. It doesn't explicitly say it scrolls the browser viewport nor explain the coordinate system, so it stops short of a 5.

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

Usage Guidelines4/5

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

'Fallback ... when semantic controls cannot reach the content' is an explicit when-to-use condition, which is more than most siblings offer. It doesn't name concrete alternative tools or state what to try first/last, so it's clear context without full routing guidance.

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

select_optionC
Destructive
Inspect

Select one exact option in an accessible dropdown.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYesThe exact option value to select.
job_idYes
targetYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare openWorldHint=true and destructiveHint=true for what sounds like an innocuous dropdown interaction; the description does nothing to explain why it is destructive, what happens on a failed exact match, or how job_id ties into a prior session. With annotations present, the bar is lower, but the description adds no behavioral context at all.

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?

A single, front-loaded sentence with no filler, following the verb+resource pattern. It is efficient, though its brevity shades into under-specification rather than pure tightness.

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 state-mutating, open-world browser action with an output schema and 3 required parameters, the description omits the meaning of job_id, how to construct the target, and failure behavior on exact-match misses. An agent would need to reverse-engineer most of the invocation from the schema alone.

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

Parameters2/5

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

Schema description coverage is only 33%. The description's phrase 'exact option value' loosely maps to the `value` parameter, but it adds nothing about `job_id` or the `target` ActionTarget (which `by`/`role`/`value` to use for locating the dropdown). With low coverage the description should compensate, and it does not.

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

Purpose4/5

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

States a specific verb (select) and resource (one exact option in an accessible dropdown), which is clear and distinct from sibling checkbox tools like check_element and uncheck_element. However, it never names those siblings or any alternative, so the differentiation must be inferred.

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

Usage Guidelines2/5

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

The description gives no when-to-use guidance, prerequisites, or alternatives. An agent must infer from 'dropdown' that this applies to select elements rather than check_element/click_element, and nothing tells it when this tool would be the wrong choice.

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

start_demoBInspect

Start a browser session and return the initial page's accessible snapshot.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskYes
start_urlYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=true, so the agent knows this mutates state and reaches an external browser. The description usefully adds that the initial accessible snapshot is returned, but says nothing about permissions, session lifetime, or cleanup expectations, so it adds only moderate value on top of the 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?

A single front-loaded sentence with no filler; the action and its return value are stated immediately, which is exactly the right size for this 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?

Because an output schema exists, the return snapshot need not be explained further. However, for a tool with two undocumented required parameters and no guidance on its role in the demo workflow, the description leaves meaningful 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 both required parameters (task, start_url) carry no titles beyond their names and no descriptions. The description does not explain what 'task' means (a goal string? an ID?) or the required URL format, so it fails to compensate for the coverage gap.

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 pairs a specific verb (start) with a resource (browser session) and even states what is returned, the initial accessible snapshot. It is clear enough to separate from terminal siblings like finish_demo or get_demo_status, but it never names a sibling or scope boundary, so it stops short of full 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?

There is no statement of when this should be used versus the ~20 sibling tools, nor any prerequisite or lifecycle note (e.g., that it is the entry point before navigate_browser/click_element). Usage is only implied by the verb 'start'.

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

type_textB
Destructive
Inspect

Fallback: type non-sensitive text into the currently focused browser control.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
job_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and openWorldHint=true. The description adds real context beyond them: it targets whatever control currently holds focus, and it constrains input to non-sensitive text. It stops short of explaining error behavior or how the job_id scopes the operation.

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

Conciseness4/5

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

A single compact sentence with the distinguishing qualifier ('Fallback') front-loaded. Nothing is wasted, though the terseness contributes to the semantic gaps elsewhere.

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?

An output schema exists, so return values need no explanation. But for a destructive, open-world input tool with two required, undocumented parameters, the description omits parameter roles, focus prerequisites, and failure behavior, leaving it under-specified for reliable invocation.

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

Parameters2/5

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

Schema description coverage is 0% for both parameters, so the description carries the burden of documenting them. It mentions text only obliquely and says nothing about job_id, leaving required-parameter meaning unexplained in both structured and unstructured fields.

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

Purpose4/5

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

States a specific verb (type) and resource (non-sensitive text) plus a target (the currently focused browser control). The word 'Fallback' signals it stands apart from the primary input path (likely fill_element), giving decent sibling differentiation without naming the alternative.

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?

'Fallback' implies this is a secondary path used when the primary typing mechanism fails, which is useful implied usage. However, it never names the preferred alternative nor states explicit when-not conditions, so the routing decision is left partly to inference.

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

uncheck_elementC
Destructive
Inspect

Uncheck one accessible checkbox.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes
targetYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false and openWorldHint=true, so the safety profile is covered structurally. The description adds nothing beyond that: no error behavior if the box is already unchecked, no mention of the browser session/job context, no note that this mutates live page state.

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

Conciseness5/5

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

One short, front-loaded sentence with no filler; the verb and resource lead. Nothing wasted, though there is little content to structure.

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?

An output schema exists, so return values need not be narrated, but the description omits the job_id semantics and any failure modes for a mutation tool. Across a 23-tool browser automation family, a single-sentence description leaves real 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 coverage is reported at 0%, and the description supplies no parameter meaning at all. The nested ActionTarget fields (by, role, value) are documented inside the schema, but job_id is unexplained in both places, leaving the caller to guess what job context must be supplied.

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

Purpose4/5

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

States a precise verb (uncheck) plus resource (accessible checkbox), which cleanly distinguishes it from the sibling check_element. It does not name siblings explicitly, but the action itself is unambiguous for an agent scanning tools.

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

Usage Guidelines2/5

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

No guidance on when to use this versus check_element (the obvious inverse) or alternative interaction tools like click_element. The agent must infer the usage context entirely from the verb.

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

wait_browserA
Read-only
Inspect

Wait briefly for a page transition or animation, then inspect with get_page_state.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes
millisecondsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds the key workflow context that this tool does not return page state itself and must be followed by get_page_state. However, it says nothing about timeout behavior, determinism, or what happens if the wait is too short, which matters for a timing-based 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?

A single tight sentence with no filler. The purpose is front-loaded, and the follow-up step is appended without wasting words.

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

Completeness3/5

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

An output schema exists, so return values need not be described. Still, for a two-parameter timing tool with 0% schema coverage, the description leaves duration selection and the job_id parameter unexplained, which is a real gap even for a simple tool.

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

Parameters2/5

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

Schema description coverage is 0%: job_id has no explanation anywhere and milliseconds is only implied by the word 'briefly'. The default of 1000ms is left entirely to the schema, and the description gives no guidance on choosing a duration or what job_id refers to.

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

Purpose4/5

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

The description names a specific verb (wait) and resource (browser page state), scoped to page transitions and animations. It also names the natural follow-up sibling, get_page_state, so an agent can place it in the workflow. It does not explicitly contrast itself with other waiting-adjacent siblings, so it falls short of a 5.

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

Usage Guidelines4/5

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

It gives a clear trigger condition ('page transition or animation') and prescribes the next action ('inspect with get_page_state'), which is genuinely useful sequencing guidance. There are no explicit exclusions (e.g., when a fixed wait is unnecessary or when check_element is preferable), so it is not a 5.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 23 tool updates
    • First observedcancel_demo
    • First observedcheck_element
    • First observedclick_browser
    • First observedclick_element
    • First observedcontinue_after_human
    • First observeddrag_browser
    • First observedfill_element
    • First observedfinish_demo
    • First observedget_demo_status
    • First observedget_page_state
    • First observedget_screenshot
    • First observedhover_element
    • First observednavigate_browser
    • First observedprepare_recording_export
    • First observedpress_element
    • First observedpress_keys
    • First observedrequest_human_help
    • First observedscroll_browser
    • First observedselect_option
    • First observedstart_demo
    • First observedtype_text
    • First observeduncheck_element
    • First observedwait_browser

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    11 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources