Skip to main content
Glama

resume_print

Destructive

Resume a paused 3D print job, returning the nozzle to its previous position and continuing extrusion. Kiln verifies the resume actually took, so silently ignored commands report failure.

Instructions

Resume a paused print job.

The printer must currently be in a paused state.  Resuming will return
the nozzle to its previous position and continue extruding.

Kiln checks afterwards that the resume actually took, so a printer that
silently ignored the command reports a failure instead of a cheerful
"Print resumed."

A print paused at a planned hardware stop (a pause written into the file
so a nut, a magnet or a bearing can go in) is refused with
``code: "HARDWARE_NOT_CONFIRMED"`` and a ``hardware`` block saying what
goes in.  Tell the person, wait for them to say every piece is in and
sits level with or below the top of the print, then resume with
``hardware_confirmed=true``.  Never pass it on your own judgement.

Args:
    force: Send the resume even when Kiln believes the printer is not
        paused.  Use this when the printer's own screen disagrees with
        what Kiln reports — a printer can report ``RUNNING`` with
        perfectly fresh telemetry while standing still, and without this
        the wrong state word would leave you unable to recover the print.
    printer_name: Which printer to resume.  Omit for the default
        printer.  Pass the same name you paused with.
    hardware_confirmed: The person has said every piece of hardware for
        this stop is in and sits level with or below the top of the
        print.  Only on their word.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "resume_print"
  }
}

Input Schema

NameRequiredDescriptionDefault
forceNoSend the resume even when Kiln believes the printer is not paused. Use this when the printer's own screen disagrees with what Kiln reports — a printer can report ``RUNNING`` with perfectly fresh telemetry while standing still, and without this the wrong state word would leave you unable to recover the print. Default: false.
printer_nameNoWhich printer to resume. Omit for the default printer. Pass the same name you paused with.
hardware_confirmedNoThe person has said every piece of hardware for this stop is in and sits level with or below the top of the print. Only on their word. Default: false.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv1.5.1
    • changedInput schema / properties / force / description
      Previous value: -"Default: false."New value: +"Send the resume even when Kiln believes the printer is not paused.  Use this when the printer's own screen disagrees with what Kiln reports — a printer can report ``RUNNING`` with perfectly fresh telemetry while standing still, and without this the wrong state word would leave you unable to recover the print. Default: false."
    • changedInput schema / properties / hardware_confirmed / description
      Previous value: -"Default: false."New value: +"The person has said every piece of hardware for this stop is in and sits level with or below the top of the print.  Only on their word. Default: false."
    • addedInput schema / properties / printer_name / description
      Added value: +"Which printer to resume.  Omit for the default printer.  Pass the same name you paused with."
  2. Changed4 schema fields changedv1.5.0
    • removedInput schema / properties / force / default
      Removed value: -false
    • addedInput schema / properties / force / description
      Added value: +"Default: false."
    • addedInput schema / properties / hardware_confirmed
      Added value: +{
      +  "description": "Default: false.",
      +  "title": "Hardware Confirmed",
      +  "type": "boolean"
      +}
    • removedInput schema / properties / printer_name / default
      Removed value: -null
  3. Changed2 schema fields changedv1.3.1
    • addedInput schema / properties / force
      Added value: +{
      +  "default": false,
      +  "title": "Force",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / printer_name
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Printer Name"
      +}
  4. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

Annotations already flag destructiveHint=true and readOnlyHint=false, so the safety profile is known, but the description adds real behavior the schema cannot express: post-command verification ('Kiln checks afterwards that the resume actually took'), silent-ignore failures, and the HARDWARE_NOT_CONFIRMED refusal with a hardware block. It does not, however, say what a resume can damage or what the failure response body otherwise contains beyond the one error code.

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?

The purpose is front-loaded and the paragraphs build in a sensible order: precondition, effect, verification, refusal handling, then arguments. The trailing Args section duplicates the 100%-covered schema descriptions word-for-word in places (force and hardware_confirmed), which is dead weight an agent already reads from the 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 three-optional-parameter mutation tool with no output schema, the definition covers preconditions, physical effect, verification behavior, and the one structured error an agent must handle, and it gives explicit instruction on the human-confirmation step. The description does not need to explain return values since no output schema is exposed.

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% and the description's Args block largely restates the schema text for force, printer_name, and hardware_confirmed, so it adds little semantic meaning beyond the structured fields. The genuinely new information (what to do when the hardware refusal fires) is workflow guidance rather than parameter semantics, keeping this at the baseline for a fully documented schema.

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 opening line pairs a specific verb with a specific resource ('Resume a paused print job') and the body adds the physical effect (nozzle returns to previous position, extruding continues). It is clear what the tool does, but it never distinguishes itself from nearby siblings such as firmware_resume_print, resume_interrupted_print, or fleet_resume, leaving the agent to infer which resume path applies.

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?

It states the precondition ('the printer must currently be in a paused state') and gives a concrete condition for the force flag (printer's own screen disagrees with Kiln, e.g. reporting RUNNING while standing still), plus the tell-the-person-then-set-hardware_confirmed workflow. What's missing is routing against the resume-shaped alternatives, so it is clear context without explicit alternatives.

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

Deploy Server

Other Tools