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 |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| searchC | 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_policiesA | Retrieve custom policies defined for the seller account |
| ebay_get_fulfillment_policiesC | 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_get_payment_policiesC | Get payment policies for the seller |
| ebay_get_return_policiesC | Get return policies for the seller |
| ebay_create_fulfillment_policyB | Create a new fulfillment policy. Required OAuth Scope: sell.account Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.account |
| ebay_get_fulfillment_policyB | Get a specific fulfillment policy by ID |
| ebay_get_fulfillment_policy_by_nameB | Get a fulfillment policy by name |
| ebay_update_fulfillment_policyC | Update an existing fulfillment policy |
| ebay_delete_fulfillment_policyB | Delete a fulfillment policy |
| 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_policyC | Delete a payment policy |
| 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_policyB | Update an existing return policy |
| ebay_delete_return_policyC | Delete a return policy |
| 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_delete_custom_policyC | Delete a custom policy |
| ebay_get_kycA | Get seller KYC (Know Your Customer) status |
| ebay_opt_in_to_payments_programC | Opt-in to a payments program |
| ebay_get_payments_program_statusC | Get payments program status |
| 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_taxB | 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_programsB | 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_eligibilityA | 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_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_onboardingB | 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_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_itemA | 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_inventory_itemB | 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_get_offersC | Get all offers for the seller |
| ebay_create_offerB | Create a new offer for an inventory item |
| ebay_publish_offerB | Publish an offer to create a listing |
| ebay_bulk_create_or_replace_inventory_itemB | Bulk create or replace multiple inventory items |
| ebay_bulk_get_inventory_itemC | Bulk get multiple inventory items |
| ebay_bulk_update_price_quantityB | Bulk update price and quantity for multiple offers |
| ebay_get_product_compatibilityC | Get product compatibility information for an inventory item |
| ebay_create_or_replace_product_compatibilityB | Create or replace product compatibility for an inventory item |
| ebay_delete_product_compatibilityC | 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_locationsB | Get all inventory locations |
| ebay_get_inventory_locationB | Get a specific inventory location |
| ebay_create_or_replace_inventory_locationC | Create or replace an inventory location |
| ebay_delete_inventory_locationC | Delete an inventory location |
| ebay_disable_inventory_locationC | Disable an inventory location |
| ebay_enable_inventory_locationC | Enable an inventory location |
| ebay_update_location_detailsC | Update location details for an inventory location |
| ebay_get_offerA | Get a specific offer by ID |
| ebay_update_offerC | Update an existing offer |
| ebay_delete_offerC | Delete an offer |
| ebay_withdraw_offerC | Withdraw a published offer |
| ebay_bulk_create_offerC | Bulk create multiple offers |
| 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_listing_locationsA | Get inventory locations for a specific listing (SKU location mapping). 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 multiple fulfillment center locations. Required OAuth Scope: sell.inventory Minimum Scope: https://api.ebay.com/oauth/api_scope/sell.inventory |
| ebay_delete_sku_location_mappingB | Delete SKU location mapping for a listing. Removes all 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_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_orderA | 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_fulfillmentA | 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_payment_dispute_summariesB | 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_disputeA | 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_disputeB | 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 |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/YosefHayim/ebay-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server