Skip to main content
Glama

Find proxy shoppers for a shop

find_offers
Read-onlyIdempotent

List trusted proxy shopper and escrow combinations for a shop, region, and payment method to buy from cash-only shops.

Instructions

Step 1 of buying from a cash-only or crypto-unsupported shop: list the trusted proxy shopper × escrow combinations that serve this shop, region and payment method. Each offer has an index, the shopper's fee, delivery days, cash regions and order limit, the escrow's fees and dispute SLA, and which operator list (under which coordinator) vouches for it. Pass the index to request_quote with the same shop_url, region and payment. Read-only; an empty list means nobody serves that shop/region yet (network_info shows what exists).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
regionYesthe shop's region code, prefix-matched: country 'JP', prefecture 'JP-13', Japanese municipality 'JP-13-13104'
paymentNohow you pay: btc-signet (default; the only one on ps-main) or usdc-evm
shop_urlYesthe shop's URL, e.g. https://shop.example/

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover readOnlyHint, openWorldHint and idempotentHint, so 'Read-only' is redundant. However the description adds real behavioral context: an empty list has a specific meaning (nobody serves that shop/region yet), and it enumerates what each offer carries (fee, delivery days, cash regions, order limit, escrow fees, dispute SLA, vouching operator list) in the absence of an output schema.

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?

Front-loads the essential 'Step 1 of...' framing and keeps the reader on a clear workflow path. It is dense and slightly long due to the offer-field enumeration, but each clause carries useful information rather than filler.

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?

With no output schema, the description takes on the burden of describing return contents (offer index, fees, delivery days, escrow SLA, operator list) and explains how to consume the index. Combined with the sibling routing, an agent has everything needed to call it and act on the result.

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%, so the schema already documents region prefix-matching, the payment enum and shop_url format. The description reinforces the coupling of shop_url/region/payment across find_offers and request_quote but adds no new per-parameter syntax beyond what the schema provides, so baseline 3 is appropriate.

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 and resource: list proxy shopper × escrow combinations serving a given shop, region and payment method. This is clearly distinct from siblings like network_info (what exists) and request_quote (the next step), which the description itself names.

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?

Explicitly frames itself as 'Step 1 of buying from a cash-only or crypto-unsupported shop', names the follow-up tool (request_quote) and what to pass to it, and routes the no-results case to network_info. When-to-use, next-step and fallback are all covered.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.