Skip to main content
Glama

list_displays

Read-only

Lists Android displays with ID, name, size, and density, plus apps in their own windows or hidden displays, so you can target the correct display for input and screenshots.

Instructions

Android's displays with id, name, size and density, plus the apps open in their own windows or hidden displays. Display 0 is Waydroid's main window; input and screenshots take a display id or a package.

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": "list_displays"
  }
}

Input Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior3/5

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

readOnlyHint=true already tells the agent this is a safe read, so the description's job is to add context beyond that. It does add the returned fields and the meaning of display 0, and it notes that non-visible/hidden displays are included, which is genuinely useful. It still says nothing about ordering, whether the result is a flat list, or what happens when no displays are attached, so the added behavioral depth is moderate rather than 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?

Two sentences, no filler, and the payload description comes first with the display-0 convention and cross-tool reference following. The phrasing is telegraphic ('Android's displays with id, name, size and density'), which is dense but readable; nothing is wasted.

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 zero-parameter, read-only listing tool with no output schema, the description covers what is returned, what the special display id means, and how to reuse the ids. It is close to complete; only minor details such as result ordering or behavior with no active displays are unaddressed.

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

Parameters4/5

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

The tool takes zero parameters, so there is no per-argument semantics to explain and the baseline of 4 applies. The mention that input and screenshots take 'a display id or a package' clarifies the downstream use of the returned identifiers, which is a small bonus but not a substitute for parameter documentation.

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 the resource (Android displays) and enumerates exactly what each entry carries: id, name, size, density, plus apps running in their own windows or on hidden displays. The verb is implied by the tool name rather than stated, and differentiation from siblings comes only indirectly through the 'input and screenshots take a display id' clause, which keeps it out of the top band.

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 concrete context: display 0 is Waydroid's main window, and the ids returned here are the arguments that 'input' and 'screenshots' accept (by display id or package). That effectively positions this as the discovery step before those tools. It does not state any when-not-to-use condition, but no direct alternative exists among the siblings.

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