Skip to main content
Glama

apply-policies

Destructive

Set eBay business policies (payment, return, shipping) across many listings at once.

Name only the policy kinds you want changed — one you leave out stays as it is on each listing. Policy IDs come from get-seller-policies and are checked against the channel before anything is queued: eBay rejects a bad policy per listing, so an unchecked ID across a large selection produces thousands of individual failures instead of one error.

This revises live listings. Pass dryRun: true to see the scope first, and confirmCount is required with selectAll. Follow progress with get-action. Authenticated via bearer token.

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": {
      "sellerId": "<sellerId>"
    },
    "name": "apply-policies"
  }
}

Input Schema

NameRequiredDescriptionDefault
dryRunNoReport the scope and queue nothing
filtersNoFilter tree used when selectAll is true
sellerIdYesSeller whose policies these are; see get-sellers
selectAllNoRevise every listing matching filters instead
listingIdsNoListings to revise; see get-product-listings
confirmCountNoListings you last counted for this selection. Required with selectAll; the run is refused if the filters no longer match exactly this many.
returnPolicyIdNoReturn policy to apply; omit to leave it unchanged
paymentPolicyIdNoPayment policy to apply; omit to leave it unchanged
shippingPolicyIdNoShipping policy to apply; omit to leave it unchanged

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, but the description adds material context beyond them: it revises LIVE listings, validates policy IDs against the channel before queueing (preventing thousands of per-listing failures), enforces confirmCount as a staleness guard when selectAll is used, and requires bearer auth. These are the exact operational traits an agent needs before a destructive bulk write.

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 tight paragraphs: what it does, the omission/validation semantics, then the safety and auth protocol. Front-loaded with the action and free of 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?

For a destructive, open-ended bulk mutation with a nested filters object and no output schema, the description covers scope reporting, validation, staleness confirmation, async progress tracking, and auth. Nothing an agent needs to invoke it safely is missing.

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 100%, so the baseline is 3, but the description earns above that by explaining the partial-update contract (any policy kind you omit stays as-is) and the confirmCount guard behavior (run refused if filters no longer match), which are the two semantics most likely to be misread.

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 (set), a specific resource (eBay business policies: payment, return, shipping), and the scope (across many listings at once). No sibling performs this operation, and the description names the helper siblings it depends on (get-seller-policies, get-action), so the agent can place it immediately.

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 tells the agent to source IDs from get-seller-policies, to pass dryRun: true first to see scope, that confirmCount is required with selectAll, and to follow progress with get-action. That is when-to-use plus prerequisites plus the safety path, all in one place.

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.