Skip to main content
Glama

buy_pack

Start buying a pack (pack_5 = $5, pack_10 = $10, pack_50 = $50; each $1 adds 3,636 email credits, which don't renew and last until used, plus a purchase fee of 5% or at least $0.50 at checkout; GET /v1/pricing has the totals). Returns a checkout_url for a person to pay; the credits arrive once the payment clears. First show the person the refund policy and terms from GET /v1/policy; pass agree=true and its version only after they agree.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
agreeYesThe person agreed to the refund policy and terms (GET /v1/policy)
pack_idYes
policy_versionYesversion from GET /v1/policy

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden and does so well: it discloses the return value (checkout_url), the delayed credit delivery ('credits arrive once the payment clears'), the non-renewing nature of credits, and the 5%/$0.50 minimum purchase fee. It does not cover retry/idempotency behavior or what happens if payment never clears, which keeps it short of a 5.

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 opening clause front-loads purpose and pricing, and the remaining clauses cover output, payment timing, and prerequisites in order. The nested parentheticals are dense, but every clause carries information an agent needs.

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?

For a no-annotation, no-output-schema purchase tool, the description supplies price tiers, fee logic, the return shape (checkout_url), and the consent prerequisite. What is missing is failure/repeat-call behavior and how the resulting checkout relates to order_status.

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 coverage is 67%, and pack_id has no schema description at all, so the description's enumeration of pack_5/pack_10/pack_50 with prices is genuinely required to use that parameter. It also contextualizes agree and policy_version as gating consent values obtained from GET /v1/policy, adding workflow meaning beyond the terse schema descriptions.

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?

States a specific verb+resource ('Start buying a pack') and immediately enumerates the exact pack IDs and their dollar values, so an agent knows precisely what this tool sells and at what price. It is clearly distinguishable from sibling reads like get_pricing or order_status.

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 gives a clear precondition workflow: show the refund policy/terms from GET /v1/policy first, then pass agree=true and the returned version only after consent. It even points to GET /v1/pricing for totals rather than doing that math itself. What it lacks is explicit guidance on when this tool should not be used or how it relates to order_status for subsequent tracking.

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