Skip to main content
Glama
Intrect-io

lyra-browser

Official
by Intrect-io

save_draft

Saves form items privately without publishing by submitting only when the publish control stays on its private setting; refuses if it is not.

Instructions

Save the item without showing it to anyone — the safe way to send a form.

A site with no separate "save draft" button means every form POST is the one that could publish, so the difference has to be read off the page rather than chosen by the caller. This sends the form only after confirming the publish control is still on its private setting, and refuses if it is not — so it cannot be used to publish, and a page left armed by anything else will not slip out through it.

Measured on KVR: a new news item opens with is_draft=1 and posting the form then saves it privately.

submit names the control that sends the form — read_form reports it in submitText (Submit on a news item, Add on a product). This asks for SUBMIT but never for PUBLISH: saving is an ordinary request, and keeping the two apart is what lets an operator write and keep an item without ever approving a release.

Use publish instead when the item should go out to an audience.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
reasonNo
submitNo
confirmNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does substantial work: it discloses the pre-flight check on the publish control and the refusal path if the page is not on its private setting, plus the concrete KVR observation (is_draft=1). It omits auth requirements, idempotency, and what a refusal looks like on the wire, so not a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded in the first sentence, but the body is roughly 180 words of literary rationale ('a page left armed by anything else will not slip out through it', the operator/approval framing) that a caller does not need. Several sentences are rhetorical rather than operational.

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

Completeness3/5

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

The output schema covers return values and the safety invariant is well documented, but for a 3-parameter tool with 0% schema description coverage and no annotations, leaving `reason` and `confirm` undefined is a real gap. An agent can call it, but not confidently with non-default arguments.

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 0%, so the description must compensate for all three params. It explains `submit` well — the control that sends the form, discoverable via `read_form`'s `submitText` — but `reason` is never mentioned and `confirm` is only obliquely implied by the description of the private-setting check rather than tied to the boolean.

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?

The description states a concrete verb and resource (save the item privately) and explicitly contrasts it with the sibling `publish`, making it distinguishable without opening the schema. The guard behavior ('cannot be used to publish') sharpens the scope further.

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 names the alternative tool and the exact condition that selects it: 'Use `publish` instead when the item should go out to an audience.' It also explains why the distinction matters, which is the when-not case an agent needs.

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