Skip to main content
Glama

When Works For You

Discard a draft

discard_draft
DestructiveIdempotent

Deletes an unsent draft outright — the draft page's own "Delete draft". Nothing was ever mailed or charged for it, so nothing is undone; a draft that has already been sent is a live event now and is archived with archive_event instead. Safe to repeat: a draft that is already gone answers ok. Needs the write permission.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
draft_idYesA draft_ id from create_event or list_events

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
okYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true, idempotentHint=true and readOnlyHint=false, and the description goes further by explaining *why* nothing is undone (nothing was ever mailed or charged) and what repeat calls return ("a draft that is already gone answers ok"). It also discloses the write-permission requirement, which no annotation conveys.

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-loaded with the core action and scoped in four tight clauses, none of which is filler. Slightly dense with em-dashes and nested asides, but every clause carries distinct operational information.

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

Completeness5/5

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

For a single-parameter destructive mutation, the description covers the safety profile, idempotency semantics, authorization requirement, and the correct sibling for the sent-draft case. An output schema exists, so return-value documentation is appropriately omitted.

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 coverage is 100% and the single draft_id parameter carries its own description naming the source tools, so the schema does the work. The description adds no format or validation detail about the identifier, which is the expected baseline when coverage is complete.

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 (deletes) and resource (unsent draft) plus the exact UI affordance it mirrors ("the draft page's own Delete draft"), which pins down intent unambiguously. It explicitly contrasts with archive_event, so an agent can distinguish it from the similarly named sibling without reading schemas.

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?

Names the alternative tool and the condition that selects it: a draft that has already been sent becomes a live event and must go to archive_event instead. It also frames the operation as targeting drafts not yet sent, giving a clear when-not boundary rather than just a when.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources