Skip to main content
Glama

Delete Form

form.delete
DestructiveIdempotent

Delete a form (a peek of kind form) from a sheet; the rows it collected stay; a record layout is refused. This always asks the user first: say which form goes before you call it. form.restore brings it back with its questions and settings.

Input Schema

NameRequiredDescriptionDefault
formIdYesThe form to delete (sheet.schema lists a sheet's forms).
sheetIdYes

Output Schema

NameRequiredDescriptionDefault
nameYes
formIdYes
deletedYes
sheetIdYes
restoreWithYesThe tool that brings it back, with sheetId + formId

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, so the description is not carrying the safety profile alone; it still adds real value by disclosing that collected rows survive, that the operation is reversible via form.restore, and that it is interactive/confirmation-gated. It stops short of stating permission requirements or how long the soft-deleted form remains restorable.

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, front-loaded with the action and its data-retention consequence, then the confirmation rule, then the undo path. Every sentence earns its place, though the parenthetical 'a peek of kind form' is internal jargon that costs a little scanning effort.

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

Completeness4/5

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

Given rich annotations and an output schema (so return values needn't be described), the definition covers consequences, reversibility, and the confirmation requirement well. The remaining gap is the undocumented sheetId, which matters because the tool requires both identifiers to be supplied correctly.

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 only 50% — formId is documented in the schema while sheetId carries no description — and the prose only gestures at identification via 'say which form goes'. It does not explain the sheetId/formId relationship or point to sheet.schema for discovery (that hint lives in the schema, not the description), so the coverage gap is not compensated.

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?

Names a specific verb and resource (delete a form) and immediately disambiguates what a form is ('a peek of kind form'), plus what it is not ('a record layout is refused'). An agent can distinguish this from peek.remove_layout_item or form.restore without opening any schema.

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?

It states the when-not condition (record layouts cannot be deleted here), the required human-in-the-loop precondition ('always asks the user first: say which form goes before you call it'), and routes to the correct alternative for reversal ('form.restore brings it back with its questions and settings'). No inference is required.

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