Skip to main content
Glama

asksteps: replace an existing form

asksteps_update_form
Idempotent

Replaces an existing form of the connected asksteps account. Requires "forms:write". IMPORTANT: this REPLACES the whole form — every step and field you do not send is gone. Call asksteps_get_form first, change what the user asked for, and send the result back complete. Forms built from a PDF and forms containing elements this format cannot describe are refused; the answer says which and why. The publication state is never changed.

Input Schema

NameRequiredDescriptionDefault
specYesThe complete new content of the form. Anything omitted is deleted.
form_idYesThe form id, as returned by asksteps_list_forms or asksteps_get_form.

Output Schema

NameRequiredDescriptionDefault
urlNoLink that opens the form in the asksteps studio. Give it to the user so they can look at the result. Absolute when this deployment knows its public base URL, otherwise a site-relative path; never invent the domain part.
noteYesOne sentence for the user. On rejection it says exactly what to fix.
formIdNoThe id of the form. Keep it — it is how you read or change the form later.
statusYesOutcome. One of: "created", "updated", "not_connected", "not_found", "invalid_spec" (the structure was rejected — the note says exactly what to fix), "not_editable" (this form cannot be written from a spec), "unavailable", "error". Authorisation can also refuse before the tool runs: "plan_required" (the account's plan does not include agent access), "not_enabled" (the account owner has not switched agent access on), "owner_required" (only the account owner may do this), "mandate_required" (the owner has not granted a mandate for this). The note then says what the user has to do.
stepCountNoNumber of steps the form ended up with.
fieldCountNoTotal number of fields across all steps.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / spec / properties / steps / items / properties / fields / items / properties / display
      Added value: +{
      +  "description": "For \"checkbox-group\": \"list\" (options listed one below the other, the default) or \"dropdown\" (a dropdown showing the picked options as tags). Optional.",
      +  "type": "string"
      +}
    • addedInput schema / properties / spec / properties / steps / items / properties / fields / items / properties / selection
      Added value: +{
      +  "description": "For \"checkbox-group\": \"single\" (exactly one option may be picked, e.g. yes/no, gender, a membership class) or \"multiple\" (any number, the default). Optional.",
      +  "type": "string"
      +}
    • changedInput schema / properties / spec / properties / steps / items / properties / fields / items / properties / type / description
      Previous value: -"Field type. One of: \"text\" (single line), \"text-area\" (multi-line), \"number\", \"date\", \"time\", \"select\" (dropdown, needs options), \"checkbox-group\" (multiple choice, needs options), \"boolean\" (single yes/no checkbox), \"file\" (upload), \"signature\" (drawn signature), \"image-upload\" (the visitor uploads one photo, e.g. a passport photo), \"contact\" (the built-in contact block: name, email, phone — use this instead of building those three by hand), \"text-block\" (explanatory text, not an input), \"table\" (a grid to fill in), \"image-choice\" (a picture to pick), \"image\", \"video\"."New value: +"Field type. One of: \"text\" (single line), \"text-area\" (multi-line), \"number\", \"date\", \"time\", \"select\" (dropdown, needs options), \"checkbox-group\" (choice group, needs options; one or several answers, see Selection), \"boolean\" (single yes/no checkbox), \"file\" (upload), \"signature\" (drawn signature), \"image-upload\" (the visitor uploads one photo, e.g. a passport photo), \"contact\" (the built-in contact block: name, email, phone — use this instead of building those three by hand), \"text-block\" (explanatory text, not an input), \"table\" (a grid to fill in), \"image-choice\" (a picture to pick), \"image\", \"video\"."
  2. Changed1 schema field changed
    • changedInput schema / properties / spec / properties / steps / items / properties / fields / items / properties / type / description
      Previous value: -"Field type. One of: \"text\" (single line), \"text-area\" (multi-line), \"number\", \"date\", \"time\", \"select\" (dropdown, needs options), \"checkbox-group\" (multiple choice, needs options), \"boolean\" (single yes/no checkbox), \"file\" (upload), \"signature\" (drawn signature), \"contact\" (the built-in contact block: name, email, phone — use this instead of building those three by hand), \"text-block\" (explanatory text, not an input), \"table\" (a grid to fill in), \"image-choice\" (a picture to pick), \"image\", \"video\"."New value: +"Field type. One of: \"text\" (single line), \"text-area\" (multi-line), \"number\", \"date\", \"time\", \"select\" (dropdown, needs options), \"checkbox-group\" (multiple choice, needs options), \"boolean\" (single yes/no checkbox), \"file\" (upload), \"signature\" (drawn signature), \"image-upload\" (the visitor uploads one photo, e.g. a passport photo), \"contact\" (the built-in contact block: name, email, phone — use this instead of building those three by hand), \"text-block\" (explanatory text, not an input), \"table\" (a grid to fill in), \"image-choice\" (a picture to pick), \"image\", \"video\"."
  3. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Annotations only cover readOnlyHint=false, idempotentHint=true and openWorldHint=false; the description adds what actually matters here: that every step/field not sent is destroyed, that "forms:write" is required, that certain forms are refused with a reason, and that publication state is untouched. That is substantive context the structured fields do not carry.

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?

Five tight sentences, front-loaded with the highest-risk fact (full replacement), then workflow, then refusal behavior, then the publication caveat. No sentence is redundant with the title or schema.

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 deeply nested, destructive mutation with an output schema, the description supplies the missing pieces: destructive scope, permission requirement, recommended read-before-write workflow, and refusal/preservation behavior. Nothing an agent needs to call it correctly is absent.

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 description coverage is 100%, so the nested spec structure is already fully documented field by field, including that omitted content is deleted. The description reinforces the "complete document" nature of spec but adds no syntax or format detail beyond the schema, so the baseline 3 applies.

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 and resource ("Replaces an existing form") plus scope ("of the connected asksteps account"), which cleanly separates it from asksteps_create_form and asksteps_update_funnel. The destructive whole-form semantics are stated up front rather than buried.

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?

Gives an explicit prerequisite workflow — "Call asksteps_get_form first, change what the user asked for, and send the result back complete" — which names the sibling to read with. It also states rejection conditions (PDF-built forms, undescribable elements). It does not explicitly contrast with asksteps_create_form for new forms, so it falls just short of full when/when-not coverage.

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