Skip to main content
Glama

Print job status

print_status
Read-onlyIdempotent

Status of one print job you own (queued, sent to the agent, delivered or failed) plus when the agent last connected. 'delivered' means the agent handed the bytes to the printer; it does not prove the label came out. printer_status is the printer's own status reading taken after delivery (health ready / blocked / unknown, flags such as paused, head_open, media_out, ribbon_out); null means the printer was not asked, and no reading ever confirms that the label printed.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "job_id": "<job_id>"
    },
    "name": "print_status"
  }
}

Input Schema

NameRequiredDescriptionDefault
job_idYesJob id returned by print_label

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.2/5.0
Behavior5/5

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

Annotations already declare readOnlyHint/idempotentHint, and the description adds substantial behavior beyond that: it defines what "delivered" actually means, warns that delivery does not prove the label printed, and explains that printer_status is a separate post-delivery reading whose null value means the printer was never queried. This is exactly the nuance an agent needs to avoid over-claiming success.

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?

It is front-loaded with the core purpose in the first clause, and every subsequent sentence disambiguates a field that could otherwise be misread. It is somewhat dense and long-sentenced, but there is no filler; each clause carries a distinct caveat.

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?

There is no output schema, yet the description effectively documents the return values: the status enum, the last-agent-connection field, and the printer_status object with its health values, flags, and null semantics. For a one-parameter read tool this leaves nothing material for an agent to guess.

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 job_id is already documented in the schema as the id returned by print_label. The description adds only the ownership constraint ("a job you own"), which is minor extra meaning rather than new syntax or format detail, 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?

The description names a specific verb and resource ("Status of one print job you own") and enumerates the possible states (queued, sent to the agent, delivered, failed). The phrase "one print job" implicitly contrasts with the sibling bulk_status, so an agent can pick between them without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The scope ("one print job you own") implies the usage context: poll a job you previously submitted, typically after print_label. However, it never explicitly says when to prefer this over bulk_status, nor does it state any preconditions beyond ownership, so guidance remains inferred rather than stated.

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.