Skip to main content
Glama

diff_dom

Compare two DOM states to detect additions, removals, moves, and attribute, style, or text changes. Use timestamps or event IDs to pinpoint UI differences and diagnose layout issues.

Instructions

Compare two DOM states between timestamp T1 and T2 (or event E1 and E2) and return structured additions, removals, moves, attribute, style, and text changes.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
e1NoStart event ID (alternative to t1)
e2NoEnd event ID (alternative to t2)
t1NoStart timestamp in milliseconds
t2NoEnd timestamp in milliseconds
sessionIdYesSession ID

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observedv2.0.0

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations, the description must carry the behavioral burden. It discloses that the tool returns structured additions, removals, moves, attribute, style, and text changes, which is useful. However, it does not mention constraints such as requiring a complete endpoint pair, handling of mixed timestamp/event inputs, or whether the operation is read-only.

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, dense sentence that leads with the verb and object, states the two valid endpoint modes, and lists the output categories. There is 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?

For a tool with no output schema and no annotations, the description gives a good high-level summary but omits the endpoint-pairing constraint and what happens if only one timestamp/event is provided. It is adequate yet leaves a moderate ambiguity in the calling contract.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds the concept of 'T1/T2' and 'E1/E2' as alternative endpoint pairs, but it does not add format, precedence, or pairing rules beyond what the schema already states.

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 names a specific verb, 'Compare two DOM states', identifies the endpoint pair options (timestamps or events), and enumerates the exact change categories returned. This makes the tool's purpose clear and distinguishes it from single-snapshot siblings like get_dom_state or specialized change tools like find_disappearing_elements.

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 obtaining a structured diff between two DOM states, but it does not state when to prefer diff_dom over related siblings, nor does it give any exclusions or prerequisites. There is no explicit 'when to use / when not to use' guidance.

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

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/IrMaho/Mcp-DOM'

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