Skip to main content
Glama

ecg_discard_proposal

Discard a declined proposal from the session so it is not persisted in the engineering memory graph. Use after the user rejects staged content.

Instructions

The user declined the staged proposal. Drop it. Do not store it later.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
session_idYes

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?

No annotations are provided, so the description carries the full behavioral burden. It adds one useful trait beyond the schema — 'Do not store it later' signals the proposal should not be persisted — but it omits whether the discard is permanent/reversible, whether it requires permissions, and what happens to the associated session.

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?

Three short sentences that are front-loaded with the discard intent. Slight redundancy between 'Drop it' and 'Do not store it later' keeps it from being maximally tight, but nothing is wasted.

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?

For a mutation-style tool with no annotations, no output schema, and an undocumented parameter, the description is too thin. It doesn't clarify what a 'staged proposal' is, how session_id scopes the operation, or what the caller should expect afterward.

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?

There is one required parameter (session_id) at 0% schema description coverage, and the description says nothing about what session_id represents or that it identifies the session whose proposal is being dropped. The description fails to compensate for the schema gap.

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 verb 'Drop' plus the resource 'the staged proposal' make the core action clear, and 'discard_proposal' aligns with it. However, the framing is narrative ('The user declined...') rather than a declarative statement of what the tool does, and it doesn't explicitly distinguish itself from siblings like ecg_cancel_step.

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 context 'The user declined the staged proposal' implies the trigger condition, and 'Do not store it later' hints at the intent. But there is no explicit when-to-use guidance and no comparison to alternatives such as ecg_cancel_step or ecg_resolve_conflict, leaving usage implied rather than stated.

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