Skip to main content
Glama

propose_commands

Propose batched Lemon Studio project edits for user approval before applying, returning the proposal number and a summary of changes. Use when edits require Apply or Discard confirmation.

Instructions

Like apply_commands, but Lemon Studio asks the user to Apply or Discard. Returns the proposal number and what it would change.

Input Schema

NameRequiredDescriptionDefault
nameNoProposal
commandsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It usefully discloses that execution is deferred to a human Apply/Discard gate and reports what the call returns (proposal number plus a change preview), which is the key behavioral trait. But it omits what happens to a pending proposal if the user never responds, whether proposals expire, and whether the commands are validated at proposal time.

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, zero filler, and the differentiating behavior (the Apply/Discard gate) is front-loaded followed by the return contract. Nothing is redundant with the schema or title.

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?

The description does well to describe return content in the absence of an output schema, and it frames the human-gated workflow. However, for a tool whose only required parameter is an unbounded array of arbitrary objects, leaving that payload completely undocumented makes the definition insufficient to call the tool correctly without outside knowledge.

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 description coverage is 0%, so the description must compensate and does not: neither the `name` parameter (default 'Proposal') nor the shape of the `commands` array of free-form objects is explained. Since the entire tool depends on the command payload format, this is the most consequential gap in the definition.

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 states a specific operation — proposing commands that Lemon Studio surfaces to the user for Apply or Discard — and explicitly anchors it against the sibling apply_commands. An agent can distinguish the two without opening either schema. It stops short of 5 only because what a 'command' actually is remains unstated.

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?

Naming 'Like apply_commands, but...' gives a clear context signal: use this when user confirmation is wanted, use apply_commands for immediate execution. The condition is implied by the contrast rather than spelled out with an explicit 'use this instead when' clause, and there are no exclusions or prerequisites given.

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