Skip to main content
Glama

Record website demo

record_website_demo

PROJECT-SCOPED: this call acts only on the explicit project_id and returns the project identity with its result. RECORD THE BROWSER USING A SITE — the showcase capture. A headless browser opens the URL with a VISIBLE cursor drawn on screen and works through steps you write: it glides the pointer to a button, clicks it, waits for the page to react, types into fields at human speed, scrolls between sections. THE tool for 'record yourself using my product', a launch/demo video, or 'show how it works', where record_website only pans down a static page. Steps are objects: {do:'click', text:'Start free trial'} (text = the VISIBLE label; or selector: a CSS selector), {do:'type', selector:'input[type=email]', text:'you@example.com'}, {do:'scroll', to:'Pricing'} or {do:'scroll', by:800}, {do:'hover', text:'Plans'}, {do:'press', key:'Enter'}, {do:'wait', seconds:1.5}, {do:'goto', url:'…'}. Add seconds to any step to hold longer after it. It returns an EVENT TRACK — every click, scroll and keystroke timestamped with its position in the frame — then place it with showcase_demo, which uses that track. It records the PUBLIC site as a visitor sees it and will not type into password or payment fields. Write 4-10 steps that tell one story; a demo that clicks everything shows nothing.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYes
stepsYes
project_idYesRequired immutable scope for this call. Copy the id from list_projects/open_project/project_state; the active-project pointer is never used to guess.
orientationNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Annotations declare readOnlyHint=false, consistent with the recording (write) behavior described — no contradiction. The description adds substantial behavioral context beyond annotations: headless browser with a visible cursor, human-speed typing, refusal to type into password/payment fields, and the event-track return value. For a mutation tool this level of disclosure is excellent.

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 long but every sentence earns its place — the step-format documentation is essential because the schema leaves steps as an unstructured object array. It is front-loaded with the critical scope constraint and the primary purpose. Minor deduction for density; it could be tightened without losing meaning.

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

Completeness5/5

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

With no output schema, the description explains the return value (an EVENT TRACK with timestamped interactions and the position-in-frame, to be passed to showcase_demo). It covers the steps grammar, the security constraint on password/payment fields, the scoping rule, and the alternative-tool routing. Nothing an agent needs to invoke it correctly is missing.

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

Parameters5/5

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

Schema coverage is only 25%, so the description carries the burden — and it delivers. It fully documents the steps array with concrete object shapes ({do:'click', text:'...'}, {do:'type', selector:'...'}, {do:'scroll', to:'...'}, {do:'hover', text:'...'}, {do:'press', key:'...'}, {do:'wait', seconds:...}, {do:'goto', url:'...'}) plus the optional seconds modifier. It also clarifies the url and project_id semantics. Only orientation is left to the schema enum, which is sufficient.

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 opens with a precise scoped statement ('acts only on the explicit project_id'), then names the exact action ('RECORD THE BROWSER USING A SITE — the showcase capture') with a specific verb and resource. It explicitly differentiates from the sibling record_website ('only pans down a static page'), so an agent can pick the right tool without ambiguity.

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

Usage Guidelines5/5

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

It explicitly names the use cases ('record yourself using my product', 'launch/demo video', 'show how it works') and the alternative tool that should be chosen instead (record_website). It also gives concrete guidance on step count ('Write 4-10 steps that tell one story') and warns against over-clicking ('a demo that clicks everything shows nothing').

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.