Skip to main content
Glama

Complete a buyer-side delivery check

assurance_complete

Use this when finishing a Buyer Assurance check. Pass the terms_id from assurance_prepare and mode PUBLIC_REPLAY (GAIP replays the service) or BUYER_SUBMITTED. Returns PASS / FAIL / UNKNOWN per check and a delivery receipt. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bodyNoBUYER_SUBMITTED: the response body you received (max 32 KiB).
modeYesPUBLIC_REPLAY: GAIP fetches the public URL itself. BUYER_SUBMITTED: check a response you pass in.
terms_idYesThe terms_id returned when the terms were registered.
body_sha256NoBUYER_SUBMITTED: SHA-256 of the body, instead of the body.
http_statusNoBUYER_SUBMITTED: the HTTP status you received.
content_typeNoBUYER_SUBMITTED: the Content-Type you received.
data_classificationNoPUBLIC (default) or NON_PERSONAL_PUBLIC. Never send personal data.PUBLIC

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4/5.0
Behavior4/5

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

With readOnlyHint=false and destructiveHint=false already declaring a non-destructive mutation, the description adds real value: recording a GAIP receipt, the fact that it is free with no account, and the hard constraint that inputs must be public and non-personal. It does not address idempotency or replay-determinism, which the annotations leave as non-idempotent.

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?

Three tight sentences, front-loaded with the trigger condition and followed by prereqs, mode choice, return values, and constraints. Every sentence carries information, though the return/constraint sentences could be marginally tighter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, yet the description covers the return shape (per-check PASS/FAIL/UNKNOWN plus a delivery receipt) and the auth/cost/data-handling profile. For a 7-parameter tool with two enums, the main remaining gap is guidance on which BUYER_SUBMITTED parameters to supply together.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is already 100%, so the baseline is 3; the description still adds cross-tool provenance for terms_id (it must come from assurance_prepare) and clarifies the PUBLIC_REPLAY vs BUYER_SUBMITTED choice beyond the enum labels. It stops short of explaining the BUYER_SUBMITTED field bundle (body, http_status, content_type, body_sha256).

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 description states a concrete action (finishing/completing a Buyer Assurance check) and names the specific output (PASS/FAIL/UNKNOWN per check plus a delivery receipt). It implicitly positions itself against assurance_prepare by consuming the terms_id that prepare produces, though it never names assurance_verify or other siblings directly.

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?

"Use this when finishing a Buyer Assurance check" gives clear context, and the prerequisite (terms_id from assurance_prepare) plus the two mode choices are explained inline. It lacks explicit when-not-to-use guidance against siblings like assurance_verify, so it stops short of a 5.

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.