Skip to main content
Glama
shapeyourphone

shapeyourphone

by rachitkj

launcher_set_config

Replace a whole Android home-screen layout after validation, preview its summary, and apply only with owner approval.

Instructions

Replace the whole home-screen config (validated first; preview shows a summary).

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "config": "<config>"
    },
    "name": "launcher_set_config"
  }
}

Input Schema

NameRequiredDescriptionDefault
configYes
deviceNoadb serial, only needed when several phones are connected
owner_approvedNotrue only after the phone's owner saw the preview and agreed. Omit to get a preview.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.1/5.0
Behavior3/5

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

Annotations declare readOnlyHint=false, destructiveHint=false, and openWorldHint=false; the description usefully adds that input is validated before any write and that a preview summary is produced. What it does not disclose is what happens to the existing config that gets replaced, or whether the replacement can be undone — relevant since launcher_rollback and launcher_history exist as siblings.

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?

A single front-loaded sentence with no filler; the scope ('whole') leads and the behavioral caveats are parenthetical. It is efficient but almost too terse for a tool whose required argument is an unconstrained object.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a configuration-replacing mutation with a nested open-ended required object and no output schema, so the description must carry most of the explanatory weight. It leaves undefined the config structure, the effect on the pre-existing layout, and the return shape after a successful write.

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 67%, but the uncovered 33% is the mandatory 'config' parameter — a free-form nested object with no description at all, and the description likewise never explains its shape or keys. The only semantic value added is the preview/validation framing for owner_approved, which is already stated in the schema. The required parameter is effectively undocumented everywhere.

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 gives a specific verb and resource: 'Replace the whole home-screen config'. 'Whole' distinguishes it by implication from the partial-mutation sibling launcher_edit, though that sibling is never named. An agent can tell what the tool does without opening the schema.

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?

It hints at a two-step workflow ('validated first; preview shows a summary'), which implies a preview-then-commit pattern, but the actual trigger (omitting owner_approved) lives only in the schema. It never says when to prefer this over launcher_edit, launcher_preview, or launcher_rollback when reverting.

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