Skip to main content
Glama

Query a dumpsys service

dumpsys_query
Read-onlyIdempotent

Read curated Android system service dumps for battery, activity, window, and connectivity, with a 64 KB output cap and extra args to narrow large results.

Instructions

Read a curated Android system service dump (dumpsys <service> [args...]): "battery" for charge/level, "activity" for tasks and activities, "window" for windows and display state, "connectivity" for network state. Output can be huge — "activity" especially — so it is capped (64 KB maximum) with a head+tail truncation marker where bytes were dropped; pass extra_args to narrow it (e.g. "activities" or "windows"). Other dumpsys services are intentionally not exposed; use shell for those.

Input Schema

NameRequiredDescriptionDefault
deviceNoDevice serial from list_devices; optional when exactly one device is connected.
serviceYesCurated service to dump: "battery", "activity", "window" or "connectivity".
extra_argsNoOptional arguments appended after the service, e.g. "activities com.example.app" or "windows"; token-split on whitespace and quoted for the device shell.
timeout_msNoTimeout in milliseconds (default 30000).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, and the description adds materially new behavior: output is capped at 64 KB with a head+tail truncation marker where bytes were dropped, and 'activity' output is especially large. This tells the agent results may be partial, which the annotations do not convey.

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?

Front-loads the core action and the service enumeration, then layers the truncation caveat and the narrowing hint. Dense but every clause carries information; only the parenthetical examples are slightly redundant with the schema.

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 usefully covers the output contract (64 KB cap, truncation marker) and routes unsupported services to shell. Parameters are fully covered by the schema, leaving little missing for correct invocation.

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 all four parameters are already documented in the schema. The description reinforces extra_args with the same examples found in the schema but adds no syntax or format detail beyond it, so the baseline 3 applies.

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?

States a specific verb and resource ('Read a curated Android system service dump') and enumerates exactly which services are exposed with a one-line meaning for each. It also distinguishes itself from the sibling 'shell' tool by scoping what is intentionally not available.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit when-to-use (the four curated services), a concrete narrowing technique (pass extra_args like 'activities' or 'windows'), and an explicit exclusion with the alternative named ('Other dumpsys services are intentionally not exposed; use shell for those').

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