ebay-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| EBAY_CLIENT_ID | Yes | Your eBay application Client ID (App ID) | |
| EBAY_LOG_LEVEL | No | Log level: error, warn, info, http, verbose, debug, silly | info |
| EBAY_ENVIRONMENT | Yes | eBay API environment: 'sandbox' or 'production' | sandbox |
| EBAY_REDIRECT_URI | No | Your eBay Redirect URL (RuName) - required for OAuth user tokens | |
| EBAY_CLIENT_SECRET | Yes | Your eBay application Client Secret (Cert ID) | |
| EBAY_MARKETPLACE_ID | No | Default eBay marketplace ID, e.g., EBAY_US | EBAY_US |
| EBAY_CONTENT_LANGUAGE | No | Default request content language, e.g., en-US | en-US |
| EBAY_USER_REFRESH_TOKEN | No | User refresh token for higher rate limits (optional) | |
| EBAY_ENABLE_FILE_LOGGING | No | Enable file logging: 'true' or 'false' | false |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| searchB | Search for eBay inventory items |
| fetchB | Fetch a specific eBay inventory item by SKU |
| ebay_get_oauth_urlA | Generate the eBay OAuth authorization URL for user consent. The user should open this URL in a browser to grant permissions to the application. This supports the OAuth 2.0 Authorization Code grant flow. The redirect URI can be provided as a parameter or will be read from EBAY_REDIRECT_URI environment variable. IMPORTANT: eBay has different OAuth scopes available for production vs sandbox environments:
OAUTH FLOW INSTRUCTIONS:
COMMON SCOPES:
TROUBLESHOOTING:
|
| ebay_set_user_tokensA | Set the user access token and refresh token for authenticated API requests. These tokens should be obtained through the OAuth authorization code flow. Tokens will be persisted to disk and automatically refreshed when needed. User tokens provide higher rate limits (10,000-50,000 requests/day) compared to client credentials (1,000 requests/day). |
| ebay_set_user_tokens_with_expiryA | Set user access and refresh tokens with custom expiry times. This is an enhanced version of ebay_set_user_tokens that accepts expiry times and can automatically refresh the access token if it's expired but the refresh token is valid. Useful when user provides tokens that may already be partially expired. |
| ebay_get_token_statusA | Check the current OAuth token status. Returns information about whether user tokens or client credentials are being used, and whether tokens are valid. |
| ebay_clear_tokensA | Clear all stored OAuth tokens (both user tokens and client credentials). This will require re-authentication for subsequent API calls. |
| ebay_validate_token_expiryA | Validate token expiry times and get recommendations. Checks if access/refresh tokens are expired or expiring soon, and provides actionable recommendations (e.g., refresh access token, re-authorize user). |
| ebay_convert_date_to_timestampA | Convert a date string or number to Unix timestamp (milliseconds). Supports ISO 8601 dates, Unix timestamps (seconds or milliseconds), and relative time (e.g., "in 2 hours", "in 7200 seconds"). Useful when setting token expiry times from user input. |
| ebay_display_credentialsA | Display all eBay API credentials and current token information. Shows client ID, client secret (masked), environment (production/sandbox), redirect URI, and current token status including access token (masked), refresh token (masked), app token (masked), and their expiry times. Useful for debugging authentication issues and verifying configuration. |
| ebay_refresh_access_tokenA | Manually refresh the user access token using the stored refresh token. This is useful when you want to proactively refresh an access token before it expires, or when recovering from authentication errors. Requires that user tokens are already set (either via EBAY_USER_REFRESH_TOKEN in .env or via ebay_set_user_tokens_with_expiry). Returns the new access token and expiry time. |
| ebay_exchange_authorization_codeA | Exchange an OAuth authorization code for access and refresh tokens. This completes the OAuth 2.0 Authorization Code grant flow. After the user authorizes the application using the URL from ebay_get_oauth_url, eBay redirects back with an authorization code in the URL. Use this tool to exchange that code for tokens that can be used to make API calls. The tokens will be automatically stored and used for subsequent API requests. IMPORTANT NOTES:
COMMON ERRORS:
For complete OAuth guide with scopes, troubleshooting, and examples, see: docs/auth/OAUTH_QUICK_REFERENCE.md |
| ebay_get_custom_policiesB | Retrieve custom policies defined for the seller account |
| ebay_create_custom_policyC | Create a new custom policy |
| ebay_get_custom_policyB | Get a specific custom policy by ID |
| ebay_update_custom_policyB | Update an existing custom policy |
| ebay_get_fulfillment_policiesB | Get fulfillment policies for the seller. Required OAuth Scope: sell.account.readonly or sell.account Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.account.readonly |
| ebay_create_fulfillment_policyA | Create a new fulfillment policy. shippingServiceCode must be a marketplace-valid eBay service enum (not a free-form carrier nickname). Invalid codes return "Please select a valid shipping service". eBay may cite DomesticItemShippingService[0] and [1] for a single bad entry — that is remote validation, not client array duplication. Discover valid codes via Trading GeteBayDetails (ShippingServiceDetails). Known-good EBAY_US FLAT_RATE sketch: policy.name, policy.marketplaceId=EBAY_US, policy.categoryTypes=[{name:ALL_EXCLUDING_MOTORS_VEHICLES}], policy.handlingTime={unit:DAY,value:1}, policy.shippingOptions=[{costType:FLAT_RATE,optionType:DOMESTIC,shippingServices:[{shippingServiceCode:USPSPriority,shippingCost:{currency:USD,value:"5.99"}}]}]. Avoid invented codes like USPSPriorityMail. Sandbox may accept a smaller code set than production. Required OAuth Scope: sell.account Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.account |
| ebay_get_fulfillment_policyA | Get a specific fulfillment policy by ID |
| ebay_get_fulfillment_policy_by_nameB | Get a fulfillment policy by name |
| ebay_update_fulfillment_policyB | Update an existing fulfillment policy. Required OAuth Scope: sell.account Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.account |
| ebay_delete_fulfillment_policyB | Delete a fulfillment policy |
| ebay_get_payment_policiesC | Get payment policies for the seller |
| ebay_create_payment_policyC | Create a new payment policy |
| ebay_get_payment_policyA | Get a specific payment policy by ID |
| ebay_get_payment_policy_by_nameB | Get a payment policy by name |
| ebay_update_payment_policyC | Update an existing payment policy |
| ebay_delete_payment_policyB | Delete a payment policy |
| ebay_get_return_policiesB | Get return policies for the seller |
| ebay_create_return_policyC | Create a new return policy |
| ebay_get_return_policyA | Get a specific return policy by ID |
| ebay_get_return_policy_by_nameC | Get a return policy by name |
| ebay_update_return_policyC | Update an existing return policy |
| ebay_delete_return_policyB | Delete a return policy |
| ebay_get_kycB | Get seller KYC (Know Your Customer) status |
| ebay_get_payments_programA | Get payments program status for a marketplace. Note: This method is deprecated as all seller accounts globally have been enabled for the new eBay payment and checkout flow. Required OAuth Scope: sell.account.readonly or sell.account |
| ebay_get_payments_program_onboardingA | Get payments program onboarding information. Note: This method is deprecated as all seller accounts globally have been enabled for the new eBay payment and checkout flow. Required OAuth Scope: sell.account.readonly or sell.account |
| ebay_get_rate_tablesC | Get seller rate tables |
| ebay_create_or_replace_sales_taxB | Create or replace sales tax table for a jurisdiction |
| ebay_bulk_create_or_replace_sales_taxB | Bulk create or replace sales tax tables |
| ebay_delete_sales_taxB | Delete sales tax table for a jurisdiction |
| ebay_get_sales_taxC | Get sales tax table for a jurisdiction |
| ebay_get_sales_taxesB | Get all sales tax tables for a country |
| ebay_get_subscriptionC | Get seller subscription information |
| ebay_opt_in_to_programC | Opt-in to a seller program |
| ebay_opt_out_of_programC | Opt-out of a seller program |
| ebay_get_opted_in_programsA | Get seller programs the account is opted into |
| ebay_get_privilegesA | Get seller's current set of privileges, including whether or not the seller's eBay registration has been completed, as well as the details of their site-wide sellingLimit (the maximum dollar value and quantity of items a seller can sell per day). Required OAuth Scope: sell.account.readonly or sell.account |
| ebay_get_advertising_eligibilityB | Check the seller eligibility status for eBay advertising programs. This allows developers to determine if a seller is eligible for various advertising programs on eBay. Required OAuth Scope: sell.account.readonly or sell.account |
| ebay_get_rate_tableA | Get one shipping rate table with its rates, rateIds, regions, and shipping costs (Account API v2 getRateTable). Pass rateTableId from ebay_get_rate_tables; use the rateIds with ebay_update_rate_table_shipping_cost. Rate tables are supported on US, CA, GB, DE, AU, FR, IT and ES. Requires sell.account or sell.account.readonly. |
| ebay_update_rate_table_shipping_costA | Update shippingCost and/or additionalCost for rates in a shipping rate table (Account API v2 updateShippingCost). Pass rateTableId (from ebay_get_rate_tables) and rateTableUpdate.rates[] with each rateId (from ebay_get_rate_table). Returns success (eBay 204 No Content). Rate tables are supported on US, CA, GB, DE, AU, FR, IT and ES. Requires sell.account. |
| ebay_get_payout_settingsA | Get the seller's payout instruments (ID, type, status, nickname, last four digits) and current split-payout percentages (Account API v2 getPayoutSettings). Use instrumentId with ebay_update_payout_percentage; only ACTIVE instruments can receive split payouts. Split payouts are only available to mainland China sellers (Payoneer + bank account). Requires the sell.finances scope. |
| ebay_update_payout_percentageA | Set the split-payout percentage for the seller's two payout instruments (Account API v2 updatePayoutPercentage). Pass payoutSplit.payoutInstruments[] with instrumentId (from ebay_get_payout_settings) and a whole-number payoutPercentage; the values must total 100 or eBay rejects the call. Returns success (eBay 204 No Content). Split payouts are only available to mainland China sellers (Payoneer + bank account). Requires the sell.finances scope. |
| ebay_create_calculated_shipping_rulesA | Create calculated combined-shipping rules for listings that use calculated shipping (Account API v2 createCalculatedShippingRules): shippingRules.calculatedShippingRule (weight/item/cost-based discounts), calculatedHandlingRule, and/or combinedDuration. marketplaceId is sent as the required X-EBAY-C-MARKETPLACE-ID header. Returns success (eBay 204 No Content); confirm with ebay_get_combined_shipping_rules. Requires sell.account. |
| ebay_create_flat_shipping_rulesA | Create flat-rate combined-shipping rules (Account API v2 createFlatShippingRules): shippingRules.flatShippingRule and/or combinedDuration. marketplaceId is sent as the required X-EBAY-C-MARKETPLACE-ID header. Returns success (eBay 204 No Content); confirm with ebay_get_combined_shipping_rules. Requires sell.account. |
| ebay_create_promotional_shipping_ruleA | Create the promotional combined-shipping rule, e.g. discounted or free shipping above an order amount or item count (Account API v2 createPromotionalShippingRule): shippingRules.promotionalShippingRule and/or combinedDuration. marketplaceId is sent as the required X-EBAY-C-MARKETPLACE-ID header. Returns success (eBay 204 No Content); confirm with ebay_get_combined_shipping_rules. Requires sell.account. |
| ebay_get_combined_shipping_rulesA | Get the seller's combined-shipping configuration for one marketplace (Account API v2 getCombinedShippingRules): calculated, flat and promotional rules, handling rule, and the combined payment window. Rule IDs returned here are needed by the update tools. marketplaceId is sent as the required X-EBAY-C-MARKETPLACE-ID header. Requires sell.account.readonly or sell.account. |
| ebay_update_calculated_shipping_rulesA | Update existing calculated combined-shipping rules (Account API v2 updateCalculatedShippingRules): change discount percentages, weight offsets, amounts, handling rule, and/or combinedDuration. Reference rules by combinedShippingRuleId from ebay_get_combined_shipping_rules. marketplaceId is sent as the required X-EBAY-C-MARKETPLACE-ID header. Returns success (eBay 204 No Content); confirm with ebay_get_combined_shipping_rules. Requires sell.account. |
| ebay_update_combined_paymentsA | Change how long unpaid orders from one buyer can be combined into a single invoice (Account API v2 updateCombinedPayments): combinedPayments.combinedDuration DAYS_3, DAYS_5, DAYS_7, DAYS_14, DAYS_30 or INELIGIBLE. marketplaceId is sent as the required X-EBAY-C-MARKETPLACE-ID header. Returns success (eBay 204 No Content); confirm with ebay_get_combined_shipping_rules. Requires sell.account. |
| ebay_update_flat_shipping_rulesA | Update existing flat-rate combined-shipping rules and/or combinedDuration (Account API v2 updateFlatShippingRules). Reference rules by combinedShippingRuleId from ebay_get_combined_shipping_rules. marketplaceId is sent as the required X-EBAY-C-MARKETPLACE-ID header. Returns success (eBay 204 No Content); confirm with ebay_get_combined_shipping_rules. Requires sell.account. |
| ebay_update_promotional_shipping_ruleA | Update the existing promotional combined-shipping rule: thresholds, item count, shipping cost, and/or combinedDuration (Account API v2 updatePromotionalShippingRule). marketplaceId is sent as the required X-EBAY-C-MARKETPLACE-ID header. Returns success (eBay 204 No Content); confirm with ebay_get_combined_shipping_rules. Requires sell.account. |
| ebay_get_user_preferencesA | Get the seller's preferences for one marketplace (Account API v2 getUserPreferences): combined payment, dispatch cut-off time, unpaid item assistance, end-of-auction email, Out-of-Stock control, Business Policies opt-in, excluded ship-to locations, carrier rates, and more. Optional fieldgroups (comma-separated, default ALL) limits the groups returned. marketplaceId is sent as the required X-EBAY-C-MARKETPLACE-ID header. Requires sell.account.readonly or sell.account. |
| ebay_set_user_preferencesA | Change one or more seller preferences for one marketplace (Account API v2 setUserPreferences, HTTP PATCH): include only the preferences to change under preferences, e.g. combinedPaymentPreferences, dispatchCutoffTimePreference, itemsAwaitingPaymentPreferences, outOfStockControlPreference. Excluded ship-to locations cannot be changed here (My eBay only). marketplaceId is sent as the required X-EBAY-C-MARKETPLACE-ID header. Returns success (eBay 204 No Content); confirm with ebay_get_user_preferences. Requires sell.account. |
| ebay_get_order_earningsA | Get order-level earnings from the eBay Finances API: gross amount, expenses (fees, shipping labels, donations), refunds, and net earnings per order. Filter by orderCreationDate range (defaults to the past year), page with limit/offset, sort by orderCreationDate. Requires the optional https://api.ebay.com/oauth/api_scope/sell.finances.earnings.read scope, which is not requested by default: add it to EBAY_OAUTH_SCOPES and re-run OAuth consent. eBay grants it only to approved US, CN, or HK sellers with USD payouts. eBay requires Digital Signatures on Finances API calls for EU/UK sellers, which this server does not add. |
| ebay_get_order_earnings_by_idA | Get earnings for one order from the eBay Finances API: gross amount, expenses, refunds, and net earnings for the orderId. Requires the optional https://api.ebay.com/oauth/api_scope/sell.finances.earnings.read scope, which is not requested by default: add it to EBAY_OAUTH_SCOPES and re-run OAuth consent. eBay grants it only to approved US, CN, or HK sellers with USD payouts. eBay requires Digital Signatures on Finances API calls for EU/UK sellers, which this server does not add. |
| ebay_get_order_earnings_summaryA | Get aggregated order earnings from the eBay Finances API for orders created in an orderCreationDate range (defaults to the past year). Requires the optional https://api.ebay.com/oauth/api_scope/sell.finances.earnings.read scope, which is not requested by default: add it to EBAY_OAUTH_SCOPES and re-run OAuth consent. eBay grants it only to approved US, CN, or HK sellers with USD payouts. eBay requires Digital Signatures on Finances API calls for EU/UK sellers, which this server does not add. |
| ebay_get_payoutA | Get one seller payout by payoutId from the eBay Finances API, including amount, status, payout instrument, and transaction count. Find IDs with ebay_get_payouts. Requires the sell.finances scope. eBay requires Digital Signatures on Finances API calls for EU/UK sellers, which this server does not add. |
| ebay_get_payoutsA | List seller payouts from the eBay Finances API (last five years). Filter by payoutDate range and/or payoutStatus, page with limit/offset, sort by payoutDate. Returns a success status with no data when nothing matches. Requires the sell.finances scope. eBay requires Digital Signatures on Finances API calls for EU/UK sellers, which this server does not add. |
| ebay_get_payout_summaryA | Get cumulative payout totals from the eBay Finances API: payout count, related transaction count, and total amount, optionally filtered by payoutDate range and one payoutStatus. Requires the sell.finances scope. eBay requires Digital Signatures on Finances API calls for EU/UK sellers, which this server does not add. |
| ebay_get_seller_funds_summaryA | Get the seller's funds not yet paid out from the eBay Finances API: available, processing, on-hold, and total amounts. Returns a success status with no data when no funds are pending. Requires the sell.finances scope. eBay requires Digital Signatures on Finances API calls for EU/UK sellers, which this server does not add. |
| ebay_get_transactionsA | List monetary transactions (sales, refunds, credits, fees, transfers, and more) from the eBay Finances API, last five years. Filter by transactionDate, transactionType, transactionStatus, buyerUsername, payoutId, orderId, or transactionId; page with limit/offset; sort by transactionDate. Returns a success status with no data when nothing matches. Requires the sell.finances scope. eBay requires Digital Signatures on Finances API calls for EU/UK sellers, which this server does not add. |
| ebay_get_transaction_summaryA | Get cumulative transaction counts and amounts from the eBay Finances API, including on-hold payments. eBay requires a transactionStatus criterion in filter, e.g. transactionStatus:{PAYOUT}. Requires the sell.finances scope. eBay requires Digital Signatures on Finances API calls for EU/UK sellers, which this server does not add. |
| ebay_get_transferA | Get one TRANSFER transaction (the seller reimbursing eBay, e.g. for a buyer refund) from the eBay Finances API. Find IDs with ebay_get_transactions and filter transactionType:{TRANSFER}. Read-only; does not move money. Requires the sell.finances scope. eBay requires Digital Signatures on Finances API calls for EU/UK sellers, which this server does not add. |
| ebay_get_billing_activitiesA | Get seller billing activities (fees and credits) from the eBay Finances API. eBay requires exactly one filter criterion: activityId, listingId, orderId, or a transactionDate range starting within the last 120 days. Page with limit/offset, sort by transactionDate. Requires the sell.finances scope. eBay requires Digital Signatures on Finances API calls for EU/UK sellers, which this server does not add. |
| ebay_get_inventory_itemsC | Retrieve all inventory items for the seller. Required OAuth Scope: sell.inventory.readonly or sell.inventory Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.inventory.readonly |
| ebay_get_inventory_itemB | Get a specific inventory item by SKU. Required OAuth Scope: sell.inventory.readonly or sell.inventory Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.inventory.readonly |
| ebay_create_or_replace_inventory_itemC | Create or replace an inventory item. Required OAuth Scope: sell.inventory Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.inventory |
| ebay_delete_inventory_itemB | Delete an inventory item by SKU. Required OAuth Scope: sell.inventory Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.inventory |
| ebay_bulk_create_or_replace_inventory_itemC | Bulk create or replace multiple inventory items |
| ebay_bulk_get_inventory_itemC | Bulk get multiple inventory items |
| ebay_bulk_update_price_quantityC | Bulk update price and quantity for multiple offers |
| ebay_get_product_compatibilityB | Get product compatibility information for an inventory item |
| ebay_create_or_replace_product_compatibilityC | Create or replace product compatibility for an inventory item |
| ebay_delete_product_compatibilityB | Delete product compatibility for an inventory item |
| ebay_get_inventory_item_groupB | Get an inventory item group (variation group) |
| ebay_create_or_replace_inventory_item_groupC | Create or replace an inventory item group |
| ebay_delete_inventory_item_groupC | Delete an inventory item group |
| ebay_get_inventory_locationsC | Get all inventory locations |
| ebay_get_inventory_locationB | Get a specific inventory location |
| ebay_create_inventory_locationC | Create an inventory location |
| ebay_delete_inventory_locationB | Delete an inventory location |
| ebay_disable_inventory_locationB | Disable an inventory location |
| ebay_enable_inventory_locationB | Enable an inventory location |
| ebay_update_inventory_locationC | Update an inventory location |
| ebay_get_offersA | Get offers for one seller-defined SKU. To enumerate offers across SKUs, call ebay_get_inventory_items first, then call this tool once per SKU. |
| ebay_get_offers_by_skusA | Get offers for 1-25 SKUs. Exact duplicates are queried once, at most 3 eBay requests run concurrently, and every SKU has its own success or failure result. |
| ebay_get_offerC | Get a specific offer by ID |
| ebay_create_offerA | Create a new offer (unpublished listing draft) for an inventory item SKU. FIXED_PRICE offers take pricingSummary.price and listingDuration GTC. AUCTION offers take pricingSummary.auctionStartPrice (opening bid), an optional auctionReservePrice above it, an optional pricingSummary.price as Buy It Now (at least 30% above the opening bid, and not together with Best Offer), a day-count listingDuration (DAYS_1/3/5/7/10, or DAYS_14/21/30 where the category allows; never GTC), availableQuantity omitted or 1, and no per-buyer limit or eBay Plus. Do not add listingStartDate unless the user asked for a scheduled start (it can incur a fee). Bodies that mix the two formats are rejected before any eBay request. Check ebay_get_listing_type_policies for the formats and durations the category allows, then ebay_get_listing_fees (reserve prices carry a fee) before ebay_publish_offer. |
| ebay_update_offerA | Update an existing offer. Send the full offer details; the format itself cannot change. Auction fields (auctionStartPrice, auctionReservePrice, day-count listingDuration) follow the same rules as ebay_create_offer, and a reserve price must stay above the starting bid. |
| ebay_delete_offerC | Delete an offer |
| ebay_publish_offerB | Publish an offer to create a listing |
| ebay_withdraw_offerB | Withdraw a published offer |
| ebay_bulk_create_offerA | Bulk create up to 25 offers in one request. Each request follows the ebay_create_offer rules: FIXED_PRICE offers take pricingSummary.price and listingDuration GTC. AUCTION offers take pricingSummary.auctionStartPrice (opening bid), an optional auctionReservePrice above it, an optional pricingSummary.price as Buy It Now (at least 30% above the opening bid, and not together with Best Offer), a day-count listingDuration (DAYS_1/3/5/7/10, or DAYS_14/21/30 where the category allows; never GTC), availableQuantity omitted or 1, and no per-buyer limit or eBay Plus. Do not add listingStartDate unless the user asked for a scheduled start (it can incur a fee). Bodies that mix the two formats are rejected before any eBay request. |
| ebay_bulk_publish_offerC | Bulk publish multiple offers |
| ebay_get_listing_feesB | Get listing fees for offers before publishing |
| ebay_bulk_migrate_listingC | Bulk migrate listings to the inventory model |
| ebay_get_sku_location_mappingB | Get inventory locations for a specific listing and SKU. Required OAuth Scope: sell.inventory.readonly or sell.inventory Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.inventory.readonly |
| ebay_create_or_replace_sku_location_mappingB | Create or replace SKU location mapping for a listing. Maps a SKU to fulfillment center locations. Required OAuth Scope: sell.inventory Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.inventory |
| ebay_delete_sku_location_mappingA | Delete SKU location mapping for a listing. Removes fulfillment center location mappings for a SKU. Required OAuth Scope: sell.inventory Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.inventory |
| ebay_publish_offer_by_inventory_item_groupC | Publish an offer for an inventory item group (variation listing). Required OAuth Scope: sell.inventory Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.inventory |
| ebay_withdraw_offer_by_inventory_item_groupA | Withdraw an offer for an inventory item group (variation listing). Required OAuth Scope: sell.inventory Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.inventory |
| ebay_create_image_from_urlA | Create an EPS image from an HTTPS URL. Returns imageId, Location and the complete image payload, including EPS URLs. Requires sell.inventory. |
| ebay_create_documentA | Stage a listing document with documentType and languages. Returns documentId for ebay_upload_document. Requires sell.inventory. |
| ebay_create_document_from_urlA | Create a listing document from an HTTPS URL: PDF, JPEG/JPG or PNG up to 10 MiB. Check ebay_get_document for ACCEPTED before attaching it to a listing. Requires sell.inventory. |
| ebay_get_documentA | Get listing document metadata and processing status. Only ACCEPTED documents may be attached to listings. Does not download document bytes. Requires sell.inventory. |
| ebay_upload_documentA | Upload a local PDF, JPEG/JPG or PNG (up to 10 MiB) to a staged documentId. Animated/multi-page PNG is unsupported. Check ebay_get_document for ACCEPTED. Requires sell.inventory. Local file access is opt-in: the file must sit inside a directory listed in EBAY_MCP_MEDIA_DIRS (or under EBAY_MCP_MEDIA_ROOT, which also anchors media:// references). Symlinks are resolved before the check. |
| ebay_upload_post_order_documentA | Upload a PDF, JPEG/JPG, BMP, GIF or PNG (up to 5 MiB) for a post-order entity. Returns documentId and Location; initial state is SUBMITTED. Publishing requires a separate eBay GraphQL mutation. Animated/multi-page PNG is unsupported; PDF page limits depend on usage. Requires commerce.post_order.document consent and keyset eligibility. Local file access is opt-in: the file must sit inside a directory listed in EBAY_MCP_MEDIA_DIRS (or under EBAY_MCP_MEDIA_ROOT, which also anchors media:// references). Symlinks are resolved before the check. |
| ebay_download_post_order_documentA | Download a post-order document as an embedded PDF resource. SUBMITTED documents are owner-only; PUBLISHED documents require authorization in the post-order flow. Expired documents are unavailable. Requires commerce.post_order.document. |
| ebay_remove_post_order_documentA | Delete a SUBMITTED post-order document. PUBLISHED documents cannot be deleted; eBay enforces state and access restrictions. Requires commerce.post_order.document. |
| ebay_upload_imagesA | Upload local pictures to eBay Picture Services and return the EPS image URLs in the same order, ready for product.imageUrls on an inventory item. Uses the Media API (createImageFromFile). Unused images expire after a while; they become permanent once a listing uses them. Local file access is opt-in: the file must sit inside a directory listed in EBAY_MCP_MEDIA_DIRS (or under EBAY_MCP_MEDIA_ROOT, which also anchors media:// references). Symlinks are resolved before the check. |
| ebay_upload_videoA | Upload a local video through the Media API lifecycle (createVideo → uploadVideo → getVideo) and return the videoId with its processing status. Waits up to waitForProcessingSeconds (default 120) for status LIVE; PROCESSING means check again with ebay_get_video, BLOCKED or PROCESSING_FAILED explain why eBay rejected it (statusMessage). MP4/MOV up to 150 MB; one video per listing. Local file access is opt-in: the file must sit inside a directory listed in EBAY_MCP_MEDIA_DIRS (or under EBAY_MCP_MEDIA_ROOT, which also anchors media:// references). Symlinks are resolved before the check. |
| ebay_get_videoA | Get a Media API video by ID: processing status (PENDING_UPLOAD, PROCESSING, LIVE, BLOCKED, PROCESSING_FAILED), statusMessage, expiry, and playlists. Use it to re-check a video that was still PROCESSING after ebay_upload_video. |
| ebay_attach_media_to_inventory_itemA | Upload local pictures and/or a video and attach them to an existing inventory item: reads the item, uploads every file in order, then rewrites only product.imageUrls and product.videoIds (appending by default, replacing with replaceExisting). Everything else on the item is preserved and no offer is published. If any upload fails the item is left untouched and the per-file results are returned in the error, unless allowPartial is true. Local file access is opt-in: the file must sit inside a directory listed in EBAY_MCP_MEDIA_DIRS (or under EBAY_MCP_MEDIA_ROOT, which also anchors media:// references). Symlinks are resolved before the check. |
| ebay_get_order_tasksA | List Feed API order report tasks (LMS_ORDER_REPORT) by feedType or scheduleId (not both), filtered by dateRange or lookBackDays (not both), with limit/offset paging. Requires sell.fulfillment. |
| ebay_create_order_taskA | Create an asynchronous Feed API order report task: feedType LMS_ORDER_REPORT, schemaVersion (1113 or higher) and optional filterCriteria (creationDateRange of at most 10 days, orderStatus ACTIVE or COMPLETED). eBay answers 202; returns taskId and Location. Poll ebay_get_order_task until COMPLETED or COMPLETED_WITH_ERROR, then download with ebay_get_feed_task_result_file. Requires sell.fulfillment. |
| ebay_get_order_taskA | Get one Feed API order report task by taskId: status (QUEUED, IN_PROCESS, then COMPLETED or COMPLETED_WITH_ERROR when the file is ready), filter criteria and timestamps. Requires sell.fulfillment. |
| ebay_get_inventory_tasksA | List Feed API active inventory report tasks (LMS_ACTIVE_INVENTORY_REPORT), filtered by dateRange or lookBackDays (not both), with limit/offset paging. Requires sell.inventory. |
| ebay_create_inventory_taskA | Create an asynchronous Feed API ActiveInventoryReport task (price and quantity of every active listing): feedType LMS_ACTIVE_INVENTORY_REPORT, schemaVersion 1.0, optional filterCriteria.listingFormat AUCTION or FIXED_PRICE. eBay answers 202; returns taskId and Location. Poll ebay_get_inventory_task, then download with ebay_get_feed_task_result_file. Requires sell.inventory. |
| ebay_get_inventory_taskA | Get one Feed API active inventory report task by taskId: status, filter criteria and timestamps. Requires sell.inventory. |
| ebay_get_feed_schedulesA | List the seller's Feed API report schedules for a feedType (required), with limit/offset paging. Schedules exist only for LMS_ORDER_REPORT, which requires sell.fulfillment. |
| ebay_create_feed_scheduleA | Create a recurring Feed API report schedule that subscribes to an ACTIVE schedule template: feedType and scheduleTemplateId, plus scheduleName, preferredTriggerHour/DayOfWeek/DayOfMonth, scheduleStartDate/EndDate and schemaVersion as the template requires (read it with ebay_get_feed_schedule_template). eBay answers 201; returns scheduleId and Location. Schedules per feed type are limited (error 160031). Schedules exist only for LMS_ORDER_REPORT, which requires sell.fulfillment. |
| ebay_get_feed_scheduleA | Get one Feed API schedule by scheduleId: template, trigger settings, status and last run. Schedules exist only for LMS_ORDER_REPORT, which requires sell.fulfillment. |
| ebay_update_feed_scheduleA | Update a Feed API schedule's name, trigger hour/day, start/end dates or schemaVersion. eBay validates the fields against the schedule's current template and returns 204. Schedules exist only for LMS_ORDER_REPORT, which requires sell.fulfillment. |
| ebay_delete_feed_scheduleA | Delete a Feed API schedule so it stops generating reports. This cannot be undone. Schedules exist only for LMS_ORDER_REPORT, which requires sell.fulfillment. |
| ebay_get_feed_schedule_result_fileA | Download the latest report a Feed API schedule generated (compressed or plain CSV, XML or JSON). Returned as an embedded resource carrying the content type and file name eBay sent; files above 25 MiB are refused. Schedules exist only for LMS_ORDER_REPORT, which requires sell.fulfillment. |
| ebay_get_feed_schedule_templateA | Get one Feed API schedule template by scheduleTemplateId: feed type, frequency and which schedule fields are required or optional (with defaults). Schedules exist only for LMS_ORDER_REPORT, which requires sell.fulfillment. |
| ebay_get_feed_schedule_templatesA | List the Feed API schedule templates for a feedType (required), with limit/offset paging; use a template ID with ebay_create_feed_schedule. Schedules exist only for LMS_ORDER_REPORT, which requires sell.fulfillment. |
| ebay_get_feed_tasksA | List Feed API tasks (uploads and downloads, on-demand and scheduled) by feedType or scheduleId (not both), filtered by dateRange or lookBackDays (not both), with limit/offset paging. The OAuth scope depends on the feed type: sell.inventory for LMS listing and inventory feeds, sell.fulfillment for LMS_ORDER_ACK and LMS_ORDER_REPORT (sell.marketing and commerce.catalog.readonly feed types are reserved by eBay). |
| ebay_create_feed_taskA | Create a Feed API upload or download task without filter criteria (feedType and schemaVersion), e.g. an LMS listing upload (LMS_ADD_FIXED_PRICE_ITEM), LMS_ORDER_ACK or a Seller Hub feed. eBay answers 202; returns taskId and Location. For upload feed types send the file with ebay_upload_feed_task_file, then poll ebay_get_feed_task. Optional marketplaceId and acceptLanguage set X-EBAY-C-MARKETPLACE-ID and Accept-Language (fr-CA with EBAY_CA, fr-BE with EBAY_BE). The OAuth scope depends on the feed type: sell.inventory for LMS listing and inventory feeds, sell.fulfillment for LMS_ORDER_ACK and LMS_ORDER_REPORT (sell.marketing and commerce.catalog.readonly feed types are reserved by eBay). |
| ebay_get_feed_task_input_fileA | Download the file previously uploaded to a Feed API task (not available for LMS_ORDER_REPORT or LMS_ACTIVE_INVENTORY_REPORT tasks). Returned as an embedded resource carrying the content type and file name eBay sent; files above 25 MiB are refused. The OAuth scope depends on the feed type: sell.inventory for LMS listing and inventory feeds, sell.fulfillment for LMS_ORDER_ACK and LMS_ORDER_REPORT (sell.marketing and commerce.catalog.readonly feed types are reserved by eBay). |
| ebay_get_feed_task_result_fileA | Download the result file of a Feed API task once it is COMPLETED or COMPLETED_WITH_ERROR: the generated report (order, inventory or customer service metric task IDs work too) or an upload's processing results, often csv.gz or zipped XML. Returned as an embedded resource carrying the content type and file name eBay sent; files above 25 MiB are refused. The OAuth scope depends on the feed type: sell.inventory for LMS listing and inventory feeds, sell.fulfillment for LMS_ORDER_ACK and LMS_ORDER_REPORT (sell.marketing and commerce.catalog.readonly feed types are reserved by eBay). |
| ebay_get_feed_taskA | Get one Feed API task by taskId: feed type, status (QUEUED, IN_PROCESS, then COMPLETED or COMPLETED_WITH_ERROR when the file is ready), timestamps and the upload summary (success and failure counts). The OAuth scope depends on the feed type: sell.inventory for LMS listing and inventory feeds, sell.fulfillment for LMS_ORDER_ACK and LMS_ORDER_REPORT (sell.marketing and commerce.catalog.readonly feed types are reserved by eBay). |
| ebay_upload_feed_task_fileA | Upload a local feed file to a Feed API upload task from ebay_create_feed_task: XML or zipped XML for LMS feed types, CSV for Seller Hub feed types (.xml, .zip, .gz or .csv, UTF-8 text, up to 15 MiB, eBay's data file limit). Sent as multipart/form-data; eBay then processes it asynchronously, so poll ebay_get_feed_task until COMPLETED or COMPLETED_WITH_ERROR and read per-record errors with ebay_get_feed_task_result_file. Not for LMS_ORDER_REPORT or LMS_ACTIVE_INVENTORY_REPORT. The OAuth scope depends on the feed type: sell.inventory for LMS listing and inventory feeds, sell.fulfillment for LMS_ORDER_ACK and LMS_ORDER_REPORT (sell.marketing and commerce.catalog.readonly feed types are reserved by eBay). Local file access is opt-in: the file must sit inside a directory listed in EBAY_MCP_MEDIA_DIRS (or under EBAY_MCP_MEDIA_ROOT, which also anchors media:// references). Symlinks are resolved before the check. |
| ebay_get_customer_service_metric_tasksA | List Feed API customer service metric report tasks (CUSTOMER_SERVICE_METRICS_REPORT), filtered by dateRange or lookBackDays (not both), with limit/offset paging. Requires sell.analytics.readonly. |
| ebay_create_customer_service_metric_taskA | Create an asynchronous Feed API customer service metrics report task: feedType CUSTOMER_SERVICE_METRICS_REPORT, schemaVersion 1.0, filterCriteria with customerServiceMetricType (ITEM_NOT_AS_DESCRIBED or ITEM_NOT_RECEIVED) and evaluationMarketplaceId, optionally listingCategories or shippingRegions. Only CURRENT evaluations are supported; check ebay_get_customer_service_metric first to avoid tasks with no evaluation. acceptLanguage (eBay-required Accept-Language) defaults to EBAY_CONTENT_LANGUAGE. eBay answers 202; returns taskId and Location. Poll ebay_get_customer_service_metric_task, then download with ebay_get_feed_task_result_file. Requires sell.analytics.readonly. |
| ebay_get_customer_service_metric_taskA | Get one Feed API customer service metric report task by taskId: status, filter criteria and timestamps. Requires sell.analytics.readonly. |
| ebay_get_storeA | Get the seller's eBay Store details (Stores API getStore): store name, URL, URL path, description, logo, and last opened time. Requires an active eBay Store subscription (sell.stores scope). |
| ebay_get_store_categoriesA | Get the eBay Store's custom category hierarchy (Stores API getStoreCategories): categoryId, categoryName, level, order, and childrenCategories for up to three levels. Use these store category IDs (not eBay marketplace category IDs) with the store category tools. Requires an active eBay Store subscription (sell.stores scope). |
| ebay_add_store_categoryA | Add one custom category to the eBay Store (Stores API addStoreCategory). Pass categoryName and optionally destinationParentCategoryId (omit or -999 for top level) and listingDestinationCategoryId. Asynchronous: eBay accepts the change and returns { taskId, location } from the Location header; poll ebay_get_store_task with taskId (or ebay_get_store_tasks) until the task is COMPLETED or FAILED. Only one store category change (add, rename, move, or delete) can be in flight at a time; eBay rejects a new change until the previous task finishes. Requires an active eBay Store subscription (sell.stores scope). |
| ebay_rename_store_categoryA | Rename one custom eBay Store category (Stores API renameStoreCategory). Pass the store categoryId and the new categoryName. Asynchronous: eBay accepts the change and returns { taskId, location } from the Location header; poll ebay_get_store_task with taskId (or ebay_get_store_tasks) until the task is COMPLETED or FAILED. Only one store category change (add, rename, move, or delete) can be in flight at a time; eBay rejects a new change until the previous task finishes. Requires an active eBay Store subscription (sell.stores scope). |
| ebay_move_store_categoryA | Move one custom eBay Store category under a new parent (Stores API moveStoreCategory). Pass categoryId, destinationParentCategoryId (-999 for top level), and listingDestinationCategoryId when a leaf category with listings stops being a leaf. Asynchronous: eBay accepts the change and returns { taskId, location } from the Location header; poll ebay_get_store_task with taskId (or ebay_get_store_tasks) until the task is COMPLETED or FAILED. Only one store category change (add, rename, move, or delete) can be in flight at a time; eBay rejects a new change until the previous task finishes. Requires an active eBay Store subscription (sell.stores scope). |
| ebay_delete_store_categoryA | Delete one custom eBay Store category (Stores API deleteStoreCategory). Pass the store categoryId and optionally listingDestinationCategoryId; active listings in or under the category move there, or to the store's Other category (ID 1) when omitted. Irreversible. Asynchronous: eBay accepts the change and returns { taskId, location } from the Location header; poll ebay_get_store_task with taskId (or ebay_get_store_tasks) until the task is COMPLETED or FAILED. Only one store category change (add, rename, move, or delete) can be in flight at a time; eBay rejects a new change until the previous task finishes. Requires an active eBay Store subscription (sell.stores scope). |
| ebay_get_store_taskA | Get the status of one asynchronous eBay Store category task (Stores API getStoreTask) by the taskId returned from ebay_add_store_category, ebay_rename_store_category, ebay_move_store_category, or ebay_delete_store_category. Returns task id, type, status, and message. Requires an active eBay Store subscription (sell.stores scope). |
| ebay_get_store_tasksA | List the status of all asynchronous eBay Store tasks (Stores API getStoreTasks). Every task ends as COMPLETED or FAILED within 24 hours; use it to check whether a store category change is still in flight. Requires an active eBay Store subscription (sell.stores scope). |
| ebay_get_ordersB | Retrieve orders for the seller. Required OAuth Scope: sell.fulfillment.readonly or sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment.readonly |
| ebay_get_orderB | Get details of a specific order. Required OAuth Scope: sell.fulfillment.readonly or sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment.readonly |
| ebay_create_shipping_fulfillmentB | Create a shipping fulfillment for an order. Required OAuth Scope: sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment |
| ebay_get_shipping_fulfillmentsA | Get all shipping fulfillments for an order. Required OAuth Scope: sell.fulfillment.readonly or sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment.readonly |
| ebay_get_shipping_fulfillmentB | Get a specific shipping fulfillment by ID. Required OAuth Scope: sell.fulfillment.readonly or sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment.readonly |
| ebay_issue_refundB | Issue a full or partial refund for an eBay order. Use this to refund buyers for orders, including specifying the refund amount and reason. Required OAuth Scope: sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment |
| ebay_get_cancellation_requestsA | Scan recent seller orders for cancellation requests. Calls Fulfillment API getOrders and returns orders whose cancelState is not NONE_REQUESTED (or that list cancel requests). Read-only helper — does not use the deprecated Post-Order API. Required OAuth Scope: sell.fulfillment.readonly or sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment.readonly |
| ebay_get_refunded_ordersA | Scan recent seller orders for refunds. Calls Fulfillment API getOrders and returns orders with a non-empty paymentSummary.refunds array. Read-only helper — does not issue refunds or call the Post-Order API. Required OAuth Scope: sell.fulfillment.readonly or sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment.readonly |
| ebay_get_payment_dispute_summariesA | Get summaries of all payment disputes. Use filters to narrow results by dispute status, buyer username, or order ID. Required OAuth Scope: sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment |
| ebay_get_payment_disputeB | Get detailed information about a specific payment dispute. Required OAuth Scope: sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment |
| ebay_get_payment_dispute_activitiesA | Get activity history for a payment dispute, including all actions taken by buyer, seller, and eBay. Required OAuth Scope: sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment |
| ebay_accept_payment_disputeA | Accept a payment dispute and allow eBay to refund the buyer. Use this when you agree with the buyer claim. Required OAuth Scope: sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment |
| ebay_contest_payment_disputeA | Contest a payment dispute by providing evidence. Use this when you disagree with the buyer claim and want to provide proof. Required OAuth Scope: sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment |
| ebay_add_payment_dispute_evidenceB | Add evidence to support your case in a payment dispute. Provide evidence files and supporting information. Required OAuth Scope: sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment |
| ebay_update_payment_dispute_evidenceB | Update existing evidence in a payment dispute. Required OAuth Scope: sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment |
| ebay_upload_payment_dispute_evidence_fileA | Upload a file as evidence for a payment dispute (e.g., shipping receipt, photos). Returns a file ID to use with add_evidence. Required OAuth Scope: sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment |
| ebay_fetch_payment_dispute_evidence_contentC | Download evidence file content from a payment dispute. Required OAuth Scope: sell.fulfillment Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment |
| ebay_create_shipping_quoteA | Get live shipping rates for one package (Logistics API createShippingQuote). Pass shippingQuoteRequest with orders (1-10 eBay order IDs shipping together), packageSpecification (weight, optional dimensions), shipFrom and shipTo. Returns a shippingQuoteId plus rates[] with rateId, carrier/service, base cost, optional add-ons, and an expirationDate; buy one with ebay_create_shipment_from_shipping_quote before it expires. 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. |
| ebay_get_shipping_quoteA | Get a shipping quote by shippingQuoteId with its rates, package, addresses, and expiry (Logistics API getShippingQuote). 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. |
| ebay_create_shipment_from_shipping_quoteA | 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. |
| ebay_get_shipmentA | Get a shipment by shipmentId: purchased rate, costs, addresses, tracking number, label URL, and cancellation status (Logistics API getShipment). 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. |
| ebay_cancel_shipmentA | Cancel a shipment and delete its shipping label; eBay refunds the totalShippingCost to the billing agreement (Logistics API cancelShipment). Fails once the label has been used. Returns the shipment with its cancellation status. 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. |
| ebay_download_shipping_label_fileA | Download the shipping label of a shipment as an embedded PDF resource (Logistics API downloadLabelFile). Pass the shipmentId from ebay_create_shipment_from_shipping_quote. 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. |
| ebay_bulk_create_ads_by_inventory_referenceC | Bulk create ads by inventory reference through the eBay Marketing API. |
| ebay_bulk_create_ads_by_listing_idB | Bulk create ads by listing id through the eBay Marketing API. |
| ebay_bulk_delete_ads_by_inventory_referenceC | Bulk delete ads by inventory reference through the eBay Marketing API. |
| ebay_bulk_delete_ads_by_listing_idC | Bulk delete ads by listing id through the eBay Marketing API. |
| ebay_bulk_update_ads_bid_by_inventory_referenceB | Bulk update ads bid by inventory reference through the eBay Marketing API. |
| ebay_bulk_update_ads_bid_by_listing_idB | Bulk update ads bid by listing id through the eBay Marketing API. |
| ebay_bulk_update_ads_statusC | Bulk update ads status through the eBay Marketing API. |
| ebay_bulk_update_ads_status_by_listing_idC | Bulk update ads status by listing id through the eBay Marketing API. |
| ebay_get_adsC | Get ads through the eBay Marketing API. |
| ebay_create_ad_by_listing_idB | Create ad by listing id through the eBay Marketing API. |
| ebay_create_ads_by_inventory_referenceB | Create ads by inventory reference through the eBay Marketing API. |
| ebay_get_adC | Get ad through the eBay Marketing API. |
| ebay_delete_adC | Delete ad through the eBay Marketing API. |
| ebay_delete_ads_by_inventory_referenceA | Delete ads by inventory reference through the eBay Marketing API. |
| ebay_get_ads_by_inventory_referenceC | Get ads by inventory reference through the eBay Marketing API. |
| ebay_update_bidC | Update bid through the eBay Marketing API. |
| ebay_get_ad_groupsC | Get ad groups through the eBay Marketing API. |
| ebay_create_ad_groupC | Create ad group through the eBay Marketing API. |
| ebay_get_ad_groupB | Get ad group through the eBay Marketing API. |
| ebay_update_ad_groupC | Update ad group through the eBay Marketing API. |
| ebay_suggest_bidsC | Suggest bids through the eBay Marketing API. |
| ebay_suggest_keywordsC | Suggest keywords through the eBay Marketing API. |
| ebay_clone_campaignC | Clone campaign through the eBay Marketing API. |
| ebay_get_campaignsC | Get campaigns through the eBay Marketing API. |
| ebay_create_campaignC | Create campaign through the eBay Marketing API. |
| ebay_get_campaignC | Get campaign through the eBay Marketing API. |
| ebay_delete_campaignB | Delete campaign through the eBay Marketing API. |
| ebay_end_campaignC | End campaign through the eBay Marketing API. |
| ebay_find_campaign_by_ad_referenceC | Find campaign by ad reference through the eBay Marketing API. |
| ebay_get_campaign_by_nameC | Get campaign by name through the eBay Marketing API. |
| ebay_launch_campaignC | Launch campaign through the eBay Marketing API. |
| ebay_pause_campaignC | Pause campaign through the eBay Marketing API. |
| ebay_resume_campaignC | Resume campaign through the eBay Marketing API. |
| ebay_setup_quick_campaignC | Setup quick campaign through the eBay Marketing API. |
| ebay_suggest_budgetC | Suggest budget through the eBay Marketing API. |
| ebay_suggest_itemsC | Suggest items through the eBay Marketing API. |
| ebay_suggest_max_cpcC | Suggest max cpc through the eBay Marketing API. |
| ebay_update_ad_rate_strategyC | Update ad rate strategy through the eBay Marketing API. |
| ebay_update_bidding_strategyC | Update bidding strategy through the eBay Marketing API. |
| ebay_update_campaign_budgetC | Update campaign budget through the eBay Marketing API. |
| ebay_update_campaign_identificationC | Update campaign identification through the eBay Marketing API. |
| ebay_bulk_create_keywordC | Bulk create keyword through the eBay Marketing API. |
| ebay_bulk_update_keywordC | Bulk update keyword through the eBay Marketing API. |
| ebay_get_keywordsC | Get keywords through the eBay Marketing API. |
| ebay_create_keywordC | Create keyword through the eBay Marketing API. |
| ebay_get_keywordC | Get keyword through the eBay Marketing API. |
| ebay_update_keywordC | Update keyword through the eBay Marketing API. |
| ebay_bulk_create_negative_keywordB | Bulk create negative keyword through the eBay Marketing API. |
| ebay_bulk_update_negative_keywordC | Bulk update negative keyword through the eBay Marketing API. |
| ebay_get_negative_keywordsC | Get negative keywords through the eBay Marketing API. |
| ebay_create_negative_keywordC | Create negative keyword through the eBay Marketing API. |
| ebay_get_negative_keywordC | Get negative keyword through the eBay Marketing API. |
| ebay_update_negative_keywordB | Update negative keyword through the eBay Marketing API. |
| ebay_get_reportC | Get report through the eBay Marketing API. |
| ebay_get_report_metadataC | Get report metadata through the eBay Marketing API. |
| ebay_get_report_metadata_for_report_typeB | Get report metadata for report type through the eBay Marketing API. |
| ebay_get_report_tasksC | Get report tasks through the eBay Marketing API. |
| ebay_create_report_taskC | Create report task through the eBay Marketing API. |
| ebay_get_report_taskB | Get report task through the eBay Marketing API. |
| ebay_delete_report_taskA | Delete report task through the eBay Marketing API. |
| ebay_create_item_price_markdown_promotionC | Create item price markdown promotion through the eBay Marketing API. |
| ebay_get_item_price_markdown_promotionC | Get item price markdown promotion through the eBay Marketing API. |
| ebay_update_item_price_markdown_promotionB | Update item price markdown promotion through the eBay Marketing API. |
| ebay_delete_item_price_markdown_promotionA | Delete item price markdown promotion through the eBay Marketing API. |
| ebay_create_item_promotionC | Create item promotion through the eBay Marketing API. |
| ebay_get_item_promotionC | Get item promotion through the eBay Marketing API. |
| ebay_update_item_promotionC | Update item promotion through the eBay Marketing API. |
| ebay_delete_item_promotionB | Delete item promotion through the eBay Marketing API. |
| ebay_get_listing_setC | Get listing set through the eBay Marketing API. |
| ebay_get_promotionsC | Get promotions through the eBay Marketing API. |
| ebay_pause_promotionB | Pause promotion through the eBay Marketing API. |
| ebay_resume_promotionC | Resume promotion through the eBay Marketing API. |
| ebay_get_promotion_reportsC | Get promotion reports through the eBay Marketing API. |
| ebay_get_promotion_summary_reportC | Get promotion summary report through the eBay Marketing API. |
| ebay_get_email_campaignsB | Get email campaigns through the eBay Marketing API. |
| ebay_create_email_campaignB | Create email campaign through the eBay Marketing API. |
| ebay_get_email_campaignB | Get email campaign through the eBay Marketing API. |
| ebay_update_email_campaignC | Update email campaign through the eBay Marketing API. |
| ebay_delete_email_campaignB | Delete email campaign through the eBay Marketing API. |
| ebay_get_audiencesC | Get audiences through the eBay Marketing API. |
| ebay_get_email_previewC | Get email preview through the eBay Marketing API. |
| ebay_get_email_reportC | Get email report through the eBay Marketing API. |
| ebay_find_listing_recommendationsC | Find listing recommendations through the eBay Recommendation API. |
| ebay_get_traffic_reportC | Get traffic report for listings |
| ebay_find_seller_standards_profilesA | Find all seller standards profiles |
| ebay_get_seller_standards_profileB | Get a specific seller standards profile |
| ebay_get_customer_service_metricC | Get customer service metrics |
| ebay_get_automotive_parts_compatibility_policiesB | Get automotive parts compatibility policies for a marketplace |
| ebay_get_category_policiesC | Get category policies for a marketplace |
| ebay_get_extended_producer_responsibility_policiesB | Get extended producer responsibility policies for a marketplace |
| ebay_get_hazardous_materials_labelsB | Get hazardous materials labels for a marketplace |
| ebay_get_item_condition_policiesB | Get item condition policies for a marketplace |
| ebay_get_listing_structure_policiesC | Get listing structure policies for a marketplace |
| ebay_get_negotiated_price_policiesC | Get negotiated price policies for a marketplace |
| ebay_get_product_safety_labelsB | Get product safety labels for a marketplace |
| ebay_get_regulatory_policiesC | Get regulatory policies for a marketplace |
| ebay_get_return_policy_metadataB | Get marketplace return policy requirements and guidelines. Returns eBay policies that define whether return policies are required for categories and the guidelines for creating domestic and international return policies. |
| ebay_get_classified_ad_policiesC | Get classified ad policies for a marketplace |
| ebay_get_currenciesC | Get currencies for a marketplace |
| ebay_get_listing_type_policiesC | Get listing type policies for a marketplace |
| ebay_get_motors_listing_policiesC | Get motors listing policies for a marketplace |
| ebay_get_shipping_policiesC | Get shipping policies for a marketplace |
| ebay_get_site_visibility_policiesC | Get site visibility policies for a marketplace |
| ebay_get_exclude_shipping_locationsA | Metadata API: list the regions, countries and special locations (e.g. PO Box, APO/FPO) a seller can exclude from shipping on a marketplace. Set acceptLanguage to fr-CA (EBAY_CA), fr-BE or nl-BE (EBAY_BE) to localize the metadata for the French Canada and Belgian marketplaces. Use the returned values when configuring fulfillment policies (ebay_create_fulfillment_policy). |
| ebay_get_handling_timesA | Metadata API: list the handling times (maximum business days to ship after cleared payment, flagged when extended) a marketplace allows. Set acceptLanguage to fr-CA (EBAY_CA), fr-BE or nl-BE (EBAY_BE) to localize the metadata for the French Canada and Belgian marketplaces. Use the returned values when configuring fulfillment policies (ebay_create_fulfillment_policy). |
| ebay_get_shipping_carriersA | Metadata API: list the shipping carriers supported on a marketplace. Each shippingCarrier value is the enum to use when supplying shipment tracking. Set acceptLanguage to fr-CA (EBAY_CA), fr-BE or nl-BE (EBAY_BE) to localize the metadata for the French Canada and Belgian marketplaces. Use the returned values when configuring fulfillment policies (ebay_create_fulfillment_policy). |
| ebay_get_shipping_locationsA | Metadata API: list the regions, countries and special locations a seller can ship to on a marketplace. Set acceptLanguage to fr-CA (EBAY_CA), fr-BE or nl-BE (EBAY_BE) to localize the metadata for the French Canada and Belgian marketplaces. Use the returned values when configuring fulfillment policies (ebay_create_fulfillment_policy). |
| ebay_get_shipping_servicesA | Metadata API: list the shipping services available on a marketplace with carrier, category, domestic/international flag, shipping times, cost types and package limits. Only services with validForSellingFlow=true can be used in listings or fulfillment policies. Set acceptLanguage to fr-CA (EBAY_CA), fr-BE or nl-BE (EBAY_BE) to localize the metadata for the French Canada and Belgian marketplaces. Use the returned values when configuring fulfillment policies (ebay_create_fulfillment_policy). |
| ebay_get_compatibilities_by_specificationC | Get compatibilities by specification |
| ebay_get_compatibility_property_namesC | Get compatibility property names |
| ebay_get_compatibility_property_valuesC | Get compatibility property values |
| ebay_get_multi_compatibility_property_valuesB | Get multiple compatibility property values |
| ebay_get_product_compatibilitiesC | Get product compatibilities |
| ebay_get_sales_tax_jurisdictionsC | Get sales tax jurisdictions for a country |
| ebay_get_default_category_tree_idB | Get the default category tree ID for a marketplace |
| ebay_get_category_treeB | Get category tree by ID |
| ebay_get_category_suggestionsB | Get category suggestions based on query |
| ebay_get_item_aspects_for_categoryA | Identify required and recommended item specifics for a category before creating an inventory item or checking listing fees |
| ebay_fetch_item_aspectsA | Taxonomy API: download the aspects (item specifics) of every leaf category in a category tree as eBay's gzipped JSON file, returned as an embedded resource with eBay's content type (application/octet-stream); gunzip it to read the JSON. eBay notes the file can exceed 100 MB compressed: anything above 25 MiB fails with DownloadTooLargeError instead of being returned, so use ebay_get_item_aspects_for_category for per-category lookups, especially on large trees such as EBAY_US (0). |
| ebay_get_expired_categoriesA | Taxonomy API: list expired leaf categories in a category tree with the active categories that replaced them (fromCategoryId to toCategoryId; several may merge into one). Only mapped (merged or split) categories are returned; an empty success (HTTP 204) means the tree has none. |
| ebay_get_charity_orgA | Charity API: get one charitable organization supported by eBay for Charity by charityOrgId (from ebay_get_charity_orgs): name, mission statement, description, logo, location, registration ID (EIN on EBAY_US) and website. Supports marketplaceId EBAY_US or EBAY_GB only. Uses an application (client-credentials) token, so EBAY_CLIENT_ID and EBAY_CLIENT_SECRET are enough; no user consent is needed. |
| ebay_get_charity_orgsA | Charity API: search charitable organizations supported by eBay for Charity, either by keywords (q) or by comma-separated registrationIds; supply exactly one. Paginated with limit (1-100) and offset (0-10000). Supports marketplaceId EBAY_US or EBAY_GB only. Uses an application (client-credentials) token, so EBAY_CLIENT_ID and EBAY_CLIENT_SECRET are enough; no user consent is needed. |
| ebay_find_eligible_itemsC | Find items eligible for Send Offer to Buyers |
| ebay_send_offer_to_interested_buyersC | Send offer to interested buyers |
| ebay_get_notification_configC | Get notification configuration |
| ebay_update_notification_configC | Update notification configuration |
| ebay_get_notification_destinationsB | Get all notification destinations (paginated) |
| ebay_create_notification_destinationC | Create a notification destination |
| ebay_get_notification_destinationA | Get a specific notification destination by ID |
| ebay_update_notification_destinationC | Update a notification destination |
| ebay_delete_notification_destinationB | Delete a notification destination |
| ebay_get_notification_subscriptionsA | Get all notification subscriptions (paginated) |
| ebay_create_notification_subscriptionC | Create a notification subscription |
| ebay_get_notification_subscriptionB | Get a specific notification subscription by ID |
| ebay_update_notification_subscriptionC | Update a notification subscription |
| ebay_delete_notification_subscriptionB | Delete a notification subscription |
| ebay_disable_notification_subscriptionB | Disable a notification subscription |
| ebay_enable_notification_subscriptionC | Enable a notification subscription |
| ebay_test_notification_subscriptionB | Test a notification subscription by sending a test message |
| ebay_create_notification_subscription_filterB | Create a filter for a notification subscription |
| ebay_get_notification_subscription_filterC | Get a specific subscription filter |
| ebay_delete_notification_subscription_filterC | Delete a subscription filter |
| ebay_get_notification_topicA | Get a specific notification topic by ID |
| ebay_get_notification_topicsB | Get all available notification topics (paginated) |
| ebay_get_notification_public_keyB | Get a public key for verifying notification signatures |
| ebay_get_conversationsB | Get all buyer-seller conversations (paginated) |
| ebay_get_conversationC | Get a specific conversation by ID |
| ebay_send_messageA | Send a direct message to a buyer regarding a specific transaction or inquiry. Use this to communicate about orders, answer questions, resolve issues, or provide updates. |
| ebay_bulk_update_conversationA | Bulk update multiple conversations. Each entry sets conversationStatus (ACTIVE, ARCHIVE, DELETE, READ, UNREAD) for a conversationId. |
| ebay_update_conversationA | Update a single conversation (conversationStatus: ACTIVE, ARCHIVE, DELETE; or read flag). |
| ebay_get_feedbackC | Get feedback for a user by type |
| ebay_leave_feedback_for_buyerC | Leave feedback for a buyer. Provide orderLineItemId, commentType (POSITIVE/NEUTRAL/NEGATIVE), and commentText. |
| ebay_get_awaiting_feedbackC | Get transactions awaiting feedback from the seller |
| ebay_respond_to_feedbackA | Respond to feedback received from a buyer |
| ebay_get_feedback_rating_summaryB | Get feedback rating summary for a user |
| ebay_find_active_itemsA | Search active eBay listings marketplace-wide (not the seller's own inventory). Uses the Buy Browse API item_summary/search with the application access token eBay requires for Browse, minted from client credentials under the basic api_scope. Supports pagination (limit/offset), sort (price, -price, newlyListed, endingSoonest), category restriction, and condition/buying-option/price filters plus a raw Browse filter passthrough. eBay documents that a search without a buying-option filter returns only listings that still offer FIXED_PRICE, so pass buyingOptions: ["AUCTION"] (or ["AUCTION", "FIXED_PRICE"] for both) to be sure of reaching auctions that have taken a bid. Returns cleaned summaries: itemId (feed into ebay_get_item_details), title, price (an auction's current bid when there is no fixed price, with bidCount), condition, buyingOptions, seller and feedback, first advertised shipping cost, auction end date, and listing URL. |
| ebay_get_item_detailsA | Get full detail for one active eBay listing by its Browse RESTful item id (from ebay_find_active_items, e.g. "v1|110587051479|0"). Uses the Buy Browse API item resource. Returns cleaned details: title, price, condition and condition description, short description, category path, buying options, seller and feedback, estimated available quantity, returns-accepted flag, item location, auction end date, images, and listing URL. For the seller's own listings use ebay_get_listing (Trading) instead. |
| ebay_find_completed_itemsA | Search eBay sold/completed listings for pricing research (sold comps). Uses the Finding API findCompletedItems operation with app credentials (SECURITY-APPNAME / EBAY_CLIENT_ID). Returns cleaned sold items: itemId, title, price, shippingCost, soldDate, condition, and listingUrl. Useful for market price research before listing or repricing. App credentials are sufficient for this public search data when OAuth is available. |
| ebay_get_userB | Get user identity information |
| ebay_get_listing_violationsA | DECOMMISSIONED: eBay shut down the Sell Compliance API on 2026-03-30. This tool always fails with a clear message. Use Seller Hub → Performance → Issue Resolution Center instead (no API equivalent). |
| ebay_get_listing_violations_summaryA | DECOMMISSIONED: eBay shut down the Sell Compliance API on 2026-03-30. This tool always fails with a clear message. Use Seller Hub → Performance → Issue Resolution Center instead (no API equivalent). |
| ebay_create_vero_reportB | Create a VERO report to report intellectual property infringement. This endpoint is part of the Verified Rights Owner (VeRO) Program and allows rights owners to report listings that infringe on their intellectual property. |
| ebay_get_vero_reportC | Get a specific VERO report by ID |
| ebay_get_vero_report_itemsA | Get VERO report items (listings reported for intellectual property infringement). Supports filtering, pagination via limit and offset parameters. |
| ebay_get_vero_reason_codeB | Get a specific VERO reason code by ID. Reason codes categorize the types of intellectual property violations. |
| ebay_get_vero_reason_codesA | Get all available VERO reason codes. These codes are used when creating VERO reports to specify the type of intellectual property violation. |
| ebay_translateC | Translate listing text |
| ebay_get_actual_costsC | Get actual costs for shipped packages |
| ebay_get_address_preferencesA | Get address preferences for international shipping |
| ebay_create_address_preferenceC | Create an address preference for international shipping |
| ebay_get_consign_preferencesA | Get consign preferences for international shipping |
| ebay_create_consign_preferenceC | Create a consign preference for international shipping |
| ebay_get_agentsC | Get available shipping agents for international shipping |
| ebay_get_battery_qualificationsC | Get battery qualifications for international shipping |
| ebay_get_dropoff_sitesC | Get available dropoff sites for international shipping |
| ebay_get_servicesC | Get available shipping services for international shipping |
| ebay_create_bundleC | Create a bundle of packages for international shipping |
| ebay_get_bundleC | Get bundle details by ID |
| ebay_cancel_bundleC | Cancel a bundle by ID |
| ebay_get_bundle_labelC | Get shipping label for a bundle |
| ebay_create_packageC | Create a package for international shipping |
| ebay_get_packageC | Get package details by ID |
| ebay_delete_packageC | Delete a package by ID |
| ebay_get_packages_by_line_item_idC | Get package details by order line item ID |
| ebay_cancel_packageC | Cancel a package by ID |
| ebay_clone_packageC | Clone a package to create a duplicate |
| ebay_confirm_packageC | Confirm a package for shipping |
| ebay_bulk_cancel_packagesB | Cancel multiple packages in one request |
| ebay_bulk_confirm_packagesC | Confirm multiple packages in one request |
| ebay_bulk_delete_packagesC | Delete multiple packages in one request |
| ebay_get_labelsC | Get shipping labels for packages |
| ebay_get_handover_sheetC | Get handover sheet for packages |
| ebay_get_trackingC | Get tracking information for packages |
| ebay_create_complaintC | Create a complaint for international shipping issues |
| ebay_get_api_statusA | Get the latest eBay API status and incidents from the official RSS feed. Returns recent issues, fixes, and outages for eBay APIs (e.g. Trading API, Inventory API, Sandbox). Use when the user asks about API status, outages, or fixes. |
| ebay_get_rate_limitsB | Get application rate limits for eBay APIs. Returns call quota, remaining calls, and time until reset for each API resource. |
| ebay_get_user_rate_limitsB | Get user-specific rate limits for eBay APIs. Returns call quota per user for APIs that limit by user. |
| ebay_register_clientA | Register a third party financial application with eBay (Open Banking / PSD2). Requires valid eIDAS certificate via MTLS. |
| ebay_get_signing_keysA | Get all signing keys for the application. Returns public keys and metadata (private keys are not stored by eBay). |
| ebay_create_signing_keyA | Create a new signing keypair for API digital signatures. Supports ED25519 (recommended) or RSA ciphers. IMPORTANT: Save the private key immediately as eBay does not store it. |
| ebay_get_signing_keyA | Get a specific signing key by ID. Returns public key and metadata (private key is not stored by eBay). |
| ebay_get_active_listingsA | Get all active listings (fixed-price and auction) with SKU, quantity, price, and watch count. Uses the Trading API (GetMyeBaySelling). Returns listings created via any method (UI, Trading API, or REST API); ListingType is Chinese for auctions and FixedPriceItem for fixed price. Required: User OAuth token. |
| ebay_get_listingA | Get full details for a single listing by item ID. Uses the Trading API (GetItem). Returns all listing fields including description, specifics, shipping, images, and ListingType (Chinese = auction, FixedPriceItem = fixed price). Required: User OAuth token. |
| ebay_create_listingA | Create a new fixed-price listing or auction. Uses the Trading API: AddFixedPriceItem for format FIXED_PRICE (default) and AddItem with ListingType Chinese for format AUCTION. Requires complete item details. AUCTION items take StartPrice as the opening bid, a day-count ListingDuration (Days_1/3/5/7/10; never GTC), Quantity 1, an optional ReservePrice above the opening bid, an optional BuyItNowPrice at least 30% above it, and Best Offer only without a BuyItNowPrice. FIXED_PRICE items take StartPrice as the price and ListingDuration GTC (the only fixed-price duration eBay accepts), and cannot carry ReservePrice or BuyItNowPrice. Payloads that mix the two formats are rejected before any eBay request. Reserve prices carry an eBay fee. Required: User OAuth token. |
| ebay_revise_listingA | Revise an existing listing. Update quantity, price, title, description, or any other field. Uses the Trading API: ReviseFixedPriceItem for format FIXED_PRICE (default) and ReviseItem for format AUCTION (check ListingType with ebay_get_listing when unsure; eBay limits auction revisions once bids exist). Only send the fields you want to change. Examples:
AUCTION items take StartPrice as the opening bid, a day-count ListingDuration (Days_1/3/5/7/10; never GTC), Quantity 1, an optional ReservePrice above the opening bid, an optional BuyItNowPrice at least 30% above it, and Best Offer only without a BuyItNowPrice. FIXED_PRICE items take StartPrice as the price and ListingDuration GTC (the only fixed-price duration eBay accepts), and cannot carry ReservePrice or BuyItNowPrice. Payloads that mix the two formats are rejected before any eBay request. Required: User OAuth token. |
| ebay_end_listingA | End/remove an active listing. Uses the Trading API: EndFixedPriceItem for format FIXED_PRICE (default) and EndItem for format AUCTION. SellToHighBidder is only valid for auctions with bids. Required: User OAuth token. |
| ebay_relist_itemA | Relist an ended listing, optionally with modifications. Uses the Trading API: RelistFixedPriceItem for format FIXED_PRICE (default) and RelistItem for format AUCTION. AUCTION items take StartPrice as the opening bid, a day-count ListingDuration (Days_1/3/5/7/10; never GTC), Quantity 1, an optional ReservePrice above the opening bid, an optional BuyItNowPrice at least 30% above it, and Best Offer only without a BuyItNowPrice. FIXED_PRICE items take StartPrice as the price and ListingDuration GTC (the only fixed-price duration eBay accepts), and cannot carry ReservePrice or BuyItNowPrice. Payloads that mix the two formats are rejected before any eBay request. Required: User OAuth token. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| eBay table view | |
| eBay detail card view | |
| eBay chart view | |
| eBay stat grid view |
TDQS
Scored across 384 tools
With 384 tools spanning dozens of eBay APIs, there are many overlapping tool families: two parallel listing models (Trading `ebay_create_listing`/`ebay_revise_listing` vs Inventory `ebay_create_offer`/`ebay_publish_offer`), multiple search entry points (`search`, `fetch`, `ebay_find_active_items`, `ebay_find_completed_items`), and near-duplicate Marketing sets (`ebay_create_ad` vs `ebay_create_ads_by_inventory_reference` vs `ebay_create_ad_by_listing_id`, plus bulk variants). The unprefixed `search`/`fetch` tools are particularly hard to place against the `ebay_*` surface. Descriptions do name the underlying API, which helps, but the boundaries between sibling tools remain genuinely blurry at this scale.
The overwhelming majority of tools follow a consistent `ebay_<verb>_<noun>` snake_case convention (get/create/update/delete/bulk_*), which is highly predictable. The main deviations are the two unprefixed tools (`search`, `fetch`) and occasional awkward ordering/pluralization (`ebay_bulk_create_ads_by_listing_id`, `ebay_create_ad_by_listing_id`, `ebay_setup_quick_campaign`). These are minor relative to the overall pattern.
384 tools is an extreme mismatch for any coherent toolset, far beyond the 3-15 sweet spot. Even granting that eBay exposes a vast public API surface, this is essentially a one-to-one wrapper of hundreds of endpoints, making selection and maintenance impractical for an agent.
Coverage is exceptionally broad across sell, buy, marketing, finances, feeds, stores, media, metadata, notifications, feedback, and VERO domains, so almost no workflow dead-ends exist. The deduction is for dead or deprecated entries (`ebay_get_listing_violations` and `_summary` are decommissioned and always fail, payments-program tools are marked deprecated) and a few threadbare singular/plural pairs that leave minor gaps.