Skip to main content
Glama

Ni Biashara Shelves — Africa FX, freight & compliance checks (x402)

Open a purchase for a shelf (escape hatch)

buy_shelf

Creates a Coinbase checkout for any SKU — use this when no job-named tool exists. Returns x402_url (pay with any x402 client), pay_url (human) and claim_url. Does not move money itself.

Input Schema

NameRequiredDescriptionDefault
mcNoMC/docket number — carrier-authority-check, broker-authority-check, load-vet-pack
dotNoUSDOT number — carrier-authority-check, carrier-safety-basics, load-vet-pack
skuYesShelf SKU to buy (required) — any id from list_shelves, e.g. fx-official, load-vet-pack, nb-landing-page
nameNoLegal name to screen — sanctions-screen (required there); optional OFAC screen on load-vet-pack
pairNoe.g. USD-KES; required for pair shelves
textNoText to localize, up to 120 words — swahili-localization-instant
briefNoservice shelves: what you need
metroNoMetro — diaspora-metro-snapshot
addressNoDigital currency address to exact-match — sanctions-wallet-screen
contactNoservice shelves: delivery email
categoryNoDirectory category — diaspora-metro-snapshot
broker_mcNoBroker MC/docket number — load-vet-pack (runs the broker-authority check)
directionNoen-sw or sw-en — swahili-localization-instant (default en-sw)
first_timeNotrue|false — first renewal? tx-realestate-ce-check (default false)
source_urlNoHTTPS URL of a billing export, CSV/JSON up to 10MB — cloud-spend-report
license_lineNoTexas insurance (TDI) license line — tx-insurance-ce-check: general_lines_life_accident_health_hmo | general_lines_property_casualty | personal_lines_property_casualty | limited_lines | public_adjuster | all_lines_adjuster
license_typeNoTexas real-estate (TREC) license type — tx-realestate-ce-check: sales_agent | broker | broker_associate | inspector
years_licensedNoYears licensed, integer 0-40 — tx-insurance-ce-check (default 2)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / category
      Added value: +{
      +  "description": "Directory category — diaspora-metro-snapshot",
      +  "type": "string"
      +}
    • addedInput schema / properties / metro
      Added value: +{
      +  "description": "Metro — diaspora-metro-snapshot",
      +  "type": "string"
      +}
  2. Changed13 schema fields changed
    • addedInput schema / properties / address / description
      Added value: +"Digital currency address to exact-match — sanctions-wallet-screen"
    • addedInput schema / properties / broker_mc
      Added value: +{
      +  "description": "Broker MC/docket number — load-vet-pack (runs the broker-authority check)",
      +  "type": "string"
      +}
    • addedInput schema / properties / direction
      Added value: +{
      +  "description": "en-sw or sw-en — swahili-localization-instant (default en-sw)",
      +  "type": "string"
      +}
    • addedInput schema / properties / dot / description
      Added value: +"USDOT number — carrier-authority-check, carrier-safety-basics, load-vet-pack"
    • addedInput schema / properties / first_time / description
      Added value: +"true|false — first renewal? tx-realestate-ce-check (default false)"
    • addedInput schema / properties / license_line / description
      Added value: +"Texas insurance (TDI) license line — tx-insurance-ce-check: general_lines_life_accident_health_hmo | general_lines_property_casualty | personal_lines_property_casualty | limited_lines | public_adjuster | all_lines_adjuster"
    • addedInput schema / properties / license_type / description
      Added value: +"Texas real-estate (TREC) license type — tx-realestate-ce-check: sales_agent | broker | broker_associate | inspector"
    • addedInput schema / properties / mc / description
      Added value: +"MC/docket number — carrier-authority-check, broker-authority-check, load-vet-pack"
    • addedInput schema / properties / name / description
      Added value: +"Legal name to screen — sanctions-screen (required there); optional OFAC screen on load-vet-pack"
    • addedInput schema / properties / sku / description
      Added value: +"Shelf SKU to buy (required) — any id from list_shelves, e.g. fx-official, load-vet-pack, nb-landing-page"
    • addedInput schema / properties / source_url / description
      Added value: +"HTTPS URL of a billing export, CSV/JSON up to 10MB — cloud-spend-report"
    • addedInput schema / properties / text
      Added value: +{
      +  "description": "Text to localize, up to 120 words — swahili-localization-instant",
      +  "type": "string"
      +}
    • addedInput schema / properties / years_licensed / description
      Added value: +"Years licensed, integer 0-40 — tx-insurance-ce-check (default 2)"
  3. Changed2 schema fields changed
    • removedInput schema / properties / direction
      Removed value: -{
      -  "description": "swahili-localization-instant: en-sw or sw-en",
      -  "type": "string"
      -}
    • removedInput schema / properties / text
      Removed value: -{
      -  "description": "swahili-localization-instant: copy to localize, required for this SKU",
      -  "type": "string"
      -}
  4. Changed2 schema fields changed
    • addedInput schema / properties / direction
      Added value: +{
      +  "description": "swahili-localization-instant: en-sw or sw-en",
      +  "type": "string"
      +}
    • addedInput schema / properties / text
      Added value: +{
      +  "description": "swahili-localization-instant: copy to localize, required for this SKU",
      +  "type": "string"
      +}
  5. Changed9 schema fields changed
    • addedInput schema / properties / address
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / dot
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / first_time
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / license_line
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / license_type
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / mc
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / name
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / source_url
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / years_licensed
      Added value: +{
      +  "type": "string"
      +}
  6. First observed

TDQS

A4.2/5.0
Behavior4/5

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

No annotations, so the description carries the full burden — and it does real work: it discloses the three return fields (x402_url, pay_url, claim_url) and, critically, "Does not move money itself," which tells the agent this is a checkout-creation step, not a charge. Gaps remain on auth requirements, idempotency, and link expiry, which matter for a paid checkout tool.

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?

Three short sentences, no waste, with the escape-hatch condition front-loaded before the return values and the non-mutation caveat. Every sentence earns its place.

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 an 18-parameter generic checkout tool with no output schema and no annotations, the description covers the essentials: selection rule, return shape, and the money-movement caveat, while per-SKU parameter scoping is delegated to a fully documented schema. It stops short of covering failure modes or payment flow details an agent might need.

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 100% and each of the 18 parameters already documents which SKU it belongs to (e.g., address for sanctions-wallet-screen, license_line for tx-insurance-ce-check). The description adds no parameter-level meaning beyond the schema, 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?

States a concrete verb+resource ("Creates a Coinbase checkout for any SKU") and frames the tool's role as the generic fallback, which separates it from the fifteen-plus job-named siblings like vet_load, check_carrier_authority, or get_fx_official. An agent can tell instantly whether this is the right tool or whether a specific one exists.

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 no job-named tool exists" is an explicit routing rule, including an implicit when-not-to-use (a named SKU tool exists). It does not name list_shelves as the discovery path or the specific sibling examples, but the selection logic itself is unambiguous.

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