Skip to main content
Glama

render-mcp

inspect_element

Answer 'why isn't this element showing where I expect?' for a CSS selector on a live page. Returns the resolved box model, computed display/visibility/opacity/position/z-index, colours, whether the element is inside the viewport, and — crucially — whether another element is covering it. These are the values a browser computes after the full cascade and layout; they cannot be derived from reading HTML and CSS.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesThe absolute URL to load, including https://
widthNoViewport width in pixels. 320-2560. Defaults to 1280.
heightNoViewport height in pixels. 240-2000. Defaults to 800.
selectorYesCSS selector for the element to inspect, for example '.buy-button' or '#header nav a'
max_matchesNoHow many matching elements to report. 1-10. Defaults to 3.

TDQS

A4/5.0
Behavior4/5

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

No annotations exist, so the description carries the full burden and largely meets it: it discloses the return content (box model, display/visibility/opacity/position/z-index, colours, viewport check, covering-element detection) and the nature of the computation (post-cascade and layout values). It does not explicitly note error behavior or confirm the operation is non-destructive, though 'inspect' strongly implies read-only. Rich behavioral context for a tool with zero annotation coverage.

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

Conciseness5/5

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

Three sentences in a tight structure: the diagnostic question leads, the return inventory follows, and the value proposition closes. The second sentence's list is informative rather than padding. Every sentence earns its place with zero repetition of schema content, and the purpose is front-loaded.

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 tool with no output schema and no annotations, the description compensates well by spelling out exactly what is returned and framing it as live browser-computed data. Minor gaps remain — no explicit handling of invalid selectors, page-load failures, or whether results reflect a freshly loaded page — but these are edge conditions, not core call requirements. The agent has enough to invoke and interpret correctly.

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

Parameters3/5

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

Schema coverage is 100%, so the baseline is 3: the schema already fully documents all five parameters including defaults, ranges, formats, and examples. The description adds only indirect semantic context (selector targets a live-page element; url implies a loaded page), nothing beyond what the schema provides. No compensation needed, but also no added meaning.

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 concrete diagnostic question ('why isn't this element showing where I expect?') tied to a specific resource (a CSS selector on a live page). It clearly distinguishes itself from siblings like rendered_html and screenshot_url by emphasizing it returns browser-computed layout values, not static markup or images. A single specific verb-context pair that an agent could not confuse with any sibling.

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 closing sentence ('they cannot be derived from reading HTML and CSS') gives implied guidance about when to pick this tool over a markup-reading sibling, but it never names an alternative or states explicit when/when-not conditions. Context is suggested rather than stated, and there are no exclusions or sibling references, leaving the agent to infer the choice.

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.

TDQS

A4.2/5.0
Disambiguation5/5

Each tool targets a distinct output or purpose: audit, diagnostics, rendered HTML, screenshot, and PDF. Even the two diagnostic tools are clearly separated by what they check, so an agent is unlikely to confuse them.

Naming Consistency4/5

All names use snake_case and are descriptive, but they do not follow a single regular pattern: most are noun phrases, while url_to_pdf uses a different structure. The inconsistency is minor and does not hurt readability.

Tool Count5/5

Five tools cover the core browser-rendering use cases without redundancy or bloat. Each tool earns its place in the set.

Completeness5/5

The set covers the obvious needs of a render-focused server: accessibility checking, failure diagnostics, post-JavaScript HTML, visual capture, and PDF output. There are no glaring dead ends for typical page-inspection workflows.