Skip to main content
Glama
Skills MCP Server
by Blindex09

a11y_tab_order

Press Tab repeatedly to report keyboard focus order, including element, role, accessible name, visibility, and focus indicator presence; detect keyboard traps, illogical order, and invisible focus.

Instructions

Press Tab repeatedly and report the keyboard focus order: element, role, accessible name, visibility and whether a focus indicator is present. Provide EITHER url (http/https) OR html. Useful to detect keyboard traps, illogical order, and invisible focus.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "a11y_tab_order"
  }
}

Input Schema

NameRequiredDescriptionDefault
urlNo
htmlNo
browserNochromium
max_stepsNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.1.0

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It discloses that the tool actively drives the page by pressing Tab and reports focus attributes, which is useful. It omits whether it needs an open browser session, how max_steps bounds the traversal, or any side effects on 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?

Two tight sentences, front-loaded with the action and return fields, followed by the input constraint and detection value. No filler or repetition.

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 format need not be explained. Still, for a 4-parameter, no-annotation tool, browser selection and max_steps behavior are unaddressed, and session/prerequisite context is missing – adequate but with visible 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 0%, so the description must compensate. It clarifies url (http/https) versus html as mutually exclusive inputs, but 'browser' and 'max_steps' are entirely unexplained, leaving half the parameters without any semantics in either the schema or the description.

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 Tab repeatedly') and resource ('keyboard focus order'), then enumerates the reported fields (element, role, accessible name, visibility, focus indicator). The purpose is unambiguous and clearly distinct in subject matter from siblings like a11y_contrast or a11y_aria_snapshot, though no sibling is named to anchor the contrast.

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?

Offers detection goals ('keyboard traps, illogical order, invisible focus') which imply usage context, plus the url-or-html input constraint. However, it never states when to prefer this over a11y_focus_style or a11y_aria_snapshot, and gives no exclusions or prerequisites.

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