Skip to main content
Glama

Check an HLS request

status
Read-onlyIdempotent

Existing exact HLS request ID only: read-only lifecycle lookup. It does not create or modify a request/order or authorize payment. For long-running or manual work, check status or wait rather than creating another request. Returns only bounded public state, question, quote/payment instruction, fulfillment/shipping update, and next action; it does not list or search requests.

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": {
      "request_id": "<request_id>"
    },
    "name": "status"
  }
}

Input Schema

NameRequiredDescriptionDefault
request_idYesExact opaque request_id previously returned by HLS; no list, search, or email lookup is available.

Output Schema

NameRequiredDescriptionDefault
quoteYes
stateYesCurrent durable HLS request state.
paymentYes
shippingYes
terminalYesTrue only when no further lifecycle change is expected.
request_idYesExact opaque HLS request ID supplied by the caller.
updated_atYes
next_actionYes
open_questionYes
next_action_codeYesStable machine-readable code for the next supported action.
fulfillment_notesYes
human_action_requiredYesTrue only when the requesting human must answer a question or approve an available live payment.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / additionalProperties
      Added value: +false
    • addedInput schema / properties / request_id / description
      Added value: +"Exact opaque request_id previously returned by HLS; no list, search, or email lookup is available."
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "https://json-schema.org/draft/2020-12/schema",
      +  "additionalProperties": false,
      +  "properties": {
      +    "fulfillment_notes": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "human_action_required": {
      +      "description": "True only when the requesting human must answer a question or approve an available live payment.",
      +      "type": "boolean"
      +    },
      +    "next_action": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "next_action_code": {
      +      "description": "Stable machine-readable code for the next supported action.",
      +      "type": "string"
      +    },
      +    "open_question": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "payment": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "agent_authorized_charge": {
      +          "const": false,
      +          "type": "boolean"
      +        },
      +        "approval": {
      +          "const": "human_only",
      +          "type": "string"
      +        },
      +        "external_payment_available": {
      +          "description": "True only when this exact request exposes a usable live human-payment path.",
      +          "type": "boolean"
      +        },
      +        "mode": {
      +          "description": "Configured Stripe mode for this status response.",
      +          "enum": [
      +            "test",
      +            "live"
      +          ],
      +          "type": "string"
      +        },
      +        "required": {
      +          "type": "boolean"
      +        },
      +        "status": {
      +          "anyOf": [
      +            {
      +              "enum": [
      +                "unpaid",
      +                "failed",
      +                "paid",
      +                "refund_pending",
      +                "refunded",
      +                "refund_failed",
      +                "cancelled",
      +                "expired"
      +              ],
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "url": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        }
      +      },
      +      "required": [
      +        "required",
      +        "url",
      +        "status",
      +        "mode",
      +        "external_payment_available",
      +        "approval",
      +        "agent_authorized_charge"
      +      ],
      +      "type": "object"
      +    },
      +    "quote": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "currency": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "execution_fee_cents": {
      +          "anyOf": [
      +            {
      +              "maximum": 9007199254740991,
      +              "minimum": -9007199254740991,
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "expires_at": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "merchandise_fulfillment_cents": {
      +          "anyOf": [
      +            {
      +              "maximum": 9007199254740991,
      +              "minimum": -9007199254740991,
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "shipping_cents": {
      +          "anyOf": [
      +            {
      +              "maximum": 9007199254740991,
      +              "minimum": -9007199254740991,
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "tax_fees_cents": {
      +          "anyOf": [
      +            {
      +              "maximum": 9007199254740991,
      +              "minimum": -9007199254740991,
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "total_cents": {
      +          "anyOf": [
      +            {
      +              "maximum": 9007199254740991,
      +              "minimum": -9007199254740991,
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        }
      +      },
      +      "required": [
      +        "merchandise_fulfillment_cents",
      +        "shipping_cents",
      +        "tax_fees_cents",
      +        "total_cents",
      +        "execution_fee_cents",
      +        "currency",
      +        "expires_at"
      +      ],
      +      "type": "object"
      +    },
      +    "request_id": {
      +      "description": "Exact opaque HLS request ID supplied by the caller.",
      +      "type": "string"
      +    },
      +    "shipping": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "carrier": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "tracking_number": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "tracking_url": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        }
      +      },
      +      "required": [
      +        "carrier",
      +        "tracking_number",
      +        "tracking_url"
      +      ],
      +      "type": "object"
      +    },
      +    "state": {
      +      "description": "Current durable HLS request state.",
      +      "enum": [
      +        "received",
      +        "needs_information",
      +        "quoting",
      +        "awaiting_payment",
      +        "paid",
      +        "fulfilling",
      +        "shipped",
      +        "delivered",
      +        "manual_review",
      +        "exception",
      +        "cancelled",
      +        "declined"
      +      ],
      +      "type": "string"
      +    },
      +    "terminal": {
      +      "description": "True only when no further lifecycle change is expected.",
      +      "type": "boolean"
      +    },
      +    "updated_at": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "request_id",
      +    "state",
      +    "terminal",
      +    "human_action_required",
      +    "next_action_code",
      +    "open_question",
      +    "quote",
      +    "payment",
      +    "fulfillment_notes",
      +    "shipping",
      +    "next_action",
      +    "updated_at"
      +  ],
      +  "type": "object"
      +}
  2. First observed

TDQS

A4.7/5.0
Behavior5/5

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

The description goes beyond the annotations by clarifying what state is returned, what side effects are absent, and what the tool does not do (no list/search, no creation, no payment authorization). This is consistent with the readOnlyHint, idempotentHint, and destructiveHint annotations.

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?

The description is compact and front-loaded, with the key constraint 'Existing exact HLS request ID only' stated first. Every sentence adds useful behavioral or usage information without redundancy.

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?

Given the single well-documented parameter, rich annotations, output schema, and clear scope boundaries, the description fully covers what an agent needs to select and invoke this tool correctly.

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?

The schema already fully describes request_id with a pattern and an explanation that it must be an exact opaque ID with no list/search/email lookup. The description reinforces this but does not add substantial new parameter-level meaning beyond the schema, so the high-coverage baseline of 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: a read-only lifecycle lookup for an existing exact HLS request ID. It clearly distinguishes itself from creating/modifying requests and from listing/searching requests, so an agent can tell exactly what this tool does.

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 explicitly says when to use it: when you already have the exact HLS request ID and need status. It also gives when-not guidance, noting it does not create/modify or authorize payment, and advises checking status or waiting rather than creating another request for long-running work.

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