Skip to main content
Glama

ebay_create_shipment_from_shipping_quote

Create an eBay shipment and shipping label by purchasing a selected rate from an existing shipping quote, charging the seller's billing agreement and returning tracking and label URL.

Instructions

Purchase postage: create a shipment and its shipping label from one rate of a shipping quote (Logistics API createFromShippingQuote). This charges the seller's billing agreement the rate's base cost plus any additionalOptions (eBay error 90030 means no billing agreement is set up). Pass shipmentRequest with shippingQuoteId and rateId from ebay_create_shipping_quote, optionally additionalOptions, labelSize, labelCustomMessage, and returnTo. Returns the shipment with shipmentId, tracking number, totalShippingCost, and labelDownloadUrl; get the PDF with ebay_download_shipping_label_file. Logistics API is limited release (eBay-approved developers only, USPS rates and labels only) and needs the https://api.ebay.com/oauth/api_scope/sell.logistics scope, which is not requested by default: eligible keysets add it to EBAY_OAUTH_SCOPES and re-consent.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
marketplaceIdNoX-EBAY-C-MARKETPLACE-ID for the request, e.g. EBAY_US; defaults to the configured EBAY_MARKETPLACE_ID
shipmentRequestYesGenerated CreateShipmentFromQuoteRequest body: the quote and rate to purchase

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.18.0

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond the annotations by disclosing the financial side effect (charges the billing agreement the rate's base cost plus any additionalOptions), the specific failure mode and error code (90030 = no billing agreement), and the auth/consent requirement (sell.logistics scope not requested by default). Consistent with readOnlyHint=false and idempotentHint=false.

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-loaded with the action and outcome, then dependency, then return values, then constraints — a sensible order. It is dense and clause-heavy in the middle, but nearly every clause carries operational information (error code, scope, eligibility) 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 compensates by naming the returned fields (shipmentId, tracking number, totalShippingCost, labelDownloadUrl). Combined with the auth, eligibility, and billing details, an agent has everything needed to decide whether it can even call this and what to expect back.

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 already 100%, so the baseline is 3, but the description adds meaningful provenance: it explains that shippingQuoteId/rateId must come from a prior quote call and enumerates the optional fields (additionalOptions, labelSize, labelCustomMessage, returnTo) and their cost implication. It stops short of explaining the marketplaceId header default, but the added sourcing context exceeds the schema.

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?

Opens with a concrete verb+resource ('Purchase postage: create a shipment and its shipping label') and scopes it to 'one rate of a shipping quote (Logistics API createFromShippingQuote)'. This clearly separates it from sibling ebay_create_shipping_quote (which produces the quote) and from label-download tools.

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 states the upstream dependency (shippingQuoteId and rateId come from ebay_create_shipping_quote), the follow-up step (get the PDF with ebay_download_shipping_label_file), and the eligibility preconditions (billing agreement must be set up, Logistics API is limited release/USPS only, the sell.logistics scope must be added). When-to-use and when-it-will-fail are both covered.

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

Deploy Server

Other Tools