Skip to main content
Glama

Have It Printed

Set documents and recipient

hip_update_job
Idempotent

Set the documents, print options and US mailing recipient on a job. Price fields are rejected: the server computes all amounts.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
filesNo
optionsNo
productNohow the job is mailed. tracked_document (the default): printed and mailed flat in a rigid mailer with a free tracking number. basic_letter: up to 5 pages, one copy of each document, folded into a standard envelope and mailed First-Class, with no tracking. certified_letter: the same letter sent by Certified Mail, with a tracking number. hip_get_service_info has the prices.
recipientNoUS mailing address
job_handleYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / product
      Added value: +{
      +  "description": "how the job is mailed. tracked_document (the default): printed and mailed flat in a rigid mailer with a free tracking number. basic_letter: up to 5 pages, one copy of each document, folded into a standard envelope and mailed First-Class, with no tracking. certified_letter: the same letter sent by Certified Mail, with a tracking number. hip_get_service_info has the prices.",
      +  "enum": [
      +    "tracked_document",
      +    "basic_letter",
      +    "certified_letter"
      +  ],
      +  "type": "string"
      +}
  2. Changed1 schema field changed
    • changedInput schema / properties / files / items / properties / size / enum
      Previous value: -[
      -  "8.5x11",
      -  "8x10",
      -  "11x17"
      -]New value: +[
      +  "8.5x11"
      +]
  3. First observed

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare this is a non-read-only, idempotent, non-destructive, closed-world mutation, and the description's 'Set' wording is consistent with idempotentHint=true. It adds one genuinely useful behavioral rule beyond the annotations: price fields are rejected because the server computes all amounts. However, it does not say whether a second call replaces or merges documents, nor what state the job must be in.

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?

Two tight sentences, front-loaded with the action and its targets, followed by the one non-obvious constraint. Every clause carries information and nothing is padded.

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?

For a nested-object mutation with no output schema and only 40% parameter coverage, the description covers the shape of the call but not the operational context: replacement vs. merge behavior, required job state, and what a successful response confirms are all 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 only 40%, so the description has to compensate and partly does by naming documents, print options, and the recipient, and by flagging that price fields are invalid input. It still leaves the free-form 'options' object unexplained and says nothing about job_handle semantics or how the files array relates to existing documents.

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?

States a specific verb ('Set') and enumerates the resources being set: documents, print options, and US mailing recipient on a job. It clearly implies a mutation of an existing job rather than creation, which separates it from hip_create_job, but it never names that sibling explicitly.

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

Usage Guidelines2/5

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

There is no explicit when-to-use guidance, no statement of prerequisites (e.g. the job must already exist and be in an editable state), and no routing to alternatives such as hip_create_job or hip_get_service_info. The only implicit signal is the required job_handle, which the agent must infer means an existing job.

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