Skip to main content
Glama
MCP Appium

MCP Appium

appium_observe

Read-only

Returns a compact one-line-per-element view of the current mobile screen, including class, ID, description, text, flags, and center. Use diff=true after an action to see only changes.

Instructions

Compact one-line-per-element view of the current screen (class, id, desc, text, flags, center). Far cheaper than page source or generate_locators. Use diff=true after an action.

Input Schema

NameRequiredDescriptionDefault
diffNoReturn only changes since the last observe (default false).
limitNoMax nodes (default 80).
sessionIdNoSession ID; defaults to the active session.
includeTextNoInclude text of non-clickable nodes (default true).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.99.3

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so safety and scope are covered. The description adds cost/relative-expense context and the contents of each output line, which is genuinely useful, but says nothing about pagination/truncation behavior at limit=300 or about what 'diff' compares against beyond the schema's wording.

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 sentences, both front-loaded with the most decision-relevant facts: what the output looks like, its relative cost, and the one usage rule. No filler.

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?

With no output schema, the description takes on the job of describing return contents and does so via the field list (class, id, desc, text, flags, center). Defaults for diff, limit, and includeText are left to the schema, which is reasonable given full coverage.

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?

Schema coverage is 100%, so the baseline is 3; the description earns an extra point by giving the diff parameter situational meaning ('after an action') that the schema's 'since the last observe' does not convey.

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 (current screen) and the exact shape of the result (one line per element with class, id, desc, text, flags, center), which clearly distinguishes it from bulkier siblings like get_page_source. It lacks an explicit verb ('return'/'observe'), presenting itself as a noun phrase, but an agent can still tell precisely what it gets.

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 names two alternatives (page source, generate_locators) and frames this as the cheaper option, and it gives a concrete trigger for the diff parameter: 'Use diff=true after an action.' It stops short of stating when NOT to use it, such as when full hierarchy or attributes are required.

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