Skip to main content
Glama

Set dark/light mode

set_appearance

Switch an Android device or emulator between dark and light mode, enabling UI testing in both appearances.

Instructions

Switch a device/emulator between dark and light mode (cmd uimode night).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeYesAppearance to set
serialNoEmulator serial (defaults to session or the only device)
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the underlying command ('cmd uimode night') but does not disclose potential side effects, persistence of the setting, or any requirements such as a running emulator. The agent learns what the tool does but not what the consequences or preconditions are.

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?

The description is a single, front-loaded sentence that immediately states the action and resource. It is concise with no filler, and the parenthetical command reference adds a technical detail without bloating the text. Every word earns its place.

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?

This is a simple two-parameter tool with no output schema and no annotations. The description, combined with the full schema, is sufficient for a basic understanding of the tool's function. However, it lacks context on what happens after invoking (e.g., return value, errors, or confirmation) and does not explain the serial default behavior, making it minimally complete but with room for improvement.

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%, with both parameters ('mode' and 'serial') described in the schema. The description adds no extra parameter semantics beyond what the schema already provides, so the baseline of 3 is appropriate. The mention of 'cmd uimode night' hints at the underlying mechanism but does not clarify the parameters further.

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 clearly states the action ('Switch'), the resource ('a device/emulator'), and the scope ('between dark and light mode'). It is a specific, verb-driven purpose that leaves no ambiguity about what the tool does, and it stands apart from all sibling tools which cover unrelated functionality.

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 description implies usage: to change the appearance mode of a device/emulator. However, it does not explicitly state when to use this tool versus alternatives (though no direct alternative exists among siblings) or provide context like prerequisites (e.g., device must be booted). It leans on the reader to infer usage from the stated purpose.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dev-jackson/androidbuild-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server