ebay-mcp 1.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +586 -0
- package/build/api/account-management/account.d.ts +216 -0
- package/build/api/account-management/account.js +305 -0
- package/build/api/analytics-and-report/analytics.d.ts +33 -0
- package/build/api/analytics-and-report/analytics.js +102 -0
- package/build/api/client.d.ts +89 -0
- package/build/api/client.js +343 -0
- package/build/api/communication/feedback.d.ts +45 -0
- package/build/api/communication/feedback.js +119 -0
- package/build/api/communication/message.d.ts +55 -0
- package/build/api/communication/message.js +131 -0
- package/build/api/communication/negotiation.d.ts +39 -0
- package/build/api/communication/negotiation.js +97 -0
- package/build/api/communication/notification.d.ts +128 -0
- package/build/api/communication/notification.js +373 -0
- package/build/api/index.d.ts +96 -0
- package/build/api/index.js +121 -0
- package/build/api/listing-management/inventory.d.ts +216 -0
- package/build/api/listing-management/inventory.js +633 -0
- package/build/api/listing-metadata/metadata.d.ts +154 -0
- package/build/api/listing-metadata/metadata.js +485 -0
- package/build/api/listing-metadata/taxonomy.d.ts +38 -0
- package/build/api/listing-metadata/taxonomy.js +58 -0
- package/build/api/marketing-and-promotions/marketing.d.ts +395 -0
- package/build/api/marketing-and-promotions/marketing.js +565 -0
- package/build/api/marketing-and-promotions/recommendation.d.ts +20 -0
- package/build/api/marketing-and-promotions/recommendation.js +32 -0
- package/build/api/order-management/dispute.d.ts +65 -0
- package/build/api/order-management/dispute.js +69 -0
- package/build/api/order-management/fulfillment.d.ts +80 -0
- package/build/api/order-management/fulfillment.js +89 -0
- package/build/api/other/compliance.d.ts +26 -0
- package/build/api/other/compliance.js +47 -0
- package/build/api/other/edelivery.d.ts +153 -0
- package/build/api/other/edelivery.js +219 -0
- package/build/api/other/identity.d.ts +17 -0
- package/build/api/other/identity.js +24 -0
- package/build/api/other/translation.d.ts +14 -0
- package/build/api/other/translation.js +22 -0
- package/build/api/other/vero.d.ts +30 -0
- package/build/api/other/vero.js +48 -0
- package/build/auth/oauth-metadata.d.ts +46 -0
- package/build/auth/oauth-metadata.js +59 -0
- package/build/auth/oauth-middleware.d.ts +35 -0
- package/build/auth/oauth-middleware.js +99 -0
- package/build/auth/oauth-types.d.ts +66 -0
- package/build/auth/oauth-types.js +4 -0
- package/build/auth/oauth.d.ts +93 -0
- package/build/auth/oauth.js +383 -0
- package/build/auth/scope-utils.d.ts +70 -0
- package/build/auth/scope-utils.js +304 -0
- package/build/auth/token-verifier.d.ts +57 -0
- package/build/auth/token-verifier.js +172 -0
- package/build/config/environment.d.ts +61 -0
- package/build/config/environment.js +260 -0
- package/build/index.d.ts +1 -0
- package/build/index.js +98 -0
- package/build/schemas/account-management/account.d.ts +5324 -0
- package/build/schemas/account-management/account.js +366 -0
- package/build/schemas/analytics/analytics.d.ts +167 -0
- package/build/schemas/analytics/analytics.js +191 -0
- package/build/schemas/communication/messages.d.ts +1872 -0
- package/build/schemas/communication/messages.js +348 -0
- package/build/schemas/fulfillment/orders.d.ts +4655 -0
- package/build/schemas/fulfillment/orders.js +317 -0
- package/build/schemas/index.d.ts +2100 -0
- package/build/schemas/index.js +68 -0
- package/build/schemas/inventory-management/inventory.d.ts +6419 -0
- package/build/schemas/inventory-management/inventory.js +450 -0
- package/build/schemas/marketing/marketing.d.ts +14181 -0
- package/build/schemas/marketing/marketing.js +1088 -0
- package/build/schemas/metadata/metadata.d.ts +5259 -0
- package/build/schemas/metadata/metadata.js +614 -0
- package/build/schemas/other/other-apis.d.ts +257 -0
- package/build/schemas/other/other-apis.js +372 -0
- package/build/schemas/taxonomy/taxonomy.d.ts +215 -0
- package/build/schemas/taxonomy/taxonomy.js +571 -0
- package/build/scripts/auto-setup.d.ts +12 -0
- package/build/scripts/auto-setup.js +277 -0
- package/build/scripts/diagnostics.d.ts +8 -0
- package/build/scripts/diagnostics.js +299 -0
- package/build/scripts/download-specs.d.ts +1 -0
- package/build/scripts/download-specs.js +116 -0
- package/build/scripts/interactive-setup.d.ts +21 -0
- package/build/scripts/interactive-setup.js +723 -0
- package/build/server-http.d.ts +11 -0
- package/build/server-http.js +361 -0
- package/build/tools/definitions/account-with-schemas.d.ts +39 -0
- package/build/tools/definitions/account-with-schemas.js +170 -0
- package/build/tools/definitions/account.d.ts +12 -0
- package/build/tools/definitions/account.js +428 -0
- package/build/tools/definitions/analytics.d.ts +25 -0
- package/build/tools/definitions/analytics.js +66 -0
- package/build/tools/definitions/communication.d.ts +12 -0
- package/build/tools/definitions/communication.js +151 -0
- package/build/tools/definitions/fulfillment.d.ts +12 -0
- package/build/tools/definitions/fulfillment.js +326 -0
- package/build/tools/definitions/index.d.ts +25 -0
- package/build/tools/definitions/index.js +37 -0
- package/build/tools/definitions/inventory.d.ts +12 -0
- package/build/tools/definitions/inventory.js +429 -0
- package/build/tools/definitions/marketing.d.ts +12 -0
- package/build/tools/definitions/marketing.js +1095 -0
- package/build/tools/definitions/metadata.d.ts +12 -0
- package/build/tools/definitions/metadata.js +188 -0
- package/build/tools/definitions/other.d.ts +13 -0
- package/build/tools/definitions/other.js +309 -0
- package/build/tools/definitions/taxonomy.d.ts +25 -0
- package/build/tools/definitions/taxonomy.js +64 -0
- package/build/tools/definitions/token-management.d.ts +35 -0
- package/build/tools/definitions/token-management.js +103 -0
- package/build/tools/index.d.ts +11 -0
- package/build/tools/index.js +1003 -0
- package/build/tools/schemas.d.ts +14764 -0
- package/build/tools/schemas.js +667 -0
- package/build/tools/tool-definitions.d.ts +35 -0
- package/build/tools/tool-definitions.js +3534 -0
- package/build/types/application-settings/developerAnalyticsV1BetaOas3.d.ts +197 -0
- package/build/types/application-settings/developerAnalyticsV1BetaOas3.js +5 -0
- package/build/types/application-settings/developerClientRegistrationV1Oas3.d.ts +155 -0
- package/build/types/application-settings/developerClientRegistrationV1Oas3.js +5 -0
- package/build/types/application-settings/developerKeyManagementV1Oas3.d.ts +246 -0
- package/build/types/application-settings/developerKeyManagementV1Oas3.js +5 -0
- package/build/types/ebay-enums.d.ts +1204 -0
- package/build/types/ebay-enums.js +1330 -0
- package/build/types/ebay.d.ts +143 -0
- package/build/types/ebay.js +123 -0
- package/build/types/index.d.ts +6 -0
- package/build/types/index.js +10 -0
- package/build/types/sell-apps/account-management/sellAccountV1Oas3.d.ts +2579 -0
- package/build/types/sell-apps/account-management/sellAccountV1Oas3.js +5 -0
- package/build/types/sell-apps/analytics-and-report/sellAnalyticsV1Oas3.d.ts +446 -0
- package/build/types/sell-apps/analytics-and-report/sellAnalyticsV1Oas3.js +5 -0
- package/build/types/sell-apps/communication/commerceFeedbackV1BetaOas3.d.ts +705 -0
- package/build/types/sell-apps/communication/commerceFeedbackV1BetaOas3.js +5 -0
- package/build/types/sell-apps/communication/commerceMessageV1Oas3.d.ts +590 -0
- package/build/types/sell-apps/communication/commerceMessageV1Oas3.js +5 -0
- package/build/types/sell-apps/communication/commerceNotificationV1Oas3.d.ts +1276 -0
- package/build/types/sell-apps/communication/commerceNotificationV1Oas3.js +5 -0
- package/build/types/sell-apps/communication/sellNegotiationV1Oas3.d.ts +277 -0
- package/build/types/sell-apps/communication/sellNegotiationV1Oas3.js +5 -0
- package/build/types/sell-apps/listing-management/sellInventoryV1Oas3.d.ts +3133 -0
- package/build/types/sell-apps/listing-management/sellInventoryV1Oas3.js +5 -0
- package/build/types/sell-apps/listing-metadata/sellMetadataV1Oas3.d.ts +2289 -0
- package/build/types/sell-apps/listing-metadata/sellMetadataV1Oas3.js +5 -0
- package/build/types/sell-apps/markeitng-and-promotions/sellMarketingV1Oas3.d.ts +6650 -0
- package/build/types/sell-apps/markeitng-and-promotions/sellMarketingV1Oas3.js +5 -0
- package/build/types/sell-apps/markeitng-and-promotions/sellRecommendationV1Oas3.d.ts +172 -0
- package/build/types/sell-apps/markeitng-and-promotions/sellRecommendationV1Oas3.js +5 -0
- package/build/types/sell-apps/order-management/sellFulfillmentV1Oas3.d.ts +1869 -0
- package/build/types/sell-apps/order-management/sellFulfillmentV1Oas3.js +5 -0
- package/build/types/sell-apps/other-apis/commerceIdentityV1Oas3.d.ts +178 -0
- package/build/types/sell-apps/other-apis/commerceIdentityV1Oas3.js +5 -0
- package/build/types/sell-apps/other-apis/commerceTranslationV1BetaOas3.d.ts +128 -0
- package/build/types/sell-apps/other-apis/commerceTranslationV1BetaOas3.js +5 -0
- package/build/types/sell-apps/other-apis/commerceVeroV1Oas3.d.ts +417 -0
- package/build/types/sell-apps/other-apis/commerceVeroV1Oas3.js +5 -0
- package/build/types/sell-apps/other-apis/sellComplianceV1Oas3.d.ts +273 -0
- package/build/types/sell-apps/other-apis/sellComplianceV1Oas3.js +5 -0
- package/build/types/sell-apps/other-apis/sellEdeliveryInternationalShippingOas3.d.ts +2537 -0
- package/build/types/sell-apps/other-apis/sellEdeliveryInternationalShippingOas3.js +5 -0
- package/build/types/sell-apps/other-apis/sellMarketingV1Oas3.d.ts +6650 -0
- package/build/types/sell-apps/other-apis/sellMarketingV1Oas3.js +5 -0
- package/build/types/sell-apps/other-apis/sellRecommendationV1Oas3.d.ts +172 -0
- package/build/types/sell-apps/other-apis/sellRecommendationV1Oas3.js +5 -0
- package/build/utils/account-management/account.d.ts +1094 -0
- package/build/utils/account-management/account.js +831 -0
- package/build/utils/communication/feedback.d.ts +152 -0
- package/build/utils/communication/feedback.js +216 -0
- package/build/utils/communication/message.d.ts +174 -0
- package/build/utils/communication/message.js +242 -0
- package/build/utils/communication/negotiation.d.ts +123 -0
- package/build/utils/communication/negotiation.js +150 -0
- package/build/utils/communication/notification.d.ts +370 -0
- package/build/utils/communication/notification.js +369 -0
- package/build/utils/date-converter.d.ts +59 -0
- package/build/utils/date-converter.js +160 -0
- package/build/utils/llm-client-detector.d.ts +54 -0
- package/build/utils/llm-client-detector.js +318 -0
- package/build/utils/oauth-helper.d.ts +37 -0
- package/build/utils/oauth-helper.js +315 -0
- package/build/utils/order-management/dispute.d.ts +346 -0
- package/build/utils/order-management/dispute.js +369 -0
- package/build/utils/order-management/fulfillment.d.ts +200 -0
- package/build/utils/order-management/fulfillment.js +205 -0
- package/build/utils/other/compliance.d.ts +49 -0
- package/build/utils/other/compliance.js +76 -0
- package/build/utils/other/edelivery.d.ts +310 -0
- package/build/utils/other/edelivery.js +241 -0
- package/build/utils/other/identity.d.ts +13 -0
- package/build/utils/other/identity.js +13 -0
- package/build/utils/other/translation.d.ts +28 -0
- package/build/utils/other/translation.js +41 -0
- package/build/utils/other/vero.d.ts +61 -0
- package/build/utils/other/vero.js +90 -0
- package/build/utils/scope-helper.d.ts +49 -0
- package/build/utils/scope-helper.js +207 -0
- package/build/utils/security-checker.d.ts +46 -0
- package/build/utils/security-checker.js +248 -0
- package/build/utils/setup-validator.d.ts +25 -0
- package/build/utils/setup-validator.js +305 -0
- package/build/utils/token-utils.d.ts +40 -0
- package/build/utils/token-utils.js +40 -0
- package/package.json +115 -0
|
@@ -0,0 +1,3534 @@
|
|
|
1
|
+
import { MarketplaceId } from '../types/ebay-enums.js';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { bulkInventoryItemRequestSchema, bulkMigrateRequestSchema, bulkOfferRequestSchema, bulkPriceQuantityRequestSchema, bulkPublishRequestSchema, bulkSalesTaxRequestSchema, compatibilityDataSchema, compatibilitySpecificationSchema, customPolicySchema, feedbackDataSchema, fulfillmentPolicySchema, inventoryItemGroupSchema, inventoryItemSchema, listingFeesRequestSchema, locationSchema, notificationConfigSchema, notificationDestinationSchema, offerSchema, offerToBuyersSchema, paymentPolicySchema, productCompatibilitySchema, programRequestSchema, returnPolicySchema, salesTaxBaseSchema, shippingFulfillmentSchema, shippingQuoteRequestSchema, veroReportDataSchema, } from './schemas.js';
|
|
4
|
+
export const chatGptTools = [
|
|
5
|
+
{
|
|
6
|
+
name: 'search',
|
|
7
|
+
description: 'Search for eBay inventory items',
|
|
8
|
+
inputSchema: {
|
|
9
|
+
query: z.string().describe('Search query'),
|
|
10
|
+
limit: z.number().optional().describe('Maximum number of results'),
|
|
11
|
+
},
|
|
12
|
+
title: 'Search',
|
|
13
|
+
outputSchema: {
|
|
14
|
+
type: 'object',
|
|
15
|
+
properties: {
|
|
16
|
+
success: { type: 'boolean' },
|
|
17
|
+
data: { type: 'object' }
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
annotations: {
|
|
21
|
+
title: 'Search',
|
|
22
|
+
readOnlyHint: true
|
|
23
|
+
},
|
|
24
|
+
_meta: {
|
|
25
|
+
category: 'chat',
|
|
26
|
+
version: '1.0.0'
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: 'fetch',
|
|
31
|
+
description: 'Fetch a specific eBay inventory item by SKU',
|
|
32
|
+
inputSchema: {
|
|
33
|
+
id: z.string().describe('Item SKU'),
|
|
34
|
+
},
|
|
35
|
+
title: 'Fetch',
|
|
36
|
+
outputSchema: {
|
|
37
|
+
type: 'object',
|
|
38
|
+
properties: {
|
|
39
|
+
success: { type: 'boolean' },
|
|
40
|
+
data: { type: 'object' }
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
annotations: {
|
|
44
|
+
title: 'Fetch',
|
|
45
|
+
readOnlyHint: true
|
|
46
|
+
},
|
|
47
|
+
_meta: {
|
|
48
|
+
category: 'chat',
|
|
49
|
+
version: '1.0.0'
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
name: 'ebay_get_oauth_url',
|
|
54
|
+
description: '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.\n\nIMPORTANT: eBay has different OAuth scopes available for production vs sandbox environments:\n- Sandbox includes additional Buy API scopes (e.g., buy.order.readonly, buy.guest.order, buy.shopping.cart) and extended Identity scopes\n- Production includes sell.edelivery, commerce.message (explicit), and commerce.shipping scopes not available in sandbox\n- If you provide custom scopes, they will be validated against the current environment (set via EBAY_ENVIRONMENT). Any scopes not valid for the environment will generate warnings.',
|
|
55
|
+
inputSchema: {
|
|
56
|
+
redirectUri: z
|
|
57
|
+
.string()
|
|
58
|
+
.optional()
|
|
59
|
+
.describe('Optional redirect URI registered with your eBay application (RuName). If not provided, will use EBAY_REDIRECT_URI from .env file.'),
|
|
60
|
+
scopes: z
|
|
61
|
+
.array(z.string())
|
|
62
|
+
.optional()
|
|
63
|
+
.describe('Optional array of OAuth scopes. If not provided, uses environment-specific default scopes (production or sandbox based on EBAY_ENVIRONMENT). Custom scopes will be validated against the environment.'),
|
|
64
|
+
state: z.string().optional().describe('Optional state parameter for CSRF protection'),
|
|
65
|
+
},
|
|
66
|
+
title: 'Get OAuth URL',
|
|
67
|
+
outputSchema: {
|
|
68
|
+
type: 'object',
|
|
69
|
+
properties: {
|
|
70
|
+
success: { type: 'boolean' },
|
|
71
|
+
data: { type: 'object' }
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
annotations: {
|
|
75
|
+
title: 'Get OAuth URL',
|
|
76
|
+
readOnlyHint: true
|
|
77
|
+
},
|
|
78
|
+
_meta: {
|
|
79
|
+
category: 'chat',
|
|
80
|
+
version: '1.0.0'
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
name: 'ebay_set_user_tokens',
|
|
85
|
+
description: '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).',
|
|
86
|
+
inputSchema: {
|
|
87
|
+
accessToken: z.string().describe('The user access token obtained from OAuth flow'),
|
|
88
|
+
refreshToken: z.string().describe('The refresh token obtained from OAuth flow'),
|
|
89
|
+
},
|
|
90
|
+
title: 'Set User Tokens',
|
|
91
|
+
outputSchema: {
|
|
92
|
+
type: 'object',
|
|
93
|
+
properties: {
|
|
94
|
+
success: { type: 'boolean' },
|
|
95
|
+
data: { type: 'object' }
|
|
96
|
+
}
|
|
97
|
+
},
|
|
98
|
+
annotations: {
|
|
99
|
+
title: 'Set User Tokens',
|
|
100
|
+
idempotentHint: true
|
|
101
|
+
},
|
|
102
|
+
_meta: {
|
|
103
|
+
category: 'chat',
|
|
104
|
+
version: '1.0.0'
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
name: 'ebay_get_token_status',
|
|
109
|
+
description: 'Check the current OAuth token status. Returns information about whether user tokens or client credentials are being used, and whether tokens are valid.',
|
|
110
|
+
inputSchema: {},
|
|
111
|
+
title: 'Get Token Status',
|
|
112
|
+
outputSchema: {
|
|
113
|
+
type: 'object',
|
|
114
|
+
properties: {
|
|
115
|
+
success: { type: 'boolean' },
|
|
116
|
+
data: { type: 'object' }
|
|
117
|
+
}
|
|
118
|
+
},
|
|
119
|
+
annotations: {
|
|
120
|
+
title: 'Get Token Status',
|
|
121
|
+
readOnlyHint: true
|
|
122
|
+
},
|
|
123
|
+
_meta: {
|
|
124
|
+
category: 'chat',
|
|
125
|
+
version: '1.0.0'
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
name: 'ebay_clear_tokens',
|
|
130
|
+
description: 'Clear all stored OAuth tokens (both user tokens and client credentials). This will require re-authentication for subsequent API calls.',
|
|
131
|
+
inputSchema: {},
|
|
132
|
+
title: 'Clear Tokens',
|
|
133
|
+
outputSchema: {
|
|
134
|
+
type: 'object',
|
|
135
|
+
properties: {
|
|
136
|
+
success: { type: 'boolean' },
|
|
137
|
+
data: { type: 'object' }
|
|
138
|
+
}
|
|
139
|
+
},
|
|
140
|
+
annotations: {
|
|
141
|
+
title: 'Clear Tokens',
|
|
142
|
+
destructiveHint: true
|
|
143
|
+
},
|
|
144
|
+
_meta: {
|
|
145
|
+
category: 'chat',
|
|
146
|
+
version: '1.0.0'
|
|
147
|
+
}
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
name: 'ebay_convert_date_to_timestamp',
|
|
151
|
+
description: '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.',
|
|
152
|
+
inputSchema: {
|
|
153
|
+
dateInput: z
|
|
154
|
+
.union([z.string(), z.number()])
|
|
155
|
+
.describe('Date to convert. Supports ISO 8601 strings (e.g., "2025-01-15T10:30:00Z"), Unix timestamps (seconds or milliseconds), or relative time (e.g., "in 2 hours")'),
|
|
156
|
+
},
|
|
157
|
+
title: 'Convert Date to Timestamp',
|
|
158
|
+
outputSchema: {
|
|
159
|
+
type: 'object',
|
|
160
|
+
properties: {
|
|
161
|
+
success: { type: 'boolean' },
|
|
162
|
+
data: { type: 'object' }
|
|
163
|
+
}
|
|
164
|
+
},
|
|
165
|
+
annotations: {
|
|
166
|
+
title: 'Convert Date to Timestamp',
|
|
167
|
+
readOnlyHint: true
|
|
168
|
+
},
|
|
169
|
+
_meta: {
|
|
170
|
+
category: 'chat',
|
|
171
|
+
version: '1.0.0'
|
|
172
|
+
}
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
name: 'ebay_validate_token_expiry',
|
|
176
|
+
description: '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).',
|
|
177
|
+
inputSchema: {
|
|
178
|
+
accessTokenExpiry: z
|
|
179
|
+
.union([z.string(), z.number()])
|
|
180
|
+
.describe('Access token expiry time. Can be ISO date string, Unix timestamp (seconds or milliseconds), or relative time'),
|
|
181
|
+
refreshTokenExpiry: z
|
|
182
|
+
.union([z.string(), z.number()])
|
|
183
|
+
.describe('Refresh token expiry time. Can be ISO date string, Unix timestamp (seconds or milliseconds), or relative time'),
|
|
184
|
+
},
|
|
185
|
+
title: 'Validate Token Expiry',
|
|
186
|
+
outputSchema: {
|
|
187
|
+
type: 'object',
|
|
188
|
+
properties: {
|
|
189
|
+
success: { type: 'boolean' },
|
|
190
|
+
data: { type: 'object' }
|
|
191
|
+
}
|
|
192
|
+
},
|
|
193
|
+
annotations: {
|
|
194
|
+
title: 'Validate Token Expiry',
|
|
195
|
+
readOnlyHint: true
|
|
196
|
+
},
|
|
197
|
+
_meta: {
|
|
198
|
+
category: 'chat',
|
|
199
|
+
version: '1.0.0'
|
|
200
|
+
}
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
name: 'ebay_set_user_tokens_with_expiry',
|
|
204
|
+
description: "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.",
|
|
205
|
+
inputSchema: {
|
|
206
|
+
accessToken: z.string().min(1).describe('eBay user access token'),
|
|
207
|
+
refreshToken: z.string().min(1).describe('eBay user refresh token'),
|
|
208
|
+
accessTokenExpiry: z
|
|
209
|
+
.union([z.string(), z.number()])
|
|
210
|
+
.optional()
|
|
211
|
+
.describe('Optional: Access token expiry time. If not provided, defaults to 2 hours from now. Can be ISO date string, Unix timestamp, or relative time (e.g., "in 7200 seconds")'),
|
|
212
|
+
refreshTokenExpiry: z
|
|
213
|
+
.union([z.string(), z.number()])
|
|
214
|
+
.optional()
|
|
215
|
+
.describe('Optional: Refresh token expiry time. If not provided, defaults to 18 months from now. Can be ISO date string, Unix timestamp, or relative time'),
|
|
216
|
+
autoRefresh: z
|
|
217
|
+
.boolean()
|
|
218
|
+
.optional()
|
|
219
|
+
.default(true)
|
|
220
|
+
.describe('If true and access token is expired but refresh token is valid, automatically refresh the access token. Default: true'),
|
|
221
|
+
},
|
|
222
|
+
title: 'Set User Tokens with Expiry',
|
|
223
|
+
outputSchema: {
|
|
224
|
+
type: 'object',
|
|
225
|
+
properties: {
|
|
226
|
+
success: { type: 'boolean' },
|
|
227
|
+
data: { type: 'object' }
|
|
228
|
+
}
|
|
229
|
+
},
|
|
230
|
+
annotations: {
|
|
231
|
+
title: 'Set User Tokens with Expiry',
|
|
232
|
+
idempotentHint: true
|
|
233
|
+
},
|
|
234
|
+
_meta: {
|
|
235
|
+
category: 'chat',
|
|
236
|
+
version: '1.0.0'
|
|
237
|
+
}
|
|
238
|
+
},
|
|
239
|
+
];
|
|
240
|
+
export const accountTools = [
|
|
241
|
+
{
|
|
242
|
+
name: 'ebay_get_custom_policies',
|
|
243
|
+
description: 'Retrieve custom policies defined for the seller account',
|
|
244
|
+
inputSchema: {
|
|
245
|
+
policyTypes: z
|
|
246
|
+
.string()
|
|
247
|
+
.optional()
|
|
248
|
+
.describe('Comma-delimited list of policy types to retrieve'),
|
|
249
|
+
},
|
|
250
|
+
title: 'Get Custom Policies',
|
|
251
|
+
outputSchema: {
|
|
252
|
+
type: 'object',
|
|
253
|
+
properties: {
|
|
254
|
+
success: { type: 'boolean' },
|
|
255
|
+
data: { type: 'object' }
|
|
256
|
+
}
|
|
257
|
+
},
|
|
258
|
+
annotations: {
|
|
259
|
+
title: 'Get Custom Policies',
|
|
260
|
+
readOnlyHint: true
|
|
261
|
+
},
|
|
262
|
+
_meta: {
|
|
263
|
+
category: 'account',
|
|
264
|
+
version: '1.0.0'
|
|
265
|
+
}
|
|
266
|
+
},
|
|
267
|
+
{
|
|
268
|
+
name: 'ebay_get_fulfillment_policies',
|
|
269
|
+
description: 'Get fulfillment policies for the seller.\n\nRequired OAuth Scope: sell.account.readonly or sell.account\nMinimum Scope: https://api.ebay.com/oauth/api_scope/sell.account.readonly',
|
|
270
|
+
inputSchema: {
|
|
271
|
+
marketplaceId: z.nativeEnum(MarketplaceId).optional().describe('eBay marketplace ID'),
|
|
272
|
+
},
|
|
273
|
+
title: 'Get Fulfillment Policies',
|
|
274
|
+
outputSchema: {
|
|
275
|
+
type: 'object',
|
|
276
|
+
properties: {
|
|
277
|
+
success: { type: 'boolean' },
|
|
278
|
+
data: { type: 'object' }
|
|
279
|
+
}
|
|
280
|
+
},
|
|
281
|
+
annotations: {
|
|
282
|
+
title: 'Get Fulfillment Policies',
|
|
283
|
+
readOnlyHint: true
|
|
284
|
+
},
|
|
285
|
+
_meta: {
|
|
286
|
+
category: 'account',
|
|
287
|
+
version: '1.0.0'
|
|
288
|
+
}
|
|
289
|
+
},
|
|
290
|
+
{
|
|
291
|
+
name: 'ebay_get_payment_policies',
|
|
292
|
+
description: 'Get payment policies for the seller',
|
|
293
|
+
inputSchema: {
|
|
294
|
+
marketplaceId: z.nativeEnum(MarketplaceId).optional().describe('eBay marketplace ID'),
|
|
295
|
+
},
|
|
296
|
+
title: 'Get Payment Policies',
|
|
297
|
+
outputSchema: {
|
|
298
|
+
type: 'object',
|
|
299
|
+
properties: {
|
|
300
|
+
success: { type: 'boolean' },
|
|
301
|
+
data: { type: 'object' }
|
|
302
|
+
}
|
|
303
|
+
},
|
|
304
|
+
annotations: {
|
|
305
|
+
title: 'Get Payment Policies',
|
|
306
|
+
readOnlyHint: true
|
|
307
|
+
},
|
|
308
|
+
_meta: {
|
|
309
|
+
category: 'account',
|
|
310
|
+
version: '1.0.0'
|
|
311
|
+
}
|
|
312
|
+
},
|
|
313
|
+
{
|
|
314
|
+
name: 'ebay_get_return_policies',
|
|
315
|
+
description: 'Get return policies for the seller',
|
|
316
|
+
inputSchema: {
|
|
317
|
+
marketplaceId: z.nativeEnum(MarketplaceId).optional().describe('eBay marketplace ID'),
|
|
318
|
+
},
|
|
319
|
+
title: 'Get Return Policies',
|
|
320
|
+
outputSchema: {
|
|
321
|
+
type: 'object',
|
|
322
|
+
properties: {
|
|
323
|
+
success: { type: 'boolean' },
|
|
324
|
+
data: { type: 'object' }
|
|
325
|
+
}
|
|
326
|
+
},
|
|
327
|
+
annotations: {
|
|
328
|
+
title: 'Get Return Policies',
|
|
329
|
+
readOnlyHint: true
|
|
330
|
+
},
|
|
331
|
+
_meta: {
|
|
332
|
+
category: 'account',
|
|
333
|
+
version: '1.0.0'
|
|
334
|
+
}
|
|
335
|
+
},
|
|
336
|
+
// Fulfillment Policy CRUD
|
|
337
|
+
{
|
|
338
|
+
name: 'ebay_create_fulfillment_policy',
|
|
339
|
+
description: 'Create a new fulfillment policy.\n\nRequired OAuth Scope: sell.account\nMinimum Scope: https://api.ebay.com/oauth/api_scope/sell.account',
|
|
340
|
+
inputSchema: {
|
|
341
|
+
policy: fulfillmentPolicySchema.describe('Fulfillment policy details'),
|
|
342
|
+
},
|
|
343
|
+
title: 'Create Fulfillment Policy',
|
|
344
|
+
outputSchema: {
|
|
345
|
+
type: 'object',
|
|
346
|
+
properties: {
|
|
347
|
+
success: { type: 'boolean' },
|
|
348
|
+
data: { type: 'object' }
|
|
349
|
+
}
|
|
350
|
+
},
|
|
351
|
+
annotations: {
|
|
352
|
+
title: 'Create Fulfillment Policy',
|
|
353
|
+
idempotentHint: true
|
|
354
|
+
},
|
|
355
|
+
_meta: {
|
|
356
|
+
category: 'account',
|
|
357
|
+
version: '1.0.0'
|
|
358
|
+
}
|
|
359
|
+
},
|
|
360
|
+
{
|
|
361
|
+
name: 'ebay_get_fulfillment_policy',
|
|
362
|
+
description: 'Get a specific fulfillment policy by ID',
|
|
363
|
+
inputSchema: {
|
|
364
|
+
fulfillmentPolicyId: z.string().describe('The fulfillment policy ID'),
|
|
365
|
+
},
|
|
366
|
+
title: 'Get Fulfillment Policy',
|
|
367
|
+
outputSchema: {
|
|
368
|
+
type: 'object',
|
|
369
|
+
properties: {
|
|
370
|
+
success: { type: 'boolean' },
|
|
371
|
+
data: { type: 'object' }
|
|
372
|
+
}
|
|
373
|
+
},
|
|
374
|
+
annotations: {
|
|
375
|
+
title: 'Get Fulfillment Policy',
|
|
376
|
+
readOnlyHint: true
|
|
377
|
+
},
|
|
378
|
+
_meta: {
|
|
379
|
+
category: 'account',
|
|
380
|
+
version: '1.0.0'
|
|
381
|
+
}
|
|
382
|
+
},
|
|
383
|
+
{
|
|
384
|
+
name: 'ebay_get_fulfillment_policy_by_name',
|
|
385
|
+
description: 'Get a fulfillment policy by name',
|
|
386
|
+
inputSchema: {
|
|
387
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('eBay marketplace ID'),
|
|
388
|
+
name: z.string().describe('Policy name'),
|
|
389
|
+
},
|
|
390
|
+
title: 'Get Fulfillment Policy by Name',
|
|
391
|
+
outputSchema: {
|
|
392
|
+
type: 'object',
|
|
393
|
+
properties: {
|
|
394
|
+
success: { type: 'boolean' },
|
|
395
|
+
data: { type: 'object' }
|
|
396
|
+
}
|
|
397
|
+
},
|
|
398
|
+
annotations: {
|
|
399
|
+
title: 'Get Fulfillment Policy by Name',
|
|
400
|
+
readOnlyHint: true
|
|
401
|
+
},
|
|
402
|
+
_meta: {
|
|
403
|
+
category: 'account',
|
|
404
|
+
version: '1.0.0'
|
|
405
|
+
}
|
|
406
|
+
},
|
|
407
|
+
{
|
|
408
|
+
name: 'ebay_update_fulfillment_policy',
|
|
409
|
+
description: 'Update an existing fulfillment policy',
|
|
410
|
+
inputSchema: {
|
|
411
|
+
fulfillmentPolicyId: z.string().describe('The fulfillment policy ID'),
|
|
412
|
+
policy: fulfillmentPolicySchema.describe('Updated fulfillment policy details'),
|
|
413
|
+
},
|
|
414
|
+
title: 'Update Fulfillment Policy',
|
|
415
|
+
outputSchema: {
|
|
416
|
+
type: 'object',
|
|
417
|
+
properties: {
|
|
418
|
+
success: { type: 'boolean' },
|
|
419
|
+
data: { type: 'object' }
|
|
420
|
+
}
|
|
421
|
+
},
|
|
422
|
+
annotations: {
|
|
423
|
+
title: 'Update Fulfillment Policy',
|
|
424
|
+
idempotentHint: true
|
|
425
|
+
},
|
|
426
|
+
_meta: {
|
|
427
|
+
category: 'account',
|
|
428
|
+
version: '1.0.0'
|
|
429
|
+
}
|
|
430
|
+
},
|
|
431
|
+
{
|
|
432
|
+
name: 'ebay_delete_fulfillment_policy',
|
|
433
|
+
description: 'Delete a fulfillment policy',
|
|
434
|
+
inputSchema: {
|
|
435
|
+
fulfillmentPolicyId: z.string().describe('The fulfillment policy ID'),
|
|
436
|
+
},
|
|
437
|
+
title: 'Delete Fulfillment Policy',
|
|
438
|
+
outputSchema: {
|
|
439
|
+
type: 'object',
|
|
440
|
+
properties: {
|
|
441
|
+
success: { type: 'boolean' },
|
|
442
|
+
data: { type: 'object' }
|
|
443
|
+
}
|
|
444
|
+
},
|
|
445
|
+
annotations: {
|
|
446
|
+
title: 'Delete Fulfillment Policy',
|
|
447
|
+
destructiveHint: true
|
|
448
|
+
},
|
|
449
|
+
_meta: {
|
|
450
|
+
category: 'account',
|
|
451
|
+
version: '1.0.0'
|
|
452
|
+
}
|
|
453
|
+
},
|
|
454
|
+
// Payment Policy CRUD
|
|
455
|
+
{
|
|
456
|
+
name: 'ebay_create_payment_policy',
|
|
457
|
+
description: 'Create a new payment policy',
|
|
458
|
+
inputSchema: {
|
|
459
|
+
policy: paymentPolicySchema.describe('Payment policy details'),
|
|
460
|
+
},
|
|
461
|
+
title: 'Create Payment Policy',
|
|
462
|
+
outputSchema: {
|
|
463
|
+
type: 'object',
|
|
464
|
+
properties: {
|
|
465
|
+
success: { type: 'boolean' },
|
|
466
|
+
data: { type: 'object' }
|
|
467
|
+
}
|
|
468
|
+
},
|
|
469
|
+
annotations: {
|
|
470
|
+
title: 'Create Payment Policy',
|
|
471
|
+
idempotentHint: true
|
|
472
|
+
},
|
|
473
|
+
_meta: {
|
|
474
|
+
category: 'account',
|
|
475
|
+
version: '1.0.0'
|
|
476
|
+
}
|
|
477
|
+
},
|
|
478
|
+
{
|
|
479
|
+
name: 'ebay_get_payment_policy',
|
|
480
|
+
description: 'Get a specific payment policy by ID',
|
|
481
|
+
inputSchema: {
|
|
482
|
+
paymentPolicyId: z.string().describe('The payment policy ID'),
|
|
483
|
+
},
|
|
484
|
+
title: 'Get Payment Policy',
|
|
485
|
+
outputSchema: {
|
|
486
|
+
type: 'object',
|
|
487
|
+
properties: {
|
|
488
|
+
success: { type: 'boolean' },
|
|
489
|
+
data: { type: 'object' }
|
|
490
|
+
}
|
|
491
|
+
},
|
|
492
|
+
annotations: {
|
|
493
|
+
title: 'Get Payment Policy',
|
|
494
|
+
readOnlyHint: true
|
|
495
|
+
},
|
|
496
|
+
_meta: {
|
|
497
|
+
category: 'account',
|
|
498
|
+
version: '1.0.0'
|
|
499
|
+
}
|
|
500
|
+
},
|
|
501
|
+
{
|
|
502
|
+
name: 'ebay_get_payment_policy_by_name',
|
|
503
|
+
description: 'Get a payment policy by name',
|
|
504
|
+
inputSchema: {
|
|
505
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('eBay marketplace ID'),
|
|
506
|
+
name: z.string().describe('Policy name'),
|
|
507
|
+
},
|
|
508
|
+
title: 'Get Payment Policy by Name',
|
|
509
|
+
outputSchema: {
|
|
510
|
+
type: 'object',
|
|
511
|
+
properties: {
|
|
512
|
+
success: { type: 'boolean' },
|
|
513
|
+
data: { type: 'object' }
|
|
514
|
+
}
|
|
515
|
+
},
|
|
516
|
+
annotations: {
|
|
517
|
+
title: 'Get Payment Policy by Name',
|
|
518
|
+
readOnlyHint: true
|
|
519
|
+
},
|
|
520
|
+
_meta: {
|
|
521
|
+
category: 'account',
|
|
522
|
+
version: '1.0.0'
|
|
523
|
+
}
|
|
524
|
+
},
|
|
525
|
+
{
|
|
526
|
+
name: 'ebay_update_payment_policy',
|
|
527
|
+
description: 'Update an existing payment policy',
|
|
528
|
+
inputSchema: {
|
|
529
|
+
paymentPolicyId: z.string().describe('The payment policy ID'),
|
|
530
|
+
policy: paymentPolicySchema.describe('Updated payment policy details'),
|
|
531
|
+
},
|
|
532
|
+
title: 'Update Payment Policy',
|
|
533
|
+
outputSchema: {
|
|
534
|
+
type: 'object',
|
|
535
|
+
properties: {
|
|
536
|
+
success: { type: 'boolean' },
|
|
537
|
+
data: { type: 'object' }
|
|
538
|
+
}
|
|
539
|
+
},
|
|
540
|
+
annotations: {
|
|
541
|
+
title: 'Update Payment Policy',
|
|
542
|
+
idempotentHint: true
|
|
543
|
+
},
|
|
544
|
+
_meta: {
|
|
545
|
+
category: 'account',
|
|
546
|
+
version: '1.0.0'
|
|
547
|
+
}
|
|
548
|
+
},
|
|
549
|
+
{
|
|
550
|
+
name: 'ebay_delete_payment_policy',
|
|
551
|
+
description: 'Delete a payment policy',
|
|
552
|
+
inputSchema: {
|
|
553
|
+
paymentPolicyId: z.string().describe('The payment policy ID'),
|
|
554
|
+
},
|
|
555
|
+
title: 'Delete Payment Policy',
|
|
556
|
+
outputSchema: {
|
|
557
|
+
type: 'object',
|
|
558
|
+
properties: {
|
|
559
|
+
success: { type: 'boolean' },
|
|
560
|
+
data: { type: 'object' }
|
|
561
|
+
}
|
|
562
|
+
},
|
|
563
|
+
annotations: {
|
|
564
|
+
title: 'Delete Payment Policy',
|
|
565
|
+
destructiveHint: true
|
|
566
|
+
},
|
|
567
|
+
_meta: {
|
|
568
|
+
category: 'account',
|
|
569
|
+
version: '1.0.0'
|
|
570
|
+
}
|
|
571
|
+
},
|
|
572
|
+
// Return Policy CRUD
|
|
573
|
+
{
|
|
574
|
+
name: 'ebay_create_return_policy',
|
|
575
|
+
description: 'Create a new return policy',
|
|
576
|
+
inputSchema: {
|
|
577
|
+
policy: returnPolicySchema.describe('Return policy details'),
|
|
578
|
+
},
|
|
579
|
+
title: 'Create Return Policy',
|
|
580
|
+
outputSchema: {
|
|
581
|
+
type: 'object',
|
|
582
|
+
properties: {
|
|
583
|
+
success: { type: 'boolean' },
|
|
584
|
+
data: { type: 'object' }
|
|
585
|
+
}
|
|
586
|
+
},
|
|
587
|
+
annotations: {
|
|
588
|
+
title: 'Create Return Policy',
|
|
589
|
+
idempotentHint: true
|
|
590
|
+
},
|
|
591
|
+
_meta: {
|
|
592
|
+
category: 'account',
|
|
593
|
+
version: '1.0.0'
|
|
594
|
+
}
|
|
595
|
+
},
|
|
596
|
+
{
|
|
597
|
+
name: 'ebay_get_return_policy',
|
|
598
|
+
description: 'Get a specific return policy by ID',
|
|
599
|
+
inputSchema: {
|
|
600
|
+
returnPolicyId: z.string().describe('The return policy ID'),
|
|
601
|
+
},
|
|
602
|
+
title: 'Get Return Policy',
|
|
603
|
+
outputSchema: {
|
|
604
|
+
type: 'object',
|
|
605
|
+
properties: {
|
|
606
|
+
success: { type: 'boolean' },
|
|
607
|
+
data: { type: 'object' }
|
|
608
|
+
}
|
|
609
|
+
},
|
|
610
|
+
annotations: {
|
|
611
|
+
title: 'Get Return Policy',
|
|
612
|
+
readOnlyHint: true
|
|
613
|
+
},
|
|
614
|
+
_meta: {
|
|
615
|
+
category: 'account',
|
|
616
|
+
version: '1.0.0'
|
|
617
|
+
}
|
|
618
|
+
},
|
|
619
|
+
{
|
|
620
|
+
name: 'ebay_get_return_policy_by_name',
|
|
621
|
+
description: 'Get a return policy by name',
|
|
622
|
+
inputSchema: {
|
|
623
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('eBay marketplace ID'),
|
|
624
|
+
name: z.string().describe('Policy name'),
|
|
625
|
+
},
|
|
626
|
+
title: 'Get Return Policy by Name',
|
|
627
|
+
outputSchema: {
|
|
628
|
+
type: 'object',
|
|
629
|
+
properties: {
|
|
630
|
+
success: { type: 'boolean' },
|
|
631
|
+
data: { type: 'object' }
|
|
632
|
+
}
|
|
633
|
+
},
|
|
634
|
+
annotations: {
|
|
635
|
+
title: 'Get Return Policy by Name',
|
|
636
|
+
readOnlyHint: true
|
|
637
|
+
},
|
|
638
|
+
_meta: {
|
|
639
|
+
category: 'account',
|
|
640
|
+
version: '1.0.0'
|
|
641
|
+
}
|
|
642
|
+
},
|
|
643
|
+
{
|
|
644
|
+
name: 'ebay_update_return_policy',
|
|
645
|
+
description: 'Update an existing return policy',
|
|
646
|
+
inputSchema: {
|
|
647
|
+
returnPolicyId: z.string().describe('The return policy ID'),
|
|
648
|
+
policy: returnPolicySchema.describe('Updated return policy details'),
|
|
649
|
+
},
|
|
650
|
+
title: 'Update Return Policy',
|
|
651
|
+
outputSchema: {
|
|
652
|
+
type: 'object',
|
|
653
|
+
properties: {
|
|
654
|
+
success: { type: 'boolean' },
|
|
655
|
+
data: { type: 'object' }
|
|
656
|
+
}
|
|
657
|
+
},
|
|
658
|
+
annotations: {
|
|
659
|
+
title: 'Update Return Policy',
|
|
660
|
+
idempotentHint: true
|
|
661
|
+
},
|
|
662
|
+
_meta: {
|
|
663
|
+
category: 'account',
|
|
664
|
+
version: '1.0.0'
|
|
665
|
+
}
|
|
666
|
+
},
|
|
667
|
+
{
|
|
668
|
+
name: 'ebay_delete_return_policy',
|
|
669
|
+
description: 'Delete a return policy',
|
|
670
|
+
inputSchema: {
|
|
671
|
+
returnPolicyId: z.string().describe('The return policy ID'),
|
|
672
|
+
},
|
|
673
|
+
title: 'Delete Return Policy',
|
|
674
|
+
outputSchema: {
|
|
675
|
+
type: 'object',
|
|
676
|
+
properties: {
|
|
677
|
+
success: { type: 'boolean' },
|
|
678
|
+
data: { type: 'object' }
|
|
679
|
+
}
|
|
680
|
+
},
|
|
681
|
+
annotations: {
|
|
682
|
+
title: 'Delete Return Policy',
|
|
683
|
+
destructiveHint: true
|
|
684
|
+
},
|
|
685
|
+
_meta: {
|
|
686
|
+
category: 'account',
|
|
687
|
+
version: '1.0.0'
|
|
688
|
+
}
|
|
689
|
+
},
|
|
690
|
+
// Custom Policy CRUD
|
|
691
|
+
{
|
|
692
|
+
name: 'ebay_create_custom_policy',
|
|
693
|
+
description: 'Create a new custom policy',
|
|
694
|
+
inputSchema: {
|
|
695
|
+
policy: customPolicySchema.describe('Custom policy details'),
|
|
696
|
+
},
|
|
697
|
+
title: 'Create Custom Policy',
|
|
698
|
+
outputSchema: {
|
|
699
|
+
type: 'object',
|
|
700
|
+
properties: {
|
|
701
|
+
success: { type: 'boolean' },
|
|
702
|
+
data: { type: 'object' }
|
|
703
|
+
}
|
|
704
|
+
},
|
|
705
|
+
annotations: {
|
|
706
|
+
title: 'Create Custom Policy',
|
|
707
|
+
idempotentHint: true
|
|
708
|
+
},
|
|
709
|
+
_meta: {
|
|
710
|
+
category: 'account',
|
|
711
|
+
version: '1.0.0'
|
|
712
|
+
}
|
|
713
|
+
},
|
|
714
|
+
{
|
|
715
|
+
name: 'ebay_get_custom_policy',
|
|
716
|
+
description: 'Get a specific custom policy by ID',
|
|
717
|
+
inputSchema: {
|
|
718
|
+
customPolicyId: z.string().describe('The custom policy ID'),
|
|
719
|
+
},
|
|
720
|
+
title: 'Get Custom Policy',
|
|
721
|
+
outputSchema: {
|
|
722
|
+
type: 'object',
|
|
723
|
+
properties: {
|
|
724
|
+
success: { type: 'boolean' },
|
|
725
|
+
data: { type: 'object' }
|
|
726
|
+
}
|
|
727
|
+
},
|
|
728
|
+
annotations: {
|
|
729
|
+
title: 'Get Custom Policy',
|
|
730
|
+
readOnlyHint: true
|
|
731
|
+
},
|
|
732
|
+
_meta: {
|
|
733
|
+
category: 'account',
|
|
734
|
+
version: '1.0.0'
|
|
735
|
+
}
|
|
736
|
+
},
|
|
737
|
+
{
|
|
738
|
+
name: 'ebay_update_custom_policy',
|
|
739
|
+
description: 'Update an existing custom policy',
|
|
740
|
+
inputSchema: {
|
|
741
|
+
customPolicyId: z.string().describe('The custom policy ID'),
|
|
742
|
+
policy: customPolicySchema.describe('Updated custom policy details'),
|
|
743
|
+
},
|
|
744
|
+
title: 'Update Custom Policy',
|
|
745
|
+
outputSchema: {
|
|
746
|
+
type: 'object',
|
|
747
|
+
properties: {
|
|
748
|
+
success: { type: 'boolean' },
|
|
749
|
+
data: { type: 'object' }
|
|
750
|
+
}
|
|
751
|
+
},
|
|
752
|
+
annotations: {
|
|
753
|
+
title: 'Update Custom Policy',
|
|
754
|
+
idempotentHint: true
|
|
755
|
+
},
|
|
756
|
+
_meta: {
|
|
757
|
+
category: 'account',
|
|
758
|
+
version: '1.0.0'
|
|
759
|
+
}
|
|
760
|
+
},
|
|
761
|
+
{
|
|
762
|
+
name: 'ebay_delete_custom_policy',
|
|
763
|
+
description: 'Delete a custom policy',
|
|
764
|
+
inputSchema: {
|
|
765
|
+
customPolicyId: z.string().describe('The custom policy ID'),
|
|
766
|
+
},
|
|
767
|
+
title: 'Delete Custom Policy',
|
|
768
|
+
outputSchema: {
|
|
769
|
+
type: 'object',
|
|
770
|
+
properties: {
|
|
771
|
+
success: { type: 'boolean' },
|
|
772
|
+
data: { type: 'object' }
|
|
773
|
+
}
|
|
774
|
+
},
|
|
775
|
+
annotations: {
|
|
776
|
+
title: 'Delete Custom Policy',
|
|
777
|
+
destructiveHint: true
|
|
778
|
+
},
|
|
779
|
+
_meta: {
|
|
780
|
+
category: 'account',
|
|
781
|
+
version: '1.0.0'
|
|
782
|
+
}
|
|
783
|
+
},
|
|
784
|
+
// KYC, Payments, Programs, Sales Tax, Subscription
|
|
785
|
+
{
|
|
786
|
+
name: 'ebay_get_kyc',
|
|
787
|
+
description: 'Get seller KYC (Know Your Customer) status',
|
|
788
|
+
inputSchema: {},
|
|
789
|
+
title: 'Get KYC',
|
|
790
|
+
outputSchema: {
|
|
791
|
+
type: 'object',
|
|
792
|
+
properties: {
|
|
793
|
+
success: { type: 'boolean' },
|
|
794
|
+
data: { type: 'object' }
|
|
795
|
+
}
|
|
796
|
+
},
|
|
797
|
+
annotations: {
|
|
798
|
+
title: 'Get KYC',
|
|
799
|
+
readOnlyHint: true
|
|
800
|
+
},
|
|
801
|
+
_meta: {
|
|
802
|
+
category: 'account',
|
|
803
|
+
version: '1.0.0'
|
|
804
|
+
}
|
|
805
|
+
},
|
|
806
|
+
{
|
|
807
|
+
name: 'ebay_opt_in_to_payments_program',
|
|
808
|
+
description: 'Opt-in to a payments program',
|
|
809
|
+
inputSchema: {
|
|
810
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('eBay marketplace ID'),
|
|
811
|
+
paymentsProgramType: z.string().describe('Payments program type'),
|
|
812
|
+
},
|
|
813
|
+
title: 'Opt In to Payments Program',
|
|
814
|
+
outputSchema: {
|
|
815
|
+
type: 'object',
|
|
816
|
+
properties: {
|
|
817
|
+
success: { type: 'boolean' },
|
|
818
|
+
data: { type: 'object' }
|
|
819
|
+
}
|
|
820
|
+
},
|
|
821
|
+
annotations: {
|
|
822
|
+
title: 'Opt In to Payments Program',
|
|
823
|
+
idempotentHint: true
|
|
824
|
+
},
|
|
825
|
+
_meta: {
|
|
826
|
+
category: 'account',
|
|
827
|
+
version: '1.0.0'
|
|
828
|
+
}
|
|
829
|
+
},
|
|
830
|
+
{
|
|
831
|
+
name: 'ebay_get_payments_program_status',
|
|
832
|
+
description: 'Get payments program status',
|
|
833
|
+
inputSchema: {
|
|
834
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('eBay marketplace ID'),
|
|
835
|
+
paymentsProgramType: z.string().describe('Payments program type'),
|
|
836
|
+
},
|
|
837
|
+
title: 'Get Payments Program Status',
|
|
838
|
+
outputSchema: {
|
|
839
|
+
type: 'object',
|
|
840
|
+
properties: {
|
|
841
|
+
success: { type: 'boolean' },
|
|
842
|
+
data: { type: 'object' }
|
|
843
|
+
}
|
|
844
|
+
},
|
|
845
|
+
annotations: {
|
|
846
|
+
title: 'Get Payments Program Status',
|
|
847
|
+
readOnlyHint: true
|
|
848
|
+
},
|
|
849
|
+
_meta: {
|
|
850
|
+
category: 'account',
|
|
851
|
+
version: '1.0.0'
|
|
852
|
+
}
|
|
853
|
+
},
|
|
854
|
+
{
|
|
855
|
+
name: 'ebay_get_rate_tables',
|
|
856
|
+
description: 'Get seller rate tables',
|
|
857
|
+
inputSchema: {},
|
|
858
|
+
title: 'Get Rate Tables',
|
|
859
|
+
outputSchema: {
|
|
860
|
+
type: 'object',
|
|
861
|
+
properties: {
|
|
862
|
+
success: { type: 'boolean' },
|
|
863
|
+
data: { type: 'object' }
|
|
864
|
+
}
|
|
865
|
+
},
|
|
866
|
+
annotations: {
|
|
867
|
+
title: 'Get Rate Tables',
|
|
868
|
+
readOnlyHint: true
|
|
869
|
+
},
|
|
870
|
+
_meta: {
|
|
871
|
+
category: 'account',
|
|
872
|
+
version: '1.0.0'
|
|
873
|
+
}
|
|
874
|
+
},
|
|
875
|
+
{
|
|
876
|
+
name: 'ebay_create_or_replace_sales_tax',
|
|
877
|
+
description: 'Create or replace sales tax table for a jurisdiction',
|
|
878
|
+
inputSchema: {
|
|
879
|
+
countryCode: z.string().describe('Two-letter ISO 3166 country code'),
|
|
880
|
+
jurisdictionId: z.string().describe('Tax jurisdiction ID'),
|
|
881
|
+
salesTaxBase: salesTaxBaseSchema.describe('Sales tax details'),
|
|
882
|
+
},
|
|
883
|
+
title: 'Create or Replace Sales Tax',
|
|
884
|
+
outputSchema: {
|
|
885
|
+
type: 'object',
|
|
886
|
+
properties: {
|
|
887
|
+
success: { type: 'boolean' },
|
|
888
|
+
data: { type: 'object' }
|
|
889
|
+
}
|
|
890
|
+
},
|
|
891
|
+
annotations: {
|
|
892
|
+
title: 'Create or Replace Sales Tax',
|
|
893
|
+
idempotentHint: true
|
|
894
|
+
},
|
|
895
|
+
_meta: {
|
|
896
|
+
category: 'account',
|
|
897
|
+
version: '1.0.0'
|
|
898
|
+
}
|
|
899
|
+
},
|
|
900
|
+
{
|
|
901
|
+
name: 'ebay_bulk_create_or_replace_sales_tax',
|
|
902
|
+
description: 'Bulk create or replace sales tax tables',
|
|
903
|
+
inputSchema: {
|
|
904
|
+
requests: bulkSalesTaxRequestSchema.describe('Array of sales tax requests'),
|
|
905
|
+
},
|
|
906
|
+
title: 'Bulk Create or Replace Sales Tax',
|
|
907
|
+
outputSchema: {
|
|
908
|
+
type: 'object',
|
|
909
|
+
properties: {
|
|
910
|
+
success: { type: 'boolean' },
|
|
911
|
+
data: { type: 'object' }
|
|
912
|
+
}
|
|
913
|
+
},
|
|
914
|
+
annotations: {
|
|
915
|
+
title: 'Bulk Create or Replace Sales Tax',
|
|
916
|
+
idempotentHint: true
|
|
917
|
+
},
|
|
918
|
+
_meta: {
|
|
919
|
+
category: 'account',
|
|
920
|
+
version: '1.0.0'
|
|
921
|
+
}
|
|
922
|
+
},
|
|
923
|
+
{
|
|
924
|
+
name: 'ebay_delete_sales_tax',
|
|
925
|
+
description: 'Delete sales tax table for a jurisdiction',
|
|
926
|
+
inputSchema: {
|
|
927
|
+
countryCode: z.string().describe('Two-letter ISO 3166 country code'),
|
|
928
|
+
jurisdictionId: z.string().describe('Tax jurisdiction ID'),
|
|
929
|
+
},
|
|
930
|
+
title: 'Delete Sales Tax',
|
|
931
|
+
outputSchema: {
|
|
932
|
+
type: 'object',
|
|
933
|
+
properties: {
|
|
934
|
+
success: { type: 'boolean' },
|
|
935
|
+
data: { type: 'object' }
|
|
936
|
+
}
|
|
937
|
+
},
|
|
938
|
+
annotations: {
|
|
939
|
+
title: 'Delete Sales Tax',
|
|
940
|
+
destructiveHint: true
|
|
941
|
+
},
|
|
942
|
+
_meta: {
|
|
943
|
+
category: 'account',
|
|
944
|
+
version: '1.0.0'
|
|
945
|
+
}
|
|
946
|
+
},
|
|
947
|
+
{
|
|
948
|
+
name: 'ebay_get_sales_tax',
|
|
949
|
+
description: 'Get sales tax table for a jurisdiction',
|
|
950
|
+
inputSchema: {
|
|
951
|
+
countryCode: z.string().describe('Two-letter ISO 3166 country code'),
|
|
952
|
+
jurisdictionId: z.string().describe('Tax jurisdiction ID'),
|
|
953
|
+
},
|
|
954
|
+
title: 'Get Sales Tax',
|
|
955
|
+
outputSchema: {
|
|
956
|
+
type: 'object',
|
|
957
|
+
properties: {
|
|
958
|
+
success: { type: 'boolean' },
|
|
959
|
+
data: { type: 'object' }
|
|
960
|
+
}
|
|
961
|
+
},
|
|
962
|
+
annotations: {
|
|
963
|
+
title: 'Get Sales Tax',
|
|
964
|
+
readOnlyHint: true
|
|
965
|
+
},
|
|
966
|
+
_meta: {
|
|
967
|
+
category: 'account',
|
|
968
|
+
version: '1.0.0'
|
|
969
|
+
}
|
|
970
|
+
},
|
|
971
|
+
{
|
|
972
|
+
name: 'ebay_get_sales_taxes',
|
|
973
|
+
description: 'Get all sales tax tables',
|
|
974
|
+
inputSchema: {
|
|
975
|
+
countryCode: z.string().optional().describe('Optional country code to filter by'),
|
|
976
|
+
},
|
|
977
|
+
title: 'Get Sales Taxes',
|
|
978
|
+
outputSchema: {
|
|
979
|
+
type: 'object',
|
|
980
|
+
properties: {
|
|
981
|
+
success: { type: 'boolean' },
|
|
982
|
+
data: { type: 'object' }
|
|
983
|
+
}
|
|
984
|
+
},
|
|
985
|
+
annotations: {
|
|
986
|
+
title: 'Get Sales Taxes',
|
|
987
|
+
readOnlyHint: true
|
|
988
|
+
},
|
|
989
|
+
_meta: {
|
|
990
|
+
category: 'account',
|
|
991
|
+
version: '1.0.0'
|
|
992
|
+
}
|
|
993
|
+
},
|
|
994
|
+
{
|
|
995
|
+
name: 'ebay_get_subscription',
|
|
996
|
+
description: 'Get seller subscription information',
|
|
997
|
+
inputSchema: {
|
|
998
|
+
limitType: z.string().optional().describe('Optional limit type filter'),
|
|
999
|
+
},
|
|
1000
|
+
title: 'Get Subscription',
|
|
1001
|
+
outputSchema: {
|
|
1002
|
+
type: 'object',
|
|
1003
|
+
properties: {
|
|
1004
|
+
success: { type: 'boolean' },
|
|
1005
|
+
data: { type: 'object' }
|
|
1006
|
+
}
|
|
1007
|
+
},
|
|
1008
|
+
annotations: {
|
|
1009
|
+
title: 'Get Subscription',
|
|
1010
|
+
readOnlyHint: true
|
|
1011
|
+
},
|
|
1012
|
+
_meta: {
|
|
1013
|
+
category: 'account',
|
|
1014
|
+
version: '1.0.0'
|
|
1015
|
+
}
|
|
1016
|
+
},
|
|
1017
|
+
{
|
|
1018
|
+
name: 'ebay_opt_in_to_program',
|
|
1019
|
+
description: 'Opt-in to a seller program',
|
|
1020
|
+
inputSchema: {
|
|
1021
|
+
request: programRequestSchema.describe('Program opt-in request'),
|
|
1022
|
+
},
|
|
1023
|
+
title: 'Opt In to Program',
|
|
1024
|
+
outputSchema: {
|
|
1025
|
+
type: 'object',
|
|
1026
|
+
properties: {
|
|
1027
|
+
success: { type: 'boolean' },
|
|
1028
|
+
data: { type: 'object' }
|
|
1029
|
+
}
|
|
1030
|
+
},
|
|
1031
|
+
annotations: {
|
|
1032
|
+
title: 'Opt In to Program',
|
|
1033
|
+
idempotentHint: true
|
|
1034
|
+
},
|
|
1035
|
+
_meta: {
|
|
1036
|
+
category: 'account',
|
|
1037
|
+
version: '1.0.0'
|
|
1038
|
+
}
|
|
1039
|
+
},
|
|
1040
|
+
{
|
|
1041
|
+
name: 'ebay_opt_out_of_program',
|
|
1042
|
+
description: 'Opt-out of a seller program',
|
|
1043
|
+
inputSchema: {
|
|
1044
|
+
request: programRequestSchema.describe('Program opt-out request'),
|
|
1045
|
+
},
|
|
1046
|
+
title: 'Opt Out of Program',
|
|
1047
|
+
outputSchema: {
|
|
1048
|
+
type: 'object',
|
|
1049
|
+
properties: {
|
|
1050
|
+
success: { type: 'boolean' },
|
|
1051
|
+
data: { type: 'object' }
|
|
1052
|
+
}
|
|
1053
|
+
},
|
|
1054
|
+
annotations: {
|
|
1055
|
+
title: 'Opt Out of Program',
|
|
1056
|
+
idempotentHint: true
|
|
1057
|
+
},
|
|
1058
|
+
_meta: {
|
|
1059
|
+
category: 'account',
|
|
1060
|
+
version: '1.0.0'
|
|
1061
|
+
}
|
|
1062
|
+
},
|
|
1063
|
+
{
|
|
1064
|
+
name: 'ebay_get_opted_in_programs',
|
|
1065
|
+
description: 'Get seller programs the account is opted into',
|
|
1066
|
+
inputSchema: {},
|
|
1067
|
+
title: 'Get Opted In Programs',
|
|
1068
|
+
outputSchema: {
|
|
1069
|
+
type: 'object',
|
|
1070
|
+
properties: {
|
|
1071
|
+
success: { type: 'boolean' },
|
|
1072
|
+
data: { type: 'object' }
|
|
1073
|
+
}
|
|
1074
|
+
},
|
|
1075
|
+
annotations: {
|
|
1076
|
+
title: 'Get Opted In Programs',
|
|
1077
|
+
readOnlyHint: true
|
|
1078
|
+
},
|
|
1079
|
+
_meta: {
|
|
1080
|
+
category: 'account',
|
|
1081
|
+
version: '1.0.0'
|
|
1082
|
+
}
|
|
1083
|
+
},
|
|
1084
|
+
];
|
|
1085
|
+
export const inventoryTools = [
|
|
1086
|
+
{
|
|
1087
|
+
name: 'ebay_get_inventory_items',
|
|
1088
|
+
description: 'Retrieve all inventory items for the seller.\n\nRequired OAuth Scope: sell.inventory.readonly or sell.inventory\nMinimum Scope: https://api.ebay.com/oauth/api_scope/sell.inventory.readonly',
|
|
1089
|
+
inputSchema: {
|
|
1090
|
+
limit: z.number().optional().describe('Number of items to return (max 100)'),
|
|
1091
|
+
offset: z.number().optional().describe('Number of items to skip'),
|
|
1092
|
+
},
|
|
1093
|
+
title: 'Get Inventory Items',
|
|
1094
|
+
outputSchema: {
|
|
1095
|
+
type: 'object',
|
|
1096
|
+
properties: {
|
|
1097
|
+
success: { type: 'boolean' },
|
|
1098
|
+
data: { type: 'object' }
|
|
1099
|
+
}
|
|
1100
|
+
},
|
|
1101
|
+
annotations: {
|
|
1102
|
+
title: 'Get Inventory Items',
|
|
1103
|
+
readOnlyHint: true
|
|
1104
|
+
},
|
|
1105
|
+
_meta: {
|
|
1106
|
+
category: 'inventory',
|
|
1107
|
+
version: '1.0.0'
|
|
1108
|
+
}
|
|
1109
|
+
},
|
|
1110
|
+
{
|
|
1111
|
+
name: 'ebay_get_inventory_item',
|
|
1112
|
+
description: 'Get a specific inventory item by SKU.\n\nRequired OAuth Scope: sell.inventory.readonly or sell.inventory\nMinimum Scope: https://api.ebay.com/oauth/api_scope/sell.inventory.readonly',
|
|
1113
|
+
inputSchema: {
|
|
1114
|
+
sku: z.string().describe('The seller-defined SKU'),
|
|
1115
|
+
},
|
|
1116
|
+
title: 'Get Inventory Item',
|
|
1117
|
+
outputSchema: {
|
|
1118
|
+
type: 'object',
|
|
1119
|
+
properties: {
|
|
1120
|
+
success: { type: 'boolean' },
|
|
1121
|
+
data: { type: 'object' }
|
|
1122
|
+
}
|
|
1123
|
+
},
|
|
1124
|
+
annotations: {
|
|
1125
|
+
title: 'Get Inventory Item',
|
|
1126
|
+
readOnlyHint: true
|
|
1127
|
+
},
|
|
1128
|
+
_meta: {
|
|
1129
|
+
category: 'inventory',
|
|
1130
|
+
version: '1.0.0'
|
|
1131
|
+
}
|
|
1132
|
+
},
|
|
1133
|
+
{
|
|
1134
|
+
name: 'ebay_create_inventory_item',
|
|
1135
|
+
description: 'Create or replace an inventory item.\n\nRequired OAuth Scope: sell.inventory\nMinimum Scope: https://api.ebay.com/oauth/api_scope/sell.inventory',
|
|
1136
|
+
inputSchema: {
|
|
1137
|
+
sku: z.string().describe('The seller-defined SKU'),
|
|
1138
|
+
inventoryItem: inventoryItemSchema.describe('Inventory item details'),
|
|
1139
|
+
},
|
|
1140
|
+
title: 'Create Inventory Item',
|
|
1141
|
+
outputSchema: {
|
|
1142
|
+
type: 'object',
|
|
1143
|
+
properties: {
|
|
1144
|
+
success: { type: 'boolean' },
|
|
1145
|
+
data: { type: 'object' }
|
|
1146
|
+
}
|
|
1147
|
+
},
|
|
1148
|
+
annotations: {
|
|
1149
|
+
title: 'Create Inventory Item',
|
|
1150
|
+
idempotentHint: true
|
|
1151
|
+
},
|
|
1152
|
+
_meta: {
|
|
1153
|
+
category: 'inventory',
|
|
1154
|
+
version: '1.0.0'
|
|
1155
|
+
}
|
|
1156
|
+
},
|
|
1157
|
+
{
|
|
1158
|
+
name: 'ebay_get_offers',
|
|
1159
|
+
description: 'Get all offers for the seller',
|
|
1160
|
+
inputSchema: {
|
|
1161
|
+
sku: z.string().optional().describe('Filter by SKU'),
|
|
1162
|
+
marketplaceId: z.nativeEnum(MarketplaceId).optional().describe('Filter by marketplace ID'),
|
|
1163
|
+
limit: z.number().optional().describe('Number of offers to return'),
|
|
1164
|
+
},
|
|
1165
|
+
title: 'Get Offers',
|
|
1166
|
+
outputSchema: {
|
|
1167
|
+
type: 'object',
|
|
1168
|
+
properties: {
|
|
1169
|
+
success: { type: 'boolean' },
|
|
1170
|
+
data: { type: 'object' }
|
|
1171
|
+
}
|
|
1172
|
+
},
|
|
1173
|
+
annotations: {
|
|
1174
|
+
title: 'Get Offers',
|
|
1175
|
+
readOnlyHint: true
|
|
1176
|
+
},
|
|
1177
|
+
_meta: {
|
|
1178
|
+
category: 'inventory',
|
|
1179
|
+
version: '1.0.0'
|
|
1180
|
+
}
|
|
1181
|
+
},
|
|
1182
|
+
{
|
|
1183
|
+
name: 'ebay_create_offer',
|
|
1184
|
+
description: 'Create a new offer for an inventory item',
|
|
1185
|
+
inputSchema: {
|
|
1186
|
+
offer: offerSchema.describe('Offer details including SKU, marketplace, pricing, and policies'),
|
|
1187
|
+
},
|
|
1188
|
+
title: 'Create Offer',
|
|
1189
|
+
outputSchema: {
|
|
1190
|
+
type: 'object',
|
|
1191
|
+
properties: {
|
|
1192
|
+
success: { type: 'boolean' },
|
|
1193
|
+
data: { type: 'object' }
|
|
1194
|
+
}
|
|
1195
|
+
},
|
|
1196
|
+
annotations: {
|
|
1197
|
+
title: 'Create Offer',
|
|
1198
|
+
idempotentHint: true
|
|
1199
|
+
},
|
|
1200
|
+
_meta: {
|
|
1201
|
+
category: 'inventory',
|
|
1202
|
+
version: '1.0.0'
|
|
1203
|
+
}
|
|
1204
|
+
},
|
|
1205
|
+
{
|
|
1206
|
+
name: 'ebay_publish_offer',
|
|
1207
|
+
description: 'Publish an offer to create a listing',
|
|
1208
|
+
inputSchema: {
|
|
1209
|
+
offerId: z.string().describe('The offer ID to publish'),
|
|
1210
|
+
},
|
|
1211
|
+
title: 'Publish Offer',
|
|
1212
|
+
outputSchema: {
|
|
1213
|
+
type: 'object',
|
|
1214
|
+
properties: {
|
|
1215
|
+
success: { type: 'boolean' },
|
|
1216
|
+
data: { type: 'object' }
|
|
1217
|
+
}
|
|
1218
|
+
},
|
|
1219
|
+
annotations: {
|
|
1220
|
+
title: 'Publish Offer',
|
|
1221
|
+
idempotentHint: true
|
|
1222
|
+
},
|
|
1223
|
+
_meta: {
|
|
1224
|
+
category: 'inventory',
|
|
1225
|
+
version: '1.0.0'
|
|
1226
|
+
}
|
|
1227
|
+
},
|
|
1228
|
+
{
|
|
1229
|
+
name: 'ebay_bulk_create_or_replace_inventory_item',
|
|
1230
|
+
description: 'Bulk create or replace multiple inventory items',
|
|
1231
|
+
inputSchema: {
|
|
1232
|
+
requests: bulkInventoryItemRequestSchema.describe('Bulk inventory item requests'),
|
|
1233
|
+
},
|
|
1234
|
+
title: 'Bulk Create or Replace Inventory Item',
|
|
1235
|
+
outputSchema: {
|
|
1236
|
+
type: 'object',
|
|
1237
|
+
properties: {
|
|
1238
|
+
success: { type: 'boolean' },
|
|
1239
|
+
data: { type: 'object' }
|
|
1240
|
+
}
|
|
1241
|
+
},
|
|
1242
|
+
annotations: {
|
|
1243
|
+
title: 'Bulk Create or Replace Inventory Item',
|
|
1244
|
+
idempotentHint: true
|
|
1245
|
+
},
|
|
1246
|
+
_meta: {
|
|
1247
|
+
category: 'inventory',
|
|
1248
|
+
version: '1.0.0'
|
|
1249
|
+
}
|
|
1250
|
+
},
|
|
1251
|
+
{
|
|
1252
|
+
name: 'ebay_bulk_get_inventory_item',
|
|
1253
|
+
description: 'Bulk get multiple inventory items',
|
|
1254
|
+
inputSchema: {
|
|
1255
|
+
requests: z
|
|
1256
|
+
.object({
|
|
1257
|
+
requests: z.array(z
|
|
1258
|
+
.object({
|
|
1259
|
+
sku: z.string(),
|
|
1260
|
+
})
|
|
1261
|
+
.passthrough()),
|
|
1262
|
+
})
|
|
1263
|
+
.passthrough()
|
|
1264
|
+
.describe('Bulk inventory item get requests with SKU list'),
|
|
1265
|
+
},
|
|
1266
|
+
title: 'Bulk Get Inventory Item',
|
|
1267
|
+
outputSchema: {
|
|
1268
|
+
type: 'object',
|
|
1269
|
+
properties: {
|
|
1270
|
+
success: { type: 'boolean' },
|
|
1271
|
+
data: { type: 'object' }
|
|
1272
|
+
}
|
|
1273
|
+
},
|
|
1274
|
+
annotations: {
|
|
1275
|
+
title: 'Bulk Get Inventory Item',
|
|
1276
|
+
readOnlyHint: true
|
|
1277
|
+
},
|
|
1278
|
+
_meta: {
|
|
1279
|
+
category: 'inventory',
|
|
1280
|
+
version: '1.0.0'
|
|
1281
|
+
}
|
|
1282
|
+
},
|
|
1283
|
+
{
|
|
1284
|
+
name: 'ebay_bulk_update_price_quantity',
|
|
1285
|
+
description: 'Bulk update price and quantity for multiple offers',
|
|
1286
|
+
inputSchema: {
|
|
1287
|
+
requests: bulkPriceQuantityRequestSchema.describe('Bulk price and quantity update requests'),
|
|
1288
|
+
},
|
|
1289
|
+
title: 'Bulk Update Price Quantity',
|
|
1290
|
+
outputSchema: {
|
|
1291
|
+
type: 'object',
|
|
1292
|
+
properties: {
|
|
1293
|
+
success: { type: 'boolean' },
|
|
1294
|
+
data: { type: 'object' }
|
|
1295
|
+
}
|
|
1296
|
+
},
|
|
1297
|
+
annotations: {
|
|
1298
|
+
title: 'Bulk Update Price Quantity',
|
|
1299
|
+
idempotentHint: true
|
|
1300
|
+
},
|
|
1301
|
+
_meta: {
|
|
1302
|
+
category: 'inventory',
|
|
1303
|
+
version: '1.0.0'
|
|
1304
|
+
}
|
|
1305
|
+
},
|
|
1306
|
+
{
|
|
1307
|
+
name: 'ebay_get_product_compatibility',
|
|
1308
|
+
description: 'Get product compatibility information for an inventory item',
|
|
1309
|
+
inputSchema: {
|
|
1310
|
+
sku: z.string().describe('The seller-defined SKU'),
|
|
1311
|
+
},
|
|
1312
|
+
title: 'Get Product Compatibility',
|
|
1313
|
+
outputSchema: {
|
|
1314
|
+
type: 'object',
|
|
1315
|
+
properties: {
|
|
1316
|
+
success: { type: 'boolean' },
|
|
1317
|
+
data: { type: 'object' }
|
|
1318
|
+
}
|
|
1319
|
+
},
|
|
1320
|
+
annotations: {
|
|
1321
|
+
title: 'Get Product Compatibility',
|
|
1322
|
+
readOnlyHint: true
|
|
1323
|
+
},
|
|
1324
|
+
_meta: {
|
|
1325
|
+
category: 'inventory',
|
|
1326
|
+
version: '1.0.0'
|
|
1327
|
+
}
|
|
1328
|
+
},
|
|
1329
|
+
{
|
|
1330
|
+
name: 'ebay_create_or_replace_product_compatibility',
|
|
1331
|
+
description: 'Create or replace product compatibility for an inventory item',
|
|
1332
|
+
inputSchema: {
|
|
1333
|
+
sku: z.string().describe('The seller-defined SKU'),
|
|
1334
|
+
compatibility: productCompatibilitySchema.describe('Product compatibility details'),
|
|
1335
|
+
},
|
|
1336
|
+
title: 'Create or Replace Product Compatibility',
|
|
1337
|
+
outputSchema: {
|
|
1338
|
+
type: 'object',
|
|
1339
|
+
properties: {
|
|
1340
|
+
success: { type: 'boolean' },
|
|
1341
|
+
data: { type: 'object' }
|
|
1342
|
+
}
|
|
1343
|
+
},
|
|
1344
|
+
annotations: {
|
|
1345
|
+
title: 'Create or Replace Product Compatibility',
|
|
1346
|
+
idempotentHint: true
|
|
1347
|
+
},
|
|
1348
|
+
_meta: {
|
|
1349
|
+
category: 'inventory',
|
|
1350
|
+
version: '1.0.0'
|
|
1351
|
+
}
|
|
1352
|
+
},
|
|
1353
|
+
{
|
|
1354
|
+
name: 'ebay_delete_product_compatibility',
|
|
1355
|
+
description: 'Delete product compatibility for an inventory item',
|
|
1356
|
+
inputSchema: {
|
|
1357
|
+
sku: z.string().describe('The seller-defined SKU'),
|
|
1358
|
+
},
|
|
1359
|
+
title: 'Delete Product Compatibility',
|
|
1360
|
+
outputSchema: {
|
|
1361
|
+
type: 'object',
|
|
1362
|
+
properties: {
|
|
1363
|
+
success: { type: 'boolean' },
|
|
1364
|
+
data: { type: 'object' }
|
|
1365
|
+
}
|
|
1366
|
+
},
|
|
1367
|
+
annotations: {
|
|
1368
|
+
title: 'Delete Product Compatibility',
|
|
1369
|
+
destructiveHint: true
|
|
1370
|
+
},
|
|
1371
|
+
_meta: {
|
|
1372
|
+
category: 'inventory',
|
|
1373
|
+
version: '1.0.0'
|
|
1374
|
+
}
|
|
1375
|
+
},
|
|
1376
|
+
{
|
|
1377
|
+
name: 'ebay_get_inventory_item_group',
|
|
1378
|
+
description: 'Get an inventory item group (variation group)',
|
|
1379
|
+
inputSchema: {
|
|
1380
|
+
inventoryItemGroupKey: z.string().describe('The inventory item group key'),
|
|
1381
|
+
},
|
|
1382
|
+
title: 'Get Inventory Item Group',
|
|
1383
|
+
outputSchema: {
|
|
1384
|
+
type: 'object',
|
|
1385
|
+
properties: {
|
|
1386
|
+
success: { type: 'boolean' },
|
|
1387
|
+
data: { type: 'object' }
|
|
1388
|
+
}
|
|
1389
|
+
},
|
|
1390
|
+
annotations: {
|
|
1391
|
+
title: 'Get Inventory Item Group',
|
|
1392
|
+
readOnlyHint: true
|
|
1393
|
+
},
|
|
1394
|
+
_meta: {
|
|
1395
|
+
category: 'inventory',
|
|
1396
|
+
version: '1.0.0'
|
|
1397
|
+
}
|
|
1398
|
+
},
|
|
1399
|
+
{
|
|
1400
|
+
name: 'ebay_create_or_replace_inventory_item_group',
|
|
1401
|
+
description: 'Create or replace an inventory item group',
|
|
1402
|
+
inputSchema: {
|
|
1403
|
+
inventoryItemGroupKey: z.string().describe('The inventory item group key'),
|
|
1404
|
+
inventoryItemGroup: inventoryItemGroupSchema.describe('Inventory item group details'),
|
|
1405
|
+
},
|
|
1406
|
+
title: 'Create or Replace Inventory Item Group',
|
|
1407
|
+
outputSchema: {
|
|
1408
|
+
type: 'object',
|
|
1409
|
+
properties: {
|
|
1410
|
+
success: { type: 'boolean' },
|
|
1411
|
+
data: { type: 'object' }
|
|
1412
|
+
}
|
|
1413
|
+
},
|
|
1414
|
+
annotations: {
|
|
1415
|
+
title: 'Create or Replace Inventory Item Group',
|
|
1416
|
+
idempotentHint: true
|
|
1417
|
+
},
|
|
1418
|
+
_meta: {
|
|
1419
|
+
category: 'inventory',
|
|
1420
|
+
version: '1.0.0'
|
|
1421
|
+
}
|
|
1422
|
+
},
|
|
1423
|
+
{
|
|
1424
|
+
name: 'ebay_delete_inventory_item_group',
|
|
1425
|
+
description: 'Delete an inventory item group',
|
|
1426
|
+
inputSchema: {
|
|
1427
|
+
inventoryItemGroupKey: z.string().describe('The inventory item group key'),
|
|
1428
|
+
},
|
|
1429
|
+
title: 'Delete Inventory Item Group',
|
|
1430
|
+
outputSchema: {
|
|
1431
|
+
type: 'object',
|
|
1432
|
+
properties: {
|
|
1433
|
+
success: { type: 'boolean' },
|
|
1434
|
+
data: { type: 'object' }
|
|
1435
|
+
}
|
|
1436
|
+
},
|
|
1437
|
+
annotations: {
|
|
1438
|
+
title: 'Delete Inventory Item Group',
|
|
1439
|
+
destructiveHint: true
|
|
1440
|
+
},
|
|
1441
|
+
_meta: {
|
|
1442
|
+
category: 'inventory',
|
|
1443
|
+
version: '1.0.0'
|
|
1444
|
+
}
|
|
1445
|
+
},
|
|
1446
|
+
{
|
|
1447
|
+
name: 'ebay_get_inventory_locations',
|
|
1448
|
+
description: 'Get all inventory locations',
|
|
1449
|
+
inputSchema: {
|
|
1450
|
+
limit: z.number().optional().describe('Number of locations to return'),
|
|
1451
|
+
offset: z.number().optional().describe('Number of locations to skip'),
|
|
1452
|
+
},
|
|
1453
|
+
title: 'Get Inventory Locations',
|
|
1454
|
+
outputSchema: {
|
|
1455
|
+
type: 'object',
|
|
1456
|
+
properties: {
|
|
1457
|
+
success: { type: 'boolean' },
|
|
1458
|
+
data: { type: 'object' }
|
|
1459
|
+
}
|
|
1460
|
+
},
|
|
1461
|
+
annotations: {
|
|
1462
|
+
title: 'Get Inventory Locations',
|
|
1463
|
+
readOnlyHint: true
|
|
1464
|
+
},
|
|
1465
|
+
_meta: {
|
|
1466
|
+
category: 'inventory',
|
|
1467
|
+
version: '1.0.0'
|
|
1468
|
+
}
|
|
1469
|
+
},
|
|
1470
|
+
{
|
|
1471
|
+
name: 'ebay_get_inventory_location',
|
|
1472
|
+
description: 'Get a specific inventory location',
|
|
1473
|
+
inputSchema: {
|
|
1474
|
+
merchantLocationKey: z.string().describe('The merchant location key'),
|
|
1475
|
+
},
|
|
1476
|
+
title: 'Get Inventory Location',
|
|
1477
|
+
outputSchema: {
|
|
1478
|
+
type: 'object',
|
|
1479
|
+
properties: {
|
|
1480
|
+
success: { type: 'boolean' },
|
|
1481
|
+
data: { type: 'object' }
|
|
1482
|
+
}
|
|
1483
|
+
},
|
|
1484
|
+
annotations: {
|
|
1485
|
+
title: 'Get Inventory Location',
|
|
1486
|
+
readOnlyHint: true
|
|
1487
|
+
},
|
|
1488
|
+
_meta: {
|
|
1489
|
+
category: 'inventory',
|
|
1490
|
+
version: '1.0.0'
|
|
1491
|
+
}
|
|
1492
|
+
},
|
|
1493
|
+
{
|
|
1494
|
+
name: 'ebay_create_or_replace_inventory_location',
|
|
1495
|
+
description: 'Create or replace an inventory location',
|
|
1496
|
+
inputSchema: {
|
|
1497
|
+
merchantLocationKey: z.string().describe('The merchant location key'),
|
|
1498
|
+
location: locationSchema.describe('Location details'),
|
|
1499
|
+
},
|
|
1500
|
+
title: 'Create Or Replace Inventory Location',
|
|
1501
|
+
outputSchema: {
|
|
1502
|
+
type: 'object',
|
|
1503
|
+
properties: {
|
|
1504
|
+
success: { type: 'boolean' },
|
|
1505
|
+
data: { type: 'object' }
|
|
1506
|
+
}
|
|
1507
|
+
},
|
|
1508
|
+
annotations: {
|
|
1509
|
+
title: 'Create Or Replace Inventory Location',
|
|
1510
|
+
idempotentHint: true
|
|
1511
|
+
},
|
|
1512
|
+
_meta: {
|
|
1513
|
+
category: 'inventory',
|
|
1514
|
+
version: '1.0.0'
|
|
1515
|
+
}
|
|
1516
|
+
},
|
|
1517
|
+
{
|
|
1518
|
+
name: 'ebay_delete_inventory_location',
|
|
1519
|
+
description: 'Delete an inventory location',
|
|
1520
|
+
inputSchema: {
|
|
1521
|
+
merchantLocationKey: z.string().describe('The merchant location key'),
|
|
1522
|
+
},
|
|
1523
|
+
title: 'Delete Inventory Location',
|
|
1524
|
+
outputSchema: {
|
|
1525
|
+
type: 'object',
|
|
1526
|
+
properties: {
|
|
1527
|
+
success: { type: 'boolean' },
|
|
1528
|
+
data: { type: 'object' }
|
|
1529
|
+
}
|
|
1530
|
+
},
|
|
1531
|
+
annotations: {
|
|
1532
|
+
title: 'Delete Inventory Location',
|
|
1533
|
+
destructiveHint: true
|
|
1534
|
+
},
|
|
1535
|
+
_meta: {
|
|
1536
|
+
category: 'inventory',
|
|
1537
|
+
version: '1.0.0'
|
|
1538
|
+
}
|
|
1539
|
+
},
|
|
1540
|
+
{
|
|
1541
|
+
name: 'ebay_disable_inventory_location',
|
|
1542
|
+
description: 'Disable an inventory location',
|
|
1543
|
+
inputSchema: {
|
|
1544
|
+
merchantLocationKey: z.string().describe('The merchant location key'),
|
|
1545
|
+
},
|
|
1546
|
+
title: 'Disable Inventory Location',
|
|
1547
|
+
outputSchema: {
|
|
1548
|
+
type: 'object',
|
|
1549
|
+
properties: {
|
|
1550
|
+
success: { type: 'boolean' },
|
|
1551
|
+
data: { type: 'object' }
|
|
1552
|
+
}
|
|
1553
|
+
},
|
|
1554
|
+
annotations: {
|
|
1555
|
+
title: 'Disable Inventory Location',
|
|
1556
|
+
idempotentHint: true
|
|
1557
|
+
},
|
|
1558
|
+
_meta: {
|
|
1559
|
+
category: 'inventory',
|
|
1560
|
+
version: '1.0.0'
|
|
1561
|
+
}
|
|
1562
|
+
},
|
|
1563
|
+
{
|
|
1564
|
+
name: 'ebay_enable_inventory_location',
|
|
1565
|
+
description: 'Enable an inventory location',
|
|
1566
|
+
inputSchema: {
|
|
1567
|
+
merchantLocationKey: z.string().describe('The merchant location key'),
|
|
1568
|
+
},
|
|
1569
|
+
title: 'Enable Inventory Location',
|
|
1570
|
+
outputSchema: {
|
|
1571
|
+
type: 'object',
|
|
1572
|
+
properties: {
|
|
1573
|
+
success: { type: 'boolean' },
|
|
1574
|
+
data: { type: 'object' }
|
|
1575
|
+
}
|
|
1576
|
+
},
|
|
1577
|
+
annotations: {
|
|
1578
|
+
title: 'Enable Inventory Location',
|
|
1579
|
+
idempotentHint: true
|
|
1580
|
+
},
|
|
1581
|
+
_meta: {
|
|
1582
|
+
category: 'inventory',
|
|
1583
|
+
version: '1.0.0'
|
|
1584
|
+
}
|
|
1585
|
+
},
|
|
1586
|
+
{
|
|
1587
|
+
name: 'ebay_update_location_details',
|
|
1588
|
+
description: 'Update location details for an inventory location',
|
|
1589
|
+
inputSchema: {
|
|
1590
|
+
merchantLocationKey: z.string().describe('The merchant location key'),
|
|
1591
|
+
locationDetails: locationSchema.describe('Location detail updates'),
|
|
1592
|
+
},
|
|
1593
|
+
title: 'Update Location Details',
|
|
1594
|
+
outputSchema: {
|
|
1595
|
+
type: 'object',
|
|
1596
|
+
properties: {
|
|
1597
|
+
success: { type: 'boolean' },
|
|
1598
|
+
data: { type: 'object' }
|
|
1599
|
+
}
|
|
1600
|
+
},
|
|
1601
|
+
annotations: {
|
|
1602
|
+
title: 'Update Location Details',
|
|
1603
|
+
idempotentHint: true
|
|
1604
|
+
},
|
|
1605
|
+
_meta: {
|
|
1606
|
+
category: 'inventory',
|
|
1607
|
+
version: '1.0.0'
|
|
1608
|
+
}
|
|
1609
|
+
},
|
|
1610
|
+
{
|
|
1611
|
+
name: 'ebay_get_offer',
|
|
1612
|
+
description: 'Get a specific offer by ID',
|
|
1613
|
+
inputSchema: {
|
|
1614
|
+
offerId: z.string().describe('The offer ID'),
|
|
1615
|
+
},
|
|
1616
|
+
title: 'Get Offer',
|
|
1617
|
+
outputSchema: {
|
|
1618
|
+
type: 'object',
|
|
1619
|
+
properties: {
|
|
1620
|
+
success: { type: 'boolean' },
|
|
1621
|
+
data: { type: 'object' }
|
|
1622
|
+
}
|
|
1623
|
+
},
|
|
1624
|
+
annotations: {
|
|
1625
|
+
title: 'Get Offer',
|
|
1626
|
+
readOnlyHint: true
|
|
1627
|
+
},
|
|
1628
|
+
_meta: {
|
|
1629
|
+
category: 'inventory',
|
|
1630
|
+
version: '1.0.0'
|
|
1631
|
+
}
|
|
1632
|
+
},
|
|
1633
|
+
{
|
|
1634
|
+
name: 'ebay_update_offer',
|
|
1635
|
+
description: 'Update an existing offer',
|
|
1636
|
+
inputSchema: {
|
|
1637
|
+
offerId: z.string().describe('The offer ID'),
|
|
1638
|
+
offer: offerSchema.describe('Updated offer details'),
|
|
1639
|
+
},
|
|
1640
|
+
title: 'Update Offer',
|
|
1641
|
+
outputSchema: {
|
|
1642
|
+
type: 'object',
|
|
1643
|
+
properties: {
|
|
1644
|
+
success: { type: 'boolean' },
|
|
1645
|
+
data: { type: 'object' }
|
|
1646
|
+
}
|
|
1647
|
+
},
|
|
1648
|
+
annotations: {
|
|
1649
|
+
title: 'Update Offer',
|
|
1650
|
+
idempotentHint: true
|
|
1651
|
+
},
|
|
1652
|
+
_meta: {
|
|
1653
|
+
category: 'inventory',
|
|
1654
|
+
version: '1.0.0'
|
|
1655
|
+
}
|
|
1656
|
+
},
|
|
1657
|
+
{
|
|
1658
|
+
name: 'ebay_delete_offer',
|
|
1659
|
+
description: 'Delete an offer',
|
|
1660
|
+
inputSchema: {
|
|
1661
|
+
offerId: z.string().describe('The offer ID to delete'),
|
|
1662
|
+
},
|
|
1663
|
+
title: 'Delete Offer',
|
|
1664
|
+
outputSchema: {
|
|
1665
|
+
type: 'object',
|
|
1666
|
+
properties: {
|
|
1667
|
+
success: { type: 'boolean' },
|
|
1668
|
+
data: { type: 'object' }
|
|
1669
|
+
}
|
|
1670
|
+
},
|
|
1671
|
+
annotations: {
|
|
1672
|
+
title: 'Delete Offer',
|
|
1673
|
+
destructiveHint: true
|
|
1674
|
+
},
|
|
1675
|
+
_meta: {
|
|
1676
|
+
category: 'inventory',
|
|
1677
|
+
version: '1.0.0'
|
|
1678
|
+
}
|
|
1679
|
+
},
|
|
1680
|
+
{
|
|
1681
|
+
name: 'ebay_withdraw_offer',
|
|
1682
|
+
description: 'Withdraw a published offer',
|
|
1683
|
+
inputSchema: {
|
|
1684
|
+
offerId: z.string().describe('The offer ID to withdraw'),
|
|
1685
|
+
},
|
|
1686
|
+
title: 'Withdraw Offer',
|
|
1687
|
+
outputSchema: {
|
|
1688
|
+
type: 'object',
|
|
1689
|
+
properties: {
|
|
1690
|
+
success: { type: 'boolean' },
|
|
1691
|
+
data: { type: 'object' }
|
|
1692
|
+
}
|
|
1693
|
+
},
|
|
1694
|
+
annotations: {
|
|
1695
|
+
title: 'Withdraw Offer',
|
|
1696
|
+
destructiveHint: true
|
|
1697
|
+
},
|
|
1698
|
+
_meta: {
|
|
1699
|
+
category: 'inventory',
|
|
1700
|
+
version: '1.0.0'
|
|
1701
|
+
}
|
|
1702
|
+
},
|
|
1703
|
+
{
|
|
1704
|
+
name: 'ebay_bulk_create_offer',
|
|
1705
|
+
description: 'Bulk create multiple offers',
|
|
1706
|
+
inputSchema: {
|
|
1707
|
+
requests: bulkOfferRequestSchema.describe('Bulk offer creation requests'),
|
|
1708
|
+
},
|
|
1709
|
+
title: 'Bulk Create Offer',
|
|
1710
|
+
outputSchema: {
|
|
1711
|
+
type: 'object',
|
|
1712
|
+
properties: {
|
|
1713
|
+
success: { type: 'boolean' },
|
|
1714
|
+
data: { type: 'object' }
|
|
1715
|
+
}
|
|
1716
|
+
},
|
|
1717
|
+
annotations: {
|
|
1718
|
+
title: 'Bulk Create Offer',
|
|
1719
|
+
idempotentHint: true
|
|
1720
|
+
},
|
|
1721
|
+
_meta: {
|
|
1722
|
+
category: 'inventory',
|
|
1723
|
+
version: '1.0.0'
|
|
1724
|
+
}
|
|
1725
|
+
},
|
|
1726
|
+
{
|
|
1727
|
+
name: 'ebay_bulk_publish_offer',
|
|
1728
|
+
description: 'Bulk publish multiple offers',
|
|
1729
|
+
inputSchema: {
|
|
1730
|
+
requests: bulkPublishRequestSchema.describe('Bulk offer publish requests'),
|
|
1731
|
+
},
|
|
1732
|
+
title: 'Bulk Publish Offer',
|
|
1733
|
+
outputSchema: {
|
|
1734
|
+
type: 'object',
|
|
1735
|
+
properties: {
|
|
1736
|
+
success: { type: 'boolean' },
|
|
1737
|
+
data: { type: 'object' }
|
|
1738
|
+
}
|
|
1739
|
+
},
|
|
1740
|
+
annotations: {
|
|
1741
|
+
title: 'Bulk Publish Offer',
|
|
1742
|
+
idempotentHint: true
|
|
1743
|
+
},
|
|
1744
|
+
_meta: {
|
|
1745
|
+
category: 'inventory',
|
|
1746
|
+
version: '1.0.0'
|
|
1747
|
+
}
|
|
1748
|
+
},
|
|
1749
|
+
{
|
|
1750
|
+
name: 'ebay_get_listing_fees',
|
|
1751
|
+
description: 'Get listing fees for offers before publishing',
|
|
1752
|
+
inputSchema: {
|
|
1753
|
+
offers: listingFeesRequestSchema.describe('Offers to calculate listing fees for'),
|
|
1754
|
+
},
|
|
1755
|
+
title: 'Get Listing Fees',
|
|
1756
|
+
outputSchema: {
|
|
1757
|
+
type: 'object',
|
|
1758
|
+
properties: {
|
|
1759
|
+
success: { type: 'boolean' },
|
|
1760
|
+
data: { type: 'object' }
|
|
1761
|
+
}
|
|
1762
|
+
},
|
|
1763
|
+
annotations: {
|
|
1764
|
+
title: 'Get Listing Fees',
|
|
1765
|
+
readOnlyHint: true
|
|
1766
|
+
},
|
|
1767
|
+
_meta: {
|
|
1768
|
+
category: 'inventory',
|
|
1769
|
+
version: '1.0.0'
|
|
1770
|
+
}
|
|
1771
|
+
},
|
|
1772
|
+
{
|
|
1773
|
+
name: 'ebay_bulk_migrate_listing',
|
|
1774
|
+
description: 'Bulk migrate listings to the inventory model',
|
|
1775
|
+
inputSchema: {
|
|
1776
|
+
requests: bulkMigrateRequestSchema.describe('Bulk listing migration requests'),
|
|
1777
|
+
},
|
|
1778
|
+
title: 'Bulk Migrate Listing',
|
|
1779
|
+
outputSchema: {
|
|
1780
|
+
type: 'object',
|
|
1781
|
+
properties: {
|
|
1782
|
+
success: { type: 'boolean' },
|
|
1783
|
+
data: { type: 'object' }
|
|
1784
|
+
}
|
|
1785
|
+
},
|
|
1786
|
+
annotations: {
|
|
1787
|
+
title: 'Bulk Migrate Listing',
|
|
1788
|
+
idempotentHint: true
|
|
1789
|
+
},
|
|
1790
|
+
_meta: {
|
|
1791
|
+
category: 'inventory',
|
|
1792
|
+
version: '1.0.0'
|
|
1793
|
+
}
|
|
1794
|
+
},
|
|
1795
|
+
];
|
|
1796
|
+
export const fulfillmentTools = [
|
|
1797
|
+
{
|
|
1798
|
+
name: 'ebay_get_orders',
|
|
1799
|
+
description: 'Retrieve orders for the seller.\n\nRequired OAuth Scope: sell.fulfillment.readonly or sell.fulfillment\nMinimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment.readonly',
|
|
1800
|
+
inputSchema: {
|
|
1801
|
+
filter: z
|
|
1802
|
+
.string()
|
|
1803
|
+
.optional()
|
|
1804
|
+
.describe('Filter criteria (e.g., orderfulfillmentstatus:{NOT_STARTED})'),
|
|
1805
|
+
limit: z.number().optional().describe('Number of orders to return'),
|
|
1806
|
+
offset: z.number().optional().describe('Number of orders to skip'),
|
|
1807
|
+
},
|
|
1808
|
+
title: 'Get Orders',
|
|
1809
|
+
outputSchema: {
|
|
1810
|
+
type: 'object',
|
|
1811
|
+
properties: {
|
|
1812
|
+
success: { type: 'boolean' },
|
|
1813
|
+
data: { type: 'object' }
|
|
1814
|
+
}
|
|
1815
|
+
},
|
|
1816
|
+
annotations: {
|
|
1817
|
+
title: 'Get Orders',
|
|
1818
|
+
readOnlyHint: true
|
|
1819
|
+
},
|
|
1820
|
+
_meta: {
|
|
1821
|
+
category: 'fulfillment',
|
|
1822
|
+
version: '1.0.0'
|
|
1823
|
+
}
|
|
1824
|
+
},
|
|
1825
|
+
{
|
|
1826
|
+
name: 'ebay_get_order',
|
|
1827
|
+
description: 'Get details of a specific order.\n\nRequired OAuth Scope: sell.fulfillment.readonly or sell.fulfillment\nMinimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment.readonly',
|
|
1828
|
+
inputSchema: {
|
|
1829
|
+
orderId: z.string().describe('The unique order ID'),
|
|
1830
|
+
},
|
|
1831
|
+
title: 'Get Order',
|
|
1832
|
+
outputSchema: {
|
|
1833
|
+
type: 'object',
|
|
1834
|
+
properties: {
|
|
1835
|
+
success: { type: 'boolean' },
|
|
1836
|
+
data: { type: 'object' }
|
|
1837
|
+
}
|
|
1838
|
+
},
|
|
1839
|
+
annotations: {
|
|
1840
|
+
title: 'Get Order',
|
|
1841
|
+
readOnlyHint: true
|
|
1842
|
+
},
|
|
1843
|
+
_meta: {
|
|
1844
|
+
category: 'fulfillment',
|
|
1845
|
+
version: '1.0.0'
|
|
1846
|
+
}
|
|
1847
|
+
},
|
|
1848
|
+
{
|
|
1849
|
+
name: 'ebay_create_shipping_fulfillment',
|
|
1850
|
+
description: 'Create a shipping fulfillment for an order.\n\nRequired OAuth Scope: sell.fulfillment\nMinimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment',
|
|
1851
|
+
inputSchema: {
|
|
1852
|
+
orderId: z.string().describe('The order ID'),
|
|
1853
|
+
fulfillment: shippingFulfillmentSchema.describe('Shipping fulfillment details including tracking number'),
|
|
1854
|
+
},
|
|
1855
|
+
title: 'Create Shipping Fulfillment',
|
|
1856
|
+
outputSchema: {
|
|
1857
|
+
type: 'object',
|
|
1858
|
+
properties: {
|
|
1859
|
+
success: { type: 'boolean' },
|
|
1860
|
+
data: { type: 'object' }
|
|
1861
|
+
}
|
|
1862
|
+
},
|
|
1863
|
+
annotations: {
|
|
1864
|
+
title: 'Create Shipping Fulfillment',
|
|
1865
|
+
idempotentHint: true
|
|
1866
|
+
},
|
|
1867
|
+
_meta: {
|
|
1868
|
+
category: 'fulfillment',
|
|
1869
|
+
version: '1.0.0'
|
|
1870
|
+
}
|
|
1871
|
+
},
|
|
1872
|
+
{
|
|
1873
|
+
name: 'ebay_issue_refund',
|
|
1874
|
+
description: 'Issue a full or partial refund for an eBay order. Use this to refund buyers for orders, including specifying the refund amount and reason.\n\nRequired OAuth Scope: sell.fulfillment\nMinimum Scope: https://api.ebay.com/oauth/api_scope/sell.fulfillment',
|
|
1875
|
+
inputSchema: {
|
|
1876
|
+
orderId: z.string().describe('The unique eBay order ID to refund'),
|
|
1877
|
+
refundData: z
|
|
1878
|
+
.object({
|
|
1879
|
+
reasonForRefund: z
|
|
1880
|
+
.string()
|
|
1881
|
+
.describe('REQUIRED. Reason code: BUYER_CANCEL, OUT_OF_STOCK, FOUND_CHEAPER_PRICE, INCORRECT_PRICE, ITEM_DAMAGED, ITEM_DEFECTIVE, LOST_IN_TRANSIT, MUTUALLY_AGREED, SELLER_CANCEL'),
|
|
1882
|
+
comment: z
|
|
1883
|
+
.string()
|
|
1884
|
+
.optional()
|
|
1885
|
+
.describe('Optional comment to buyer about the refund (max 100 characters)'),
|
|
1886
|
+
refundItems: z
|
|
1887
|
+
.array(z.object({
|
|
1888
|
+
lineItemId: z
|
|
1889
|
+
.string()
|
|
1890
|
+
.describe('The unique identifier of the order line item to refund'),
|
|
1891
|
+
refundAmount: z
|
|
1892
|
+
.object({
|
|
1893
|
+
value: z.string().describe('The monetary amount (e.g., "25.99")'),
|
|
1894
|
+
currency: z
|
|
1895
|
+
.string()
|
|
1896
|
+
.describe('Three-letter ISO 4217 currency code (e.g., "USD")'),
|
|
1897
|
+
})
|
|
1898
|
+
.optional()
|
|
1899
|
+
.describe('The amount to refund for this line item'),
|
|
1900
|
+
legacyReference: z
|
|
1901
|
+
.object({
|
|
1902
|
+
legacyItemId: z.string().optional(),
|
|
1903
|
+
legacyTransactionId: z.string().optional(),
|
|
1904
|
+
})
|
|
1905
|
+
.optional()
|
|
1906
|
+
.describe('Optional legacy item ID/transaction ID pair for identifying the line item'),
|
|
1907
|
+
}))
|
|
1908
|
+
.optional()
|
|
1909
|
+
.describe('Array of individual line items to refund. Use this for partial refunds of specific items. Each item requires lineItemId and refundAmount.'),
|
|
1910
|
+
orderLevelRefundAmount: z
|
|
1911
|
+
.object({
|
|
1912
|
+
value: z.string().describe('The monetary amount (e.g., "99.99")'),
|
|
1913
|
+
currency: z.string().describe('Three-letter ISO 4217 currency code (e.g., "USD")'),
|
|
1914
|
+
})
|
|
1915
|
+
.optional()
|
|
1916
|
+
.describe('Use this to refund the entire order amount. Alternative to refundItems. Include value and currency.'),
|
|
1917
|
+
})
|
|
1918
|
+
.describe('Refund details including amount, reason, and optional comment. Must include reasonForRefund (required), and either refundItems (for line item refunds) OR orderLevelRefundAmount (for full order refunds).'),
|
|
1919
|
+
},
|
|
1920
|
+
title: 'Issue Refund',
|
|
1921
|
+
outputSchema: {
|
|
1922
|
+
type: 'object',
|
|
1923
|
+
properties: {
|
|
1924
|
+
success: { type: 'boolean' },
|
|
1925
|
+
data: { type: 'object' }
|
|
1926
|
+
}
|
|
1927
|
+
},
|
|
1928
|
+
annotations: {
|
|
1929
|
+
title: 'Issue Refund',
|
|
1930
|
+
idempotentHint: true
|
|
1931
|
+
},
|
|
1932
|
+
_meta: {
|
|
1933
|
+
category: 'fulfillment',
|
|
1934
|
+
version: '1.0.0'
|
|
1935
|
+
}
|
|
1936
|
+
},
|
|
1937
|
+
];
|
|
1938
|
+
export const marketingTools = [
|
|
1939
|
+
{
|
|
1940
|
+
name: 'ebay_get_campaigns',
|
|
1941
|
+
description: 'Get marketing campaigns for the seller',
|
|
1942
|
+
inputSchema: {
|
|
1943
|
+
campaignStatus: z
|
|
1944
|
+
.string()
|
|
1945
|
+
.optional()
|
|
1946
|
+
.describe('Filter by campaign status (RUNNING, PAUSED, ENDED)'),
|
|
1947
|
+
marketplaceId: z.nativeEnum(MarketplaceId).optional().describe('Filter by marketplace ID'),
|
|
1948
|
+
limit: z.number().optional().describe('Number of campaigns to return'),
|
|
1949
|
+
},
|
|
1950
|
+
title: 'Get Campaigns',
|
|
1951
|
+
outputSchema: {
|
|
1952
|
+
type: 'object',
|
|
1953
|
+
properties: {
|
|
1954
|
+
success: { type: 'boolean' },
|
|
1955
|
+
data: { type: 'object' }
|
|
1956
|
+
}
|
|
1957
|
+
},
|
|
1958
|
+
annotations: {
|
|
1959
|
+
title: 'Get Campaigns',
|
|
1960
|
+
readOnlyHint: true
|
|
1961
|
+
},
|
|
1962
|
+
_meta: {
|
|
1963
|
+
category: 'marketing',
|
|
1964
|
+
version: '1.0.0'
|
|
1965
|
+
}
|
|
1966
|
+
},
|
|
1967
|
+
{
|
|
1968
|
+
name: 'ebay_get_campaign',
|
|
1969
|
+
description: 'Get details of a specific marketing campaign by ID',
|
|
1970
|
+
inputSchema: {
|
|
1971
|
+
campaignId: z.string().describe('The unique campaign ID'),
|
|
1972
|
+
},
|
|
1973
|
+
title: 'Get Campaign',
|
|
1974
|
+
outputSchema: {
|
|
1975
|
+
type: 'object',
|
|
1976
|
+
properties: {
|
|
1977
|
+
success: { type: 'boolean' },
|
|
1978
|
+
data: { type: 'object' }
|
|
1979
|
+
}
|
|
1980
|
+
},
|
|
1981
|
+
annotations: {
|
|
1982
|
+
title: 'Get Campaign',
|
|
1983
|
+
readOnlyHint: true
|
|
1984
|
+
},
|
|
1985
|
+
_meta: {
|
|
1986
|
+
category: 'marketing',
|
|
1987
|
+
version: '1.0.0'
|
|
1988
|
+
}
|
|
1989
|
+
},
|
|
1990
|
+
{
|
|
1991
|
+
name: 'ebay_pause_campaign',
|
|
1992
|
+
description: 'Pause a running marketing campaign. Use this to temporarily stop a campaign without ending it.',
|
|
1993
|
+
inputSchema: {
|
|
1994
|
+
campaignId: z.string().describe('The unique campaign ID to pause'),
|
|
1995
|
+
},
|
|
1996
|
+
title: 'Pause Campaign',
|
|
1997
|
+
outputSchema: {
|
|
1998
|
+
type: 'object',
|
|
1999
|
+
properties: {
|
|
2000
|
+
success: { type: 'boolean' },
|
|
2001
|
+
data: { type: 'object' }
|
|
2002
|
+
}
|
|
2003
|
+
},
|
|
2004
|
+
annotations: {
|
|
2005
|
+
title: 'Pause Campaign',
|
|
2006
|
+
idempotentHint: true
|
|
2007
|
+
},
|
|
2008
|
+
_meta: {
|
|
2009
|
+
category: 'marketing',
|
|
2010
|
+
version: '1.0.0'
|
|
2011
|
+
}
|
|
2012
|
+
},
|
|
2013
|
+
{
|
|
2014
|
+
name: 'ebay_resume_campaign',
|
|
2015
|
+
description: 'Resume a paused marketing campaign. Use this to restart a campaign that was previously paused.',
|
|
2016
|
+
inputSchema: {
|
|
2017
|
+
campaignId: z.string().describe('The unique campaign ID to resume'),
|
|
2018
|
+
},
|
|
2019
|
+
title: 'Resume Campaign',
|
|
2020
|
+
outputSchema: {
|
|
2021
|
+
type: 'object',
|
|
2022
|
+
properties: {
|
|
2023
|
+
success: { type: 'boolean' },
|
|
2024
|
+
data: { type: 'object' }
|
|
2025
|
+
}
|
|
2026
|
+
},
|
|
2027
|
+
annotations: {
|
|
2028
|
+
title: 'Resume Campaign',
|
|
2029
|
+
idempotentHint: true
|
|
2030
|
+
},
|
|
2031
|
+
_meta: {
|
|
2032
|
+
category: 'marketing',
|
|
2033
|
+
version: '1.0.0'
|
|
2034
|
+
}
|
|
2035
|
+
},
|
|
2036
|
+
{
|
|
2037
|
+
name: 'ebay_end_campaign',
|
|
2038
|
+
description: 'Permanently end a marketing campaign. Note: Ended campaigns cannot be restarted.',
|
|
2039
|
+
inputSchema: {
|
|
2040
|
+
campaignId: z.string().describe('The unique campaign ID to end'),
|
|
2041
|
+
},
|
|
2042
|
+
title: 'End Campaign',
|
|
2043
|
+
outputSchema: {
|
|
2044
|
+
type: 'object',
|
|
2045
|
+
properties: {
|
|
2046
|
+
success: { type: 'boolean' },
|
|
2047
|
+
data: { type: 'object' }
|
|
2048
|
+
}
|
|
2049
|
+
},
|
|
2050
|
+
annotations: {
|
|
2051
|
+
title: 'End Campaign',
|
|
2052
|
+
idempotentHint: true
|
|
2053
|
+
},
|
|
2054
|
+
_meta: {
|
|
2055
|
+
category: 'marketing',
|
|
2056
|
+
version: '1.0.0'
|
|
2057
|
+
}
|
|
2058
|
+
},
|
|
2059
|
+
{
|
|
2060
|
+
name: 'ebay_update_campaign_identification',
|
|
2061
|
+
description: "Update a campaign's name or other identification details. Note: eBay does not support directly updating campaign budget or duration - you must clone the campaign with new settings.",
|
|
2062
|
+
inputSchema: {
|
|
2063
|
+
campaignId: z.string().describe('The unique campaign ID'),
|
|
2064
|
+
updateData: z
|
|
2065
|
+
.object({
|
|
2066
|
+
campaignName: z.string().optional().describe('New campaign name'),
|
|
2067
|
+
})
|
|
2068
|
+
.describe('Campaign identification data to update (e.g., campaign name)'),
|
|
2069
|
+
},
|
|
2070
|
+
title: 'Update Campaign Identification',
|
|
2071
|
+
outputSchema: {
|
|
2072
|
+
type: 'object',
|
|
2073
|
+
properties: {
|
|
2074
|
+
success: { type: 'boolean' },
|
|
2075
|
+
data: { type: 'object' }
|
|
2076
|
+
}
|
|
2077
|
+
},
|
|
2078
|
+
annotations: {
|
|
2079
|
+
title: 'Update Campaign Identification',
|
|
2080
|
+
idempotentHint: true
|
|
2081
|
+
},
|
|
2082
|
+
_meta: {
|
|
2083
|
+
category: 'marketing',
|
|
2084
|
+
version: '1.0.0'
|
|
2085
|
+
}
|
|
2086
|
+
},
|
|
2087
|
+
{
|
|
2088
|
+
name: 'ebay_clone_campaign',
|
|
2089
|
+
description: 'Clone an existing campaign with new settings. Use this to create a campaign with modified budget or duration, as eBay does not support direct budget/duration updates.',
|
|
2090
|
+
inputSchema: {
|
|
2091
|
+
campaignId: z.string().describe('The campaign ID to clone'),
|
|
2092
|
+
cloneData: z
|
|
2093
|
+
.object({
|
|
2094
|
+
campaignName: z.string().optional().describe('Name for the new cloned campaign'),
|
|
2095
|
+
fundingStrategy: z
|
|
2096
|
+
.object({
|
|
2097
|
+
fundingModel: z
|
|
2098
|
+
.string()
|
|
2099
|
+
.optional()
|
|
2100
|
+
.describe('The funding model for the campaign. Valid values: "COST_PER_SALE" (CPS) or "COST_PER_CLICK" (CPC)'),
|
|
2101
|
+
bidPercentage: z
|
|
2102
|
+
.string()
|
|
2103
|
+
.optional()
|
|
2104
|
+
.describe('The bid percentage for CPS campaigns (e.g., "10.5" for 10.5%). Required for COST_PER_SALE funding model.'),
|
|
2105
|
+
})
|
|
2106
|
+
.optional()
|
|
2107
|
+
.describe('Budget settings for the campaign. Includes fundingModel (COST_PER_SALE or COST_PER_CLICK) and bidPercentage.'),
|
|
2108
|
+
startDate: z
|
|
2109
|
+
.string()
|
|
2110
|
+
.optional()
|
|
2111
|
+
.describe('Campaign start date in UTC format (yyyy-MM-ddThh:mm:ssZ, e.g., "2025-01-15T00:00:00Z")'),
|
|
2112
|
+
endDate: z
|
|
2113
|
+
.string()
|
|
2114
|
+
.optional()
|
|
2115
|
+
.describe('Campaign end date in UTC format (yyyy-MM-ddThh:mm:ssZ, e.g., "2025-12-31T23:59:59Z")'),
|
|
2116
|
+
})
|
|
2117
|
+
.describe('New campaign settings including name, budget, start/end dates'),
|
|
2118
|
+
},
|
|
2119
|
+
title: 'Clone Campaign',
|
|
2120
|
+
outputSchema: {
|
|
2121
|
+
type: 'object',
|
|
2122
|
+
properties: {
|
|
2123
|
+
success: { type: 'boolean' },
|
|
2124
|
+
data: { type: 'object' }
|
|
2125
|
+
}
|
|
2126
|
+
},
|
|
2127
|
+
annotations: {
|
|
2128
|
+
title: 'Clone Campaign',
|
|
2129
|
+
idempotentHint: true
|
|
2130
|
+
},
|
|
2131
|
+
_meta: {
|
|
2132
|
+
category: 'marketing',
|
|
2133
|
+
version: '1.0.0'
|
|
2134
|
+
}
|
|
2135
|
+
},
|
|
2136
|
+
{
|
|
2137
|
+
name: 'ebay_get_promotions',
|
|
2138
|
+
description: 'Get promotions for the seller',
|
|
2139
|
+
inputSchema: {
|
|
2140
|
+
marketplaceId: z.nativeEnum(MarketplaceId).optional().describe('Filter by marketplace ID'),
|
|
2141
|
+
limit: z.number().optional().describe('Number of promotions to return'),
|
|
2142
|
+
},
|
|
2143
|
+
title: 'Get Promotions',
|
|
2144
|
+
outputSchema: {
|
|
2145
|
+
type: 'object',
|
|
2146
|
+
properties: {
|
|
2147
|
+
success: { type: 'boolean' },
|
|
2148
|
+
data: { type: 'object' }
|
|
2149
|
+
}
|
|
2150
|
+
},
|
|
2151
|
+
annotations: {
|
|
2152
|
+
title: 'Get Promotions',
|
|
2153
|
+
readOnlyHint: true
|
|
2154
|
+
},
|
|
2155
|
+
_meta: {
|
|
2156
|
+
category: 'marketing',
|
|
2157
|
+
version: '1.0.0'
|
|
2158
|
+
}
|
|
2159
|
+
},
|
|
2160
|
+
{
|
|
2161
|
+
name: 'ebay_find_listing_recommendations',
|
|
2162
|
+
description: 'Find listing recommendations for items',
|
|
2163
|
+
inputSchema: {
|
|
2164
|
+
listingIds: z
|
|
2165
|
+
.array(z.string())
|
|
2166
|
+
.optional()
|
|
2167
|
+
.describe('Array of listing IDs to get recommendations for'),
|
|
2168
|
+
filter: z.string().optional().describe('Filter criteria'),
|
|
2169
|
+
limit: z.number().optional().describe('Number of recommendations to return'),
|
|
2170
|
+
offset: z.number().optional().describe('Number to skip'),
|
|
2171
|
+
marketplaceId: z.string().optional().describe('Marketplace ID'),
|
|
2172
|
+
},
|
|
2173
|
+
title: 'Find Listing Recommendations',
|
|
2174
|
+
outputSchema: {
|
|
2175
|
+
type: 'object',
|
|
2176
|
+
properties: {
|
|
2177
|
+
success: { type: 'boolean' },
|
|
2178
|
+
data: { type: 'object' }
|
|
2179
|
+
}
|
|
2180
|
+
},
|
|
2181
|
+
annotations: {
|
|
2182
|
+
title: 'Find Listing Recommendations',
|
|
2183
|
+
readOnlyHint: true
|
|
2184
|
+
},
|
|
2185
|
+
_meta: {
|
|
2186
|
+
category: 'marketing',
|
|
2187
|
+
version: '1.0.0'
|
|
2188
|
+
}
|
|
2189
|
+
},
|
|
2190
|
+
];
|
|
2191
|
+
export const analyticsTools = [
|
|
2192
|
+
{
|
|
2193
|
+
name: 'ebay_get_traffic_report',
|
|
2194
|
+
description: 'Get traffic report for listings',
|
|
2195
|
+
inputSchema: {
|
|
2196
|
+
dimension: z.string().describe('Dimension for the report (e.g., LISTING, DAY)'),
|
|
2197
|
+
filter: z.string().describe('Filter criteria'),
|
|
2198
|
+
metric: z.string().describe('Metrics to retrieve (e.g., CLICK_THROUGH_RATE, IMPRESSION)'),
|
|
2199
|
+
sort: z.string().optional().describe('Sort order'),
|
|
2200
|
+
},
|
|
2201
|
+
title: 'Get Traffic Report',
|
|
2202
|
+
outputSchema: {
|
|
2203
|
+
type: 'object',
|
|
2204
|
+
properties: {
|
|
2205
|
+
success: { type: 'boolean' },
|
|
2206
|
+
data: { type: 'object' }
|
|
2207
|
+
}
|
|
2208
|
+
},
|
|
2209
|
+
annotations: {
|
|
2210
|
+
title: 'Get Traffic Report',
|
|
2211
|
+
readOnlyHint: true
|
|
2212
|
+
},
|
|
2213
|
+
_meta: {
|
|
2214
|
+
category: 'analytics',
|
|
2215
|
+
version: '1.0.0'
|
|
2216
|
+
}
|
|
2217
|
+
},
|
|
2218
|
+
{
|
|
2219
|
+
name: 'ebay_find_seller_standards_profiles',
|
|
2220
|
+
description: 'Find all seller standards profiles',
|
|
2221
|
+
inputSchema: {},
|
|
2222
|
+
title: 'Find Seller Standards Profiles',
|
|
2223
|
+
outputSchema: {
|
|
2224
|
+
type: 'object',
|
|
2225
|
+
properties: {
|
|
2226
|
+
success: { type: 'boolean' },
|
|
2227
|
+
data: { type: 'object' }
|
|
2228
|
+
}
|
|
2229
|
+
},
|
|
2230
|
+
annotations: {
|
|
2231
|
+
title: 'Find Seller Standards Profiles',
|
|
2232
|
+
readOnlyHint: true
|
|
2233
|
+
},
|
|
2234
|
+
_meta: {
|
|
2235
|
+
category: 'analytics',
|
|
2236
|
+
version: '1.0.0'
|
|
2237
|
+
}
|
|
2238
|
+
},
|
|
2239
|
+
{
|
|
2240
|
+
name: 'ebay_get_seller_standards_profile',
|
|
2241
|
+
description: 'Get a specific seller standards profile',
|
|
2242
|
+
inputSchema: {
|
|
2243
|
+
program: z.string().describe('The program (e.g., CUSTOMER_SERVICE)'),
|
|
2244
|
+
cycle: z.string().describe('The cycle (e.g., CURRENT)'),
|
|
2245
|
+
},
|
|
2246
|
+
title: 'Get Seller Standards Profile',
|
|
2247
|
+
outputSchema: {
|
|
2248
|
+
type: 'object',
|
|
2249
|
+
properties: {
|
|
2250
|
+
success: { type: 'boolean' },
|
|
2251
|
+
data: { type: 'object' }
|
|
2252
|
+
}
|
|
2253
|
+
},
|
|
2254
|
+
annotations: {
|
|
2255
|
+
title: 'Get Seller Standards Profile',
|
|
2256
|
+
readOnlyHint: true
|
|
2257
|
+
},
|
|
2258
|
+
_meta: {
|
|
2259
|
+
category: 'analytics',
|
|
2260
|
+
version: '1.0.0'
|
|
2261
|
+
}
|
|
2262
|
+
},
|
|
2263
|
+
{
|
|
2264
|
+
name: 'ebay_get_customer_service_metric',
|
|
2265
|
+
description: 'Get customer service metrics',
|
|
2266
|
+
inputSchema: {
|
|
2267
|
+
customerServiceMetricType: z.string().describe('Type of metric'),
|
|
2268
|
+
evaluationType: z.string().describe('Evaluation type'),
|
|
2269
|
+
evaluationMarketplaceId: z.string().describe('Marketplace ID for evaluation'),
|
|
2270
|
+
},
|
|
2271
|
+
title: 'Get Customer Service Metric',
|
|
2272
|
+
outputSchema: {
|
|
2273
|
+
type: 'object',
|
|
2274
|
+
properties: {
|
|
2275
|
+
success: { type: 'boolean' },
|
|
2276
|
+
data: { type: 'object' }
|
|
2277
|
+
}
|
|
2278
|
+
},
|
|
2279
|
+
annotations: {
|
|
2280
|
+
title: 'Get Customer Service Metric',
|
|
2281
|
+
readOnlyHint: true
|
|
2282
|
+
},
|
|
2283
|
+
_meta: {
|
|
2284
|
+
category: 'analytics',
|
|
2285
|
+
version: '1.0.0'
|
|
2286
|
+
}
|
|
2287
|
+
},
|
|
2288
|
+
];
|
|
2289
|
+
export const metadataTools = [
|
|
2290
|
+
{
|
|
2291
|
+
name: 'ebay_get_automotive_parts_compatibility_policies',
|
|
2292
|
+
description: 'Get automotive parts compatibility policies for a marketplace',
|
|
2293
|
+
inputSchema: {
|
|
2294
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2295
|
+
filter: z.string().optional().describe('Filter criteria'),
|
|
2296
|
+
},
|
|
2297
|
+
title: 'Get Automotive Parts Compatibility Policies',
|
|
2298
|
+
outputSchema: {
|
|
2299
|
+
type: 'object',
|
|
2300
|
+
properties: {
|
|
2301
|
+
success: { type: 'boolean' },
|
|
2302
|
+
data: { type: 'object' }
|
|
2303
|
+
}
|
|
2304
|
+
},
|
|
2305
|
+
annotations: {
|
|
2306
|
+
title: 'Get Automotive Parts Compatibility Policies',
|
|
2307
|
+
readOnlyHint: true
|
|
2308
|
+
},
|
|
2309
|
+
_meta: {
|
|
2310
|
+
category: 'metadata',
|
|
2311
|
+
version: '1.0.0'
|
|
2312
|
+
}
|
|
2313
|
+
},
|
|
2314
|
+
{
|
|
2315
|
+
name: 'ebay_get_category_policies',
|
|
2316
|
+
description: 'Get category policies for a marketplace',
|
|
2317
|
+
inputSchema: {
|
|
2318
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2319
|
+
filter: z.string().optional().describe('Filter criteria'),
|
|
2320
|
+
},
|
|
2321
|
+
title: 'Get Category Policies',
|
|
2322
|
+
outputSchema: {
|
|
2323
|
+
type: 'object',
|
|
2324
|
+
properties: {
|
|
2325
|
+
success: { type: 'boolean' },
|
|
2326
|
+
data: { type: 'object' }
|
|
2327
|
+
}
|
|
2328
|
+
},
|
|
2329
|
+
annotations: {
|
|
2330
|
+
title: 'Get Category Policies',
|
|
2331
|
+
readOnlyHint: true
|
|
2332
|
+
},
|
|
2333
|
+
_meta: {
|
|
2334
|
+
category: 'metadata',
|
|
2335
|
+
version: '1.0.0'
|
|
2336
|
+
}
|
|
2337
|
+
},
|
|
2338
|
+
{
|
|
2339
|
+
name: 'ebay_get_extended_producer_responsibility_policies',
|
|
2340
|
+
description: 'Get extended producer responsibility policies for a marketplace',
|
|
2341
|
+
inputSchema: {
|
|
2342
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2343
|
+
filter: z.string().optional().describe('Filter criteria'),
|
|
2344
|
+
},
|
|
2345
|
+
title: 'Get Extended Producer Responsibility Policies',
|
|
2346
|
+
outputSchema: {
|
|
2347
|
+
type: 'object',
|
|
2348
|
+
properties: {
|
|
2349
|
+
success: { type: 'boolean' },
|
|
2350
|
+
data: { type: 'object' }
|
|
2351
|
+
}
|
|
2352
|
+
},
|
|
2353
|
+
annotations: {
|
|
2354
|
+
title: 'Get Extended Producer Responsibility Policies',
|
|
2355
|
+
readOnlyHint: true
|
|
2356
|
+
},
|
|
2357
|
+
_meta: {
|
|
2358
|
+
category: 'metadata',
|
|
2359
|
+
version: '1.0.0'
|
|
2360
|
+
}
|
|
2361
|
+
},
|
|
2362
|
+
{
|
|
2363
|
+
name: 'ebay_get_hazardous_materials_labels',
|
|
2364
|
+
description: 'Get hazardous materials labels for a marketplace',
|
|
2365
|
+
inputSchema: {
|
|
2366
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2367
|
+
},
|
|
2368
|
+
title: 'Get Hazardous Materials Labels',
|
|
2369
|
+
outputSchema: {
|
|
2370
|
+
type: 'object',
|
|
2371
|
+
properties: {
|
|
2372
|
+
success: { type: 'boolean' },
|
|
2373
|
+
data: { type: 'object' }
|
|
2374
|
+
}
|
|
2375
|
+
},
|
|
2376
|
+
annotations: {
|
|
2377
|
+
title: 'Get Hazardous Materials Labels',
|
|
2378
|
+
readOnlyHint: true
|
|
2379
|
+
},
|
|
2380
|
+
_meta: {
|
|
2381
|
+
category: 'metadata',
|
|
2382
|
+
version: '1.0.0'
|
|
2383
|
+
}
|
|
2384
|
+
},
|
|
2385
|
+
{
|
|
2386
|
+
name: 'ebay_get_item_condition_policies',
|
|
2387
|
+
description: 'Get item condition policies for a marketplace',
|
|
2388
|
+
inputSchema: {
|
|
2389
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2390
|
+
filter: z.string().optional().describe('Filter criteria'),
|
|
2391
|
+
},
|
|
2392
|
+
title: 'Get Item Condition Policies',
|
|
2393
|
+
outputSchema: {
|
|
2394
|
+
type: 'object',
|
|
2395
|
+
properties: {
|
|
2396
|
+
success: { type: 'boolean' },
|
|
2397
|
+
data: { type: 'object' }
|
|
2398
|
+
}
|
|
2399
|
+
},
|
|
2400
|
+
annotations: {
|
|
2401
|
+
title: 'Get Item Condition Policies',
|
|
2402
|
+
readOnlyHint: true
|
|
2403
|
+
},
|
|
2404
|
+
_meta: {
|
|
2405
|
+
category: 'metadata',
|
|
2406
|
+
version: '1.0.0'
|
|
2407
|
+
}
|
|
2408
|
+
},
|
|
2409
|
+
{
|
|
2410
|
+
name: 'ebay_get_listing_structure_policies',
|
|
2411
|
+
description: 'Get listing structure policies for a marketplace',
|
|
2412
|
+
inputSchema: {
|
|
2413
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2414
|
+
filter: z.string().optional().describe('Filter criteria'),
|
|
2415
|
+
},
|
|
2416
|
+
title: 'Get Listing Structure Policies',
|
|
2417
|
+
outputSchema: {
|
|
2418
|
+
type: 'object',
|
|
2419
|
+
properties: {
|
|
2420
|
+
success: { type: 'boolean' },
|
|
2421
|
+
data: { type: 'object' }
|
|
2422
|
+
}
|
|
2423
|
+
},
|
|
2424
|
+
annotations: {
|
|
2425
|
+
title: 'Get Listing Structure Policies',
|
|
2426
|
+
readOnlyHint: true
|
|
2427
|
+
},
|
|
2428
|
+
_meta: {
|
|
2429
|
+
category: 'metadata',
|
|
2430
|
+
version: '1.0.0'
|
|
2431
|
+
}
|
|
2432
|
+
},
|
|
2433
|
+
{
|
|
2434
|
+
name: 'ebay_get_negotiated_price_policies',
|
|
2435
|
+
description: 'Get negotiated price policies for a marketplace',
|
|
2436
|
+
inputSchema: {
|
|
2437
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2438
|
+
filter: z.string().optional().describe('Filter criteria'),
|
|
2439
|
+
},
|
|
2440
|
+
title: 'Get Negotiated Price Policies',
|
|
2441
|
+
outputSchema: {
|
|
2442
|
+
type: 'object',
|
|
2443
|
+
properties: {
|
|
2444
|
+
success: { type: 'boolean' },
|
|
2445
|
+
data: { type: 'object' }
|
|
2446
|
+
}
|
|
2447
|
+
},
|
|
2448
|
+
annotations: {
|
|
2449
|
+
title: 'Get Negotiated Price Policies',
|
|
2450
|
+
readOnlyHint: true
|
|
2451
|
+
},
|
|
2452
|
+
_meta: {
|
|
2453
|
+
category: 'metadata',
|
|
2454
|
+
version: '1.0.0'
|
|
2455
|
+
}
|
|
2456
|
+
},
|
|
2457
|
+
{
|
|
2458
|
+
name: 'ebay_get_product_safety_labels',
|
|
2459
|
+
description: 'Get product safety labels for a marketplace',
|
|
2460
|
+
inputSchema: {
|
|
2461
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2462
|
+
},
|
|
2463
|
+
title: 'Get Product Safety Labels',
|
|
2464
|
+
outputSchema: {
|
|
2465
|
+
type: 'object',
|
|
2466
|
+
properties: {
|
|
2467
|
+
success: { type: 'boolean' },
|
|
2468
|
+
data: { type: 'object' }
|
|
2469
|
+
}
|
|
2470
|
+
},
|
|
2471
|
+
annotations: {
|
|
2472
|
+
title: 'Get Product Safety Labels',
|
|
2473
|
+
readOnlyHint: true
|
|
2474
|
+
},
|
|
2475
|
+
_meta: {
|
|
2476
|
+
category: 'metadata',
|
|
2477
|
+
version: '1.0.0'
|
|
2478
|
+
}
|
|
2479
|
+
},
|
|
2480
|
+
{
|
|
2481
|
+
name: 'ebay_get_regulatory_policies',
|
|
2482
|
+
description: 'Get regulatory policies for a marketplace',
|
|
2483
|
+
inputSchema: {
|
|
2484
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2485
|
+
filter: z.string().optional().describe('Filter criteria'),
|
|
2486
|
+
},
|
|
2487
|
+
title: 'Get Regulatory Policies',
|
|
2488
|
+
outputSchema: {
|
|
2489
|
+
type: 'object',
|
|
2490
|
+
properties: {
|
|
2491
|
+
success: { type: 'boolean' },
|
|
2492
|
+
data: { type: 'object' }
|
|
2493
|
+
}
|
|
2494
|
+
},
|
|
2495
|
+
annotations: {
|
|
2496
|
+
title: 'Get Regulatory Policies',
|
|
2497
|
+
readOnlyHint: true
|
|
2498
|
+
},
|
|
2499
|
+
_meta: {
|
|
2500
|
+
category: 'metadata',
|
|
2501
|
+
version: '1.0.0'
|
|
2502
|
+
}
|
|
2503
|
+
},
|
|
2504
|
+
{
|
|
2505
|
+
name: 'ebay_get_shipping_cost_type_policies',
|
|
2506
|
+
description: 'Get shipping cost type policies for a marketplace',
|
|
2507
|
+
inputSchema: {
|
|
2508
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2509
|
+
filter: z.string().optional().describe('Filter criteria'),
|
|
2510
|
+
},
|
|
2511
|
+
title: 'Get Shipping Cost Type Policies',
|
|
2512
|
+
outputSchema: {
|
|
2513
|
+
type: 'object',
|
|
2514
|
+
properties: {
|
|
2515
|
+
success: { type: 'boolean' },
|
|
2516
|
+
data: { type: 'object' }
|
|
2517
|
+
}
|
|
2518
|
+
},
|
|
2519
|
+
annotations: {
|
|
2520
|
+
title: 'Get Shipping Cost Type Policies',
|
|
2521
|
+
readOnlyHint: true
|
|
2522
|
+
},
|
|
2523
|
+
_meta: {
|
|
2524
|
+
category: 'metadata',
|
|
2525
|
+
version: '1.0.0'
|
|
2526
|
+
}
|
|
2527
|
+
},
|
|
2528
|
+
{
|
|
2529
|
+
name: 'ebay_get_classified_ad_policies',
|
|
2530
|
+
description: 'Get classified ad policies for a marketplace',
|
|
2531
|
+
inputSchema: {
|
|
2532
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2533
|
+
filter: z.string().optional().describe('Filter criteria'),
|
|
2534
|
+
},
|
|
2535
|
+
title: 'Get Classified Ad Policies',
|
|
2536
|
+
outputSchema: {
|
|
2537
|
+
type: 'object',
|
|
2538
|
+
properties: {
|
|
2539
|
+
success: { type: 'boolean' },
|
|
2540
|
+
data: { type: 'object' }
|
|
2541
|
+
}
|
|
2542
|
+
},
|
|
2543
|
+
annotations: {
|
|
2544
|
+
title: 'Get Classified Ad Policies',
|
|
2545
|
+
readOnlyHint: true
|
|
2546
|
+
},
|
|
2547
|
+
_meta: {
|
|
2548
|
+
category: 'metadata',
|
|
2549
|
+
version: '1.0.0'
|
|
2550
|
+
}
|
|
2551
|
+
},
|
|
2552
|
+
{
|
|
2553
|
+
name: 'ebay_get_currencies',
|
|
2554
|
+
description: 'Get currencies for a marketplace',
|
|
2555
|
+
inputSchema: {
|
|
2556
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2557
|
+
},
|
|
2558
|
+
title: 'Get Currencies',
|
|
2559
|
+
outputSchema: {
|
|
2560
|
+
type: 'object',
|
|
2561
|
+
properties: {
|
|
2562
|
+
success: { type: 'boolean' },
|
|
2563
|
+
data: { type: 'object' }
|
|
2564
|
+
}
|
|
2565
|
+
},
|
|
2566
|
+
annotations: {
|
|
2567
|
+
title: 'Get Currencies',
|
|
2568
|
+
readOnlyHint: true
|
|
2569
|
+
},
|
|
2570
|
+
_meta: {
|
|
2571
|
+
category: 'metadata',
|
|
2572
|
+
version: '1.0.0'
|
|
2573
|
+
}
|
|
2574
|
+
},
|
|
2575
|
+
{
|
|
2576
|
+
name: 'ebay_get_listing_type_policies',
|
|
2577
|
+
description: 'Get listing type policies for a marketplace',
|
|
2578
|
+
inputSchema: {
|
|
2579
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2580
|
+
filter: z.string().optional().describe('Filter criteria'),
|
|
2581
|
+
},
|
|
2582
|
+
title: 'Get Listing Type Policies',
|
|
2583
|
+
outputSchema: {
|
|
2584
|
+
type: 'object',
|
|
2585
|
+
properties: {
|
|
2586
|
+
success: { type: 'boolean' },
|
|
2587
|
+
data: { type: 'object' }
|
|
2588
|
+
}
|
|
2589
|
+
},
|
|
2590
|
+
annotations: {
|
|
2591
|
+
title: 'Get Listing Type Policies',
|
|
2592
|
+
readOnlyHint: true
|
|
2593
|
+
},
|
|
2594
|
+
_meta: {
|
|
2595
|
+
category: 'metadata',
|
|
2596
|
+
version: '1.0.0'
|
|
2597
|
+
}
|
|
2598
|
+
},
|
|
2599
|
+
{
|
|
2600
|
+
name: 'ebay_get_motors_listing_policies',
|
|
2601
|
+
description: 'Get motors listing policies for a marketplace',
|
|
2602
|
+
inputSchema: {
|
|
2603
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2604
|
+
filter: z.string().optional().describe('Filter criteria'),
|
|
2605
|
+
},
|
|
2606
|
+
title: 'Get Motors Listing Policies',
|
|
2607
|
+
outputSchema: {
|
|
2608
|
+
type: 'object',
|
|
2609
|
+
properties: {
|
|
2610
|
+
success: { type: 'boolean' },
|
|
2611
|
+
data: { type: 'object' }
|
|
2612
|
+
}
|
|
2613
|
+
},
|
|
2614
|
+
annotations: {
|
|
2615
|
+
title: 'Get Motors Listing Policies',
|
|
2616
|
+
readOnlyHint: true
|
|
2617
|
+
},
|
|
2618
|
+
_meta: {
|
|
2619
|
+
category: 'metadata',
|
|
2620
|
+
version: '1.0.0'
|
|
2621
|
+
}
|
|
2622
|
+
},
|
|
2623
|
+
{
|
|
2624
|
+
name: 'ebay_get_shipping_policies',
|
|
2625
|
+
description: 'Get shipping policies for a marketplace',
|
|
2626
|
+
inputSchema: {
|
|
2627
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2628
|
+
filter: z.string().optional().describe('Filter criteria'),
|
|
2629
|
+
},
|
|
2630
|
+
title: 'Get Shipping Policies',
|
|
2631
|
+
outputSchema: {
|
|
2632
|
+
type: 'object',
|
|
2633
|
+
properties: {
|
|
2634
|
+
success: { type: 'boolean' },
|
|
2635
|
+
data: { type: 'object' }
|
|
2636
|
+
}
|
|
2637
|
+
},
|
|
2638
|
+
annotations: {
|
|
2639
|
+
title: 'Get Shipping Policies',
|
|
2640
|
+
readOnlyHint: true
|
|
2641
|
+
},
|
|
2642
|
+
_meta: {
|
|
2643
|
+
category: 'metadata',
|
|
2644
|
+
version: '1.0.0'
|
|
2645
|
+
}
|
|
2646
|
+
},
|
|
2647
|
+
{
|
|
2648
|
+
name: 'ebay_get_site_visibility_policies',
|
|
2649
|
+
description: 'Get site visibility policies for a marketplace',
|
|
2650
|
+
inputSchema: {
|
|
2651
|
+
marketplaceId: z.nativeEnum(MarketplaceId).describe('Marketplace ID'),
|
|
2652
|
+
filter: z.string().optional().describe('Filter criteria'),
|
|
2653
|
+
},
|
|
2654
|
+
title: 'Get Site Visibility Policies',
|
|
2655
|
+
outputSchema: {
|
|
2656
|
+
type: 'object',
|
|
2657
|
+
properties: {
|
|
2658
|
+
success: { type: 'boolean' },
|
|
2659
|
+
data: { type: 'object' }
|
|
2660
|
+
}
|
|
2661
|
+
},
|
|
2662
|
+
annotations: {
|
|
2663
|
+
title: 'Get Site Visibility Policies',
|
|
2664
|
+
readOnlyHint: true
|
|
2665
|
+
},
|
|
2666
|
+
_meta: {
|
|
2667
|
+
category: 'metadata',
|
|
2668
|
+
version: '1.0.0'
|
|
2669
|
+
}
|
|
2670
|
+
},
|
|
2671
|
+
{
|
|
2672
|
+
name: 'ebay_get_compatibilities_by_specification',
|
|
2673
|
+
description: 'Get compatibilities by specification',
|
|
2674
|
+
inputSchema: {
|
|
2675
|
+
specification: compatibilitySpecificationSchema.describe('Compatibility specification object'),
|
|
2676
|
+
},
|
|
2677
|
+
title: 'Get Compatibilities By Specification',
|
|
2678
|
+
outputSchema: {
|
|
2679
|
+
type: 'object',
|
|
2680
|
+
properties: {
|
|
2681
|
+
success: { type: 'boolean' },
|
|
2682
|
+
data: { type: 'object' }
|
|
2683
|
+
}
|
|
2684
|
+
},
|
|
2685
|
+
annotations: {
|
|
2686
|
+
title: 'Get Compatibilities By Specification',
|
|
2687
|
+
readOnlyHint: true
|
|
2688
|
+
},
|
|
2689
|
+
_meta: {
|
|
2690
|
+
category: 'metadata',
|
|
2691
|
+
version: '1.0.0'
|
|
2692
|
+
}
|
|
2693
|
+
},
|
|
2694
|
+
{
|
|
2695
|
+
name: 'ebay_get_compatibility_property_names',
|
|
2696
|
+
description: 'Get compatibility property names',
|
|
2697
|
+
inputSchema: {
|
|
2698
|
+
data: compatibilityDataSchema.describe('Request data for getting compatibility property names'),
|
|
2699
|
+
},
|
|
2700
|
+
title: 'Get Compatibility Property Names',
|
|
2701
|
+
outputSchema: {
|
|
2702
|
+
type: 'object',
|
|
2703
|
+
properties: {
|
|
2704
|
+
success: { type: 'boolean' },
|
|
2705
|
+
data: { type: 'object' }
|
|
2706
|
+
}
|
|
2707
|
+
},
|
|
2708
|
+
annotations: {
|
|
2709
|
+
title: 'Get Compatibility Property Names',
|
|
2710
|
+
readOnlyHint: true
|
|
2711
|
+
},
|
|
2712
|
+
_meta: {
|
|
2713
|
+
category: 'metadata',
|
|
2714
|
+
version: '1.0.0'
|
|
2715
|
+
}
|
|
2716
|
+
},
|
|
2717
|
+
{
|
|
2718
|
+
name: 'ebay_get_compatibility_property_values',
|
|
2719
|
+
description: 'Get compatibility property values',
|
|
2720
|
+
inputSchema: {
|
|
2721
|
+
data: compatibilityDataSchema.describe('Request data for getting compatibility property values'),
|
|
2722
|
+
},
|
|
2723
|
+
title: 'Get Compatibility Property Values',
|
|
2724
|
+
outputSchema: {
|
|
2725
|
+
type: 'object',
|
|
2726
|
+
properties: {
|
|
2727
|
+
success: { type: 'boolean' },
|
|
2728
|
+
data: { type: 'object' }
|
|
2729
|
+
}
|
|
2730
|
+
},
|
|
2731
|
+
annotations: {
|
|
2732
|
+
title: 'Get Compatibility Property Values',
|
|
2733
|
+
readOnlyHint: true
|
|
2734
|
+
},
|
|
2735
|
+
_meta: {
|
|
2736
|
+
category: 'metadata',
|
|
2737
|
+
version: '1.0.0'
|
|
2738
|
+
}
|
|
2739
|
+
},
|
|
2740
|
+
{
|
|
2741
|
+
name: 'ebay_get_multi_compatibility_property_values',
|
|
2742
|
+
description: 'Get multiple compatibility property values',
|
|
2743
|
+
inputSchema: {
|
|
2744
|
+
data: compatibilityDataSchema.describe('Request data for getting multi compatibility property values'),
|
|
2745
|
+
},
|
|
2746
|
+
title: 'Get Multi Compatibility Property Values',
|
|
2747
|
+
outputSchema: {
|
|
2748
|
+
type: 'object',
|
|
2749
|
+
properties: {
|
|
2750
|
+
success: { type: 'boolean' },
|
|
2751
|
+
data: { type: 'object' }
|
|
2752
|
+
}
|
|
2753
|
+
},
|
|
2754
|
+
annotations: {
|
|
2755
|
+
title: 'Get Multi Compatibility Property Values',
|
|
2756
|
+
readOnlyHint: true
|
|
2757
|
+
},
|
|
2758
|
+
_meta: {
|
|
2759
|
+
category: 'metadata',
|
|
2760
|
+
version: '1.0.0'
|
|
2761
|
+
}
|
|
2762
|
+
},
|
|
2763
|
+
{
|
|
2764
|
+
name: 'ebay_get_product_compatibilities',
|
|
2765
|
+
description: 'Get product compatibilities',
|
|
2766
|
+
inputSchema: {
|
|
2767
|
+
data: compatibilityDataSchema.describe('Request data for getting product compatibilities'),
|
|
2768
|
+
},
|
|
2769
|
+
title: 'Get Product Compatibilities',
|
|
2770
|
+
outputSchema: {
|
|
2771
|
+
type: 'object',
|
|
2772
|
+
properties: {
|
|
2773
|
+
success: { type: 'boolean' },
|
|
2774
|
+
data: { type: 'object' }
|
|
2775
|
+
}
|
|
2776
|
+
},
|
|
2777
|
+
annotations: {
|
|
2778
|
+
title: 'Get Product Compatibilities',
|
|
2779
|
+
readOnlyHint: true
|
|
2780
|
+
},
|
|
2781
|
+
_meta: {
|
|
2782
|
+
category: 'metadata',
|
|
2783
|
+
version: '1.0.0'
|
|
2784
|
+
}
|
|
2785
|
+
},
|
|
2786
|
+
{
|
|
2787
|
+
name: 'ebay_get_sales_tax_jurisdictions',
|
|
2788
|
+
description: 'Get sales tax jurisdictions for a country',
|
|
2789
|
+
inputSchema: {
|
|
2790
|
+
countryCode: z.string().describe('Country code (e.g., US)'),
|
|
2791
|
+
},
|
|
2792
|
+
title: 'Get Sales Tax Jurisdictions',
|
|
2793
|
+
outputSchema: {
|
|
2794
|
+
type: 'object',
|
|
2795
|
+
properties: {
|
|
2796
|
+
success: { type: 'boolean' },
|
|
2797
|
+
data: { type: 'object' }
|
|
2798
|
+
}
|
|
2799
|
+
},
|
|
2800
|
+
annotations: {
|
|
2801
|
+
title: 'Get Sales Tax Jurisdictions',
|
|
2802
|
+
readOnlyHint: true
|
|
2803
|
+
},
|
|
2804
|
+
_meta: {
|
|
2805
|
+
category: 'metadata',
|
|
2806
|
+
version: '1.0.0'
|
|
2807
|
+
}
|
|
2808
|
+
},
|
|
2809
|
+
];
|
|
2810
|
+
export const taxonomyTools = [
|
|
2811
|
+
{
|
|
2812
|
+
name: 'ebay_get_default_category_tree_id',
|
|
2813
|
+
description: 'Get the default category tree ID for a marketplace',
|
|
2814
|
+
inputSchema: {
|
|
2815
|
+
marketplaceId: z.string().describe('Marketplace ID (e.g., EBAY_US)'),
|
|
2816
|
+
},
|
|
2817
|
+
title: 'Get Default Category Tree Id',
|
|
2818
|
+
outputSchema: {
|
|
2819
|
+
type: 'object',
|
|
2820
|
+
properties: {
|
|
2821
|
+
success: { type: 'boolean' },
|
|
2822
|
+
data: { type: 'object' }
|
|
2823
|
+
}
|
|
2824
|
+
},
|
|
2825
|
+
annotations: {
|
|
2826
|
+
title: 'Get Default Category Tree Id',
|
|
2827
|
+
readOnlyHint: true
|
|
2828
|
+
},
|
|
2829
|
+
_meta: {
|
|
2830
|
+
category: 'taxonomy',
|
|
2831
|
+
version: '1.0.0'
|
|
2832
|
+
}
|
|
2833
|
+
},
|
|
2834
|
+
{
|
|
2835
|
+
name: 'ebay_get_category_tree',
|
|
2836
|
+
description: 'Get category tree by ID',
|
|
2837
|
+
inputSchema: {
|
|
2838
|
+
categoryTreeId: z.string().describe('Category tree ID'),
|
|
2839
|
+
},
|
|
2840
|
+
title: 'Get Category Tree',
|
|
2841
|
+
outputSchema: {
|
|
2842
|
+
type: 'object',
|
|
2843
|
+
properties: {
|
|
2844
|
+
success: { type: 'boolean' },
|
|
2845
|
+
data: { type: 'object' }
|
|
2846
|
+
}
|
|
2847
|
+
},
|
|
2848
|
+
annotations: {
|
|
2849
|
+
title: 'Get Category Tree',
|
|
2850
|
+
readOnlyHint: true
|
|
2851
|
+
},
|
|
2852
|
+
_meta: {
|
|
2853
|
+
category: 'taxonomy',
|
|
2854
|
+
version: '1.0.0'
|
|
2855
|
+
}
|
|
2856
|
+
},
|
|
2857
|
+
{
|
|
2858
|
+
name: 'ebay_get_category_suggestions',
|
|
2859
|
+
description: 'Get category suggestions based on query',
|
|
2860
|
+
inputSchema: {
|
|
2861
|
+
categoryTreeId: z.string().describe('Category tree ID'),
|
|
2862
|
+
query: z.string().describe('Search query for category suggestions'),
|
|
2863
|
+
},
|
|
2864
|
+
title: 'Get Category Suggestions',
|
|
2865
|
+
outputSchema: {
|
|
2866
|
+
type: 'object',
|
|
2867
|
+
properties: {
|
|
2868
|
+
success: { type: 'boolean' },
|
|
2869
|
+
data: { type: 'object' }
|
|
2870
|
+
}
|
|
2871
|
+
},
|
|
2872
|
+
annotations: {
|
|
2873
|
+
title: 'Get Category Suggestions',
|
|
2874
|
+
readOnlyHint: true
|
|
2875
|
+
},
|
|
2876
|
+
_meta: {
|
|
2877
|
+
category: 'taxonomy',
|
|
2878
|
+
version: '1.0.0'
|
|
2879
|
+
}
|
|
2880
|
+
},
|
|
2881
|
+
{
|
|
2882
|
+
name: 'ebay_get_item_aspects_for_category',
|
|
2883
|
+
description: 'Get item aspects for a specific category',
|
|
2884
|
+
inputSchema: {
|
|
2885
|
+
categoryTreeId: z.string().describe('Category tree ID'),
|
|
2886
|
+
categoryId: z.string().describe('Category ID'),
|
|
2887
|
+
},
|
|
2888
|
+
title: 'Get Item Aspects For Category',
|
|
2889
|
+
outputSchema: {
|
|
2890
|
+
type: 'object',
|
|
2891
|
+
properties: {
|
|
2892
|
+
success: { type: 'boolean' },
|
|
2893
|
+
data: { type: 'object' }
|
|
2894
|
+
}
|
|
2895
|
+
},
|
|
2896
|
+
annotations: {
|
|
2897
|
+
title: 'Get Item Aspects For Category',
|
|
2898
|
+
readOnlyHint: true
|
|
2899
|
+
},
|
|
2900
|
+
_meta: {
|
|
2901
|
+
category: 'taxonomy',
|
|
2902
|
+
version: '1.0.0'
|
|
2903
|
+
}
|
|
2904
|
+
},
|
|
2905
|
+
];
|
|
2906
|
+
export const communicationTools = [
|
|
2907
|
+
{
|
|
2908
|
+
name: 'ebay_get_offers_to_buyers',
|
|
2909
|
+
description: 'Get offers to buyers (Best Offers) for the seller',
|
|
2910
|
+
inputSchema: {
|
|
2911
|
+
filter: z.string().optional().describe('Filter criteria for offers'),
|
|
2912
|
+
limit: z.number().optional().describe('Number of offers to return'),
|
|
2913
|
+
offset: z.number().optional().describe('Number of offers to skip'),
|
|
2914
|
+
},
|
|
2915
|
+
title: 'Get Offers To Buyers',
|
|
2916
|
+
outputSchema: {
|
|
2917
|
+
type: 'object',
|
|
2918
|
+
properties: {
|
|
2919
|
+
success: { type: 'boolean' },
|
|
2920
|
+
data: { type: 'object' }
|
|
2921
|
+
}
|
|
2922
|
+
},
|
|
2923
|
+
annotations: {
|
|
2924
|
+
title: 'Get Offers To Buyers',
|
|
2925
|
+
readOnlyHint: true
|
|
2926
|
+
},
|
|
2927
|
+
_meta: {
|
|
2928
|
+
category: 'communication',
|
|
2929
|
+
version: '1.0.0'
|
|
2930
|
+
}
|
|
2931
|
+
},
|
|
2932
|
+
{
|
|
2933
|
+
name: 'ebay_send_offer_to_interested_buyers',
|
|
2934
|
+
description: 'Send offer to interested buyers',
|
|
2935
|
+
inputSchema: {
|
|
2936
|
+
offerId: z.string().describe('The offer ID'),
|
|
2937
|
+
offerData: offerToBuyersSchema.describe('Offer details to send to buyers'),
|
|
2938
|
+
},
|
|
2939
|
+
title: 'Send Offer To Interested Buyers',
|
|
2940
|
+
outputSchema: {
|
|
2941
|
+
type: 'object',
|
|
2942
|
+
properties: {
|
|
2943
|
+
success: { type: 'boolean' },
|
|
2944
|
+
data: { type: 'object' }
|
|
2945
|
+
}
|
|
2946
|
+
},
|
|
2947
|
+
annotations: {
|
|
2948
|
+
title: 'Send Offer To Interested Buyers',
|
|
2949
|
+
idempotentHint: true
|
|
2950
|
+
},
|
|
2951
|
+
_meta: {
|
|
2952
|
+
category: 'communication',
|
|
2953
|
+
version: '1.0.0'
|
|
2954
|
+
}
|
|
2955
|
+
},
|
|
2956
|
+
{
|
|
2957
|
+
name: 'ebay_search_messages',
|
|
2958
|
+
description: 'Search for buyer-seller messages',
|
|
2959
|
+
inputSchema: {
|
|
2960
|
+
filter: z.string().optional().describe('Filter criteria for messages'),
|
|
2961
|
+
limit: z.number().optional().describe('Number of messages to return'),
|
|
2962
|
+
offset: z.number().optional().describe('Number of messages to skip'),
|
|
2963
|
+
},
|
|
2964
|
+
title: 'Search Messages',
|
|
2965
|
+
outputSchema: {
|
|
2966
|
+
type: 'object',
|
|
2967
|
+
properties: {
|
|
2968
|
+
success: { type: 'boolean' },
|
|
2969
|
+
data: { type: 'object' }
|
|
2970
|
+
}
|
|
2971
|
+
},
|
|
2972
|
+
annotations: {
|
|
2973
|
+
title: 'Search Messages',
|
|
2974
|
+
idempotentHint: true
|
|
2975
|
+
},
|
|
2976
|
+
_meta: {
|
|
2977
|
+
category: 'communication',
|
|
2978
|
+
version: '1.0.0'
|
|
2979
|
+
}
|
|
2980
|
+
},
|
|
2981
|
+
{
|
|
2982
|
+
name: 'ebay_get_message',
|
|
2983
|
+
description: 'Get a specific message by ID',
|
|
2984
|
+
inputSchema: {
|
|
2985
|
+
messageId: z.string().describe('The message ID'),
|
|
2986
|
+
},
|
|
2987
|
+
title: 'Get Message',
|
|
2988
|
+
outputSchema: {
|
|
2989
|
+
type: 'object',
|
|
2990
|
+
properties: {
|
|
2991
|
+
success: { type: 'boolean' },
|
|
2992
|
+
data: { type: 'object' }
|
|
2993
|
+
}
|
|
2994
|
+
},
|
|
2995
|
+
annotations: {
|
|
2996
|
+
title: 'Get Message',
|
|
2997
|
+
readOnlyHint: true
|
|
2998
|
+
},
|
|
2999
|
+
_meta: {
|
|
3000
|
+
category: 'communication',
|
|
3001
|
+
version: '1.0.0'
|
|
3002
|
+
}
|
|
3003
|
+
},
|
|
3004
|
+
{
|
|
3005
|
+
name: 'ebay_send_message',
|
|
3006
|
+
description: '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.',
|
|
3007
|
+
inputSchema: {
|
|
3008
|
+
messageData: z
|
|
3009
|
+
.object({
|
|
3010
|
+
conversationId: z
|
|
3011
|
+
.string()
|
|
3012
|
+
.optional()
|
|
3013
|
+
.describe('Optional conversation ID to reply to an existing thread. Use getConversations to retrieve conversation IDs. Required if replying to existing conversation.'),
|
|
3014
|
+
messageText: z
|
|
3015
|
+
.string()
|
|
3016
|
+
.describe('REQUIRED. The text of the message to send (max 2000 characters).'),
|
|
3017
|
+
otherPartyUsername: z
|
|
3018
|
+
.string()
|
|
3019
|
+
.optional()
|
|
3020
|
+
.describe('eBay username of the other party (buyer or seller). Required when starting a new conversation.'),
|
|
3021
|
+
emailCopyToSender: z
|
|
3022
|
+
.boolean()
|
|
3023
|
+
.optional()
|
|
3024
|
+
.describe('If true, a copy of the message will be emailed to the sender.'),
|
|
3025
|
+
reference: z
|
|
3026
|
+
.object({
|
|
3027
|
+
referenceId: z
|
|
3028
|
+
.string()
|
|
3029
|
+
.optional()
|
|
3030
|
+
.describe('The ID of the listing or order to reference (e.g., item ID or order ID)'),
|
|
3031
|
+
referenceType: z
|
|
3032
|
+
.string()
|
|
3033
|
+
.optional()
|
|
3034
|
+
.describe('Type of reference. Valid values: "LISTING" (for item listings) or "ORDER" (for orders)'),
|
|
3035
|
+
})
|
|
3036
|
+
.optional()
|
|
3037
|
+
.describe('Optional reference to associate message with a listing or order.'),
|
|
3038
|
+
messageMedia: z
|
|
3039
|
+
.array(z.object({
|
|
3040
|
+
mediaUrl: z.string().optional().describe('URL of the media to attach'),
|
|
3041
|
+
mediaType: z
|
|
3042
|
+
.string()
|
|
3043
|
+
.optional()
|
|
3044
|
+
.describe('MIME type of the media (e.g., "image/jpeg")'),
|
|
3045
|
+
}))
|
|
3046
|
+
.optional()
|
|
3047
|
+
.describe('Optional array of media attachments (max 5 per message)'),
|
|
3048
|
+
})
|
|
3049
|
+
.describe('Message details including recipient and content. Must include messageText (required), and either conversationId (for replies) OR otherPartyUsername (for new messages).'),
|
|
3050
|
+
},
|
|
3051
|
+
title: 'Send Message',
|
|
3052
|
+
outputSchema: {
|
|
3053
|
+
type: 'object',
|
|
3054
|
+
properties: {
|
|
3055
|
+
success: { type: 'boolean' },
|
|
3056
|
+
data: { type: 'object' }
|
|
3057
|
+
}
|
|
3058
|
+
},
|
|
3059
|
+
annotations: {
|
|
3060
|
+
title: 'Send Message',
|
|
3061
|
+
idempotentHint: true
|
|
3062
|
+
},
|
|
3063
|
+
_meta: {
|
|
3064
|
+
category: 'communication',
|
|
3065
|
+
version: '1.0.0'
|
|
3066
|
+
}
|
|
3067
|
+
},
|
|
3068
|
+
{
|
|
3069
|
+
name: 'ebay_reply_to_message',
|
|
3070
|
+
description: 'Reply to a buyer message in an existing conversation thread',
|
|
3071
|
+
inputSchema: {
|
|
3072
|
+
messageId: z.string().describe('The conversation/message ID to reply to'),
|
|
3073
|
+
messageContent: z.string().describe('The reply message content'),
|
|
3074
|
+
},
|
|
3075
|
+
title: 'Reply To Message',
|
|
3076
|
+
outputSchema: {
|
|
3077
|
+
type: 'object',
|
|
3078
|
+
properties: {
|
|
3079
|
+
success: { type: 'boolean' },
|
|
3080
|
+
data: { type: 'object' }
|
|
3081
|
+
}
|
|
3082
|
+
},
|
|
3083
|
+
annotations: {
|
|
3084
|
+
title: 'Reply To Message',
|
|
3085
|
+
idempotentHint: true
|
|
3086
|
+
},
|
|
3087
|
+
_meta: {
|
|
3088
|
+
category: 'communication',
|
|
3089
|
+
version: '1.0.0'
|
|
3090
|
+
}
|
|
3091
|
+
},
|
|
3092
|
+
{
|
|
3093
|
+
name: 'ebay_get_notification_config',
|
|
3094
|
+
description: 'Get notification configuration',
|
|
3095
|
+
inputSchema: {},
|
|
3096
|
+
title: 'Get Notification Config',
|
|
3097
|
+
outputSchema: {
|
|
3098
|
+
type: 'object',
|
|
3099
|
+
properties: {
|
|
3100
|
+
success: { type: 'boolean' },
|
|
3101
|
+
data: { type: 'object' }
|
|
3102
|
+
}
|
|
3103
|
+
},
|
|
3104
|
+
annotations: {
|
|
3105
|
+
title: 'Get Notification Config',
|
|
3106
|
+
readOnlyHint: true
|
|
3107
|
+
},
|
|
3108
|
+
_meta: {
|
|
3109
|
+
category: 'communication',
|
|
3110
|
+
version: '1.0.0'
|
|
3111
|
+
}
|
|
3112
|
+
},
|
|
3113
|
+
{
|
|
3114
|
+
name: 'ebay_update_notification_config',
|
|
3115
|
+
description: 'Update notification configuration',
|
|
3116
|
+
inputSchema: {
|
|
3117
|
+
config: notificationConfigSchema.describe('Notification configuration settings'),
|
|
3118
|
+
},
|
|
3119
|
+
title: 'Update Notification Config',
|
|
3120
|
+
outputSchema: {
|
|
3121
|
+
type: 'object',
|
|
3122
|
+
properties: {
|
|
3123
|
+
success: { type: 'boolean' },
|
|
3124
|
+
data: { type: 'object' }
|
|
3125
|
+
}
|
|
3126
|
+
},
|
|
3127
|
+
annotations: {
|
|
3128
|
+
title: 'Update Notification Config',
|
|
3129
|
+
idempotentHint: true
|
|
3130
|
+
},
|
|
3131
|
+
_meta: {
|
|
3132
|
+
category: 'communication',
|
|
3133
|
+
version: '1.0.0'
|
|
3134
|
+
}
|
|
3135
|
+
},
|
|
3136
|
+
{
|
|
3137
|
+
name: 'ebay_create_notification_destination',
|
|
3138
|
+
description: 'Create a notification destination',
|
|
3139
|
+
inputSchema: {
|
|
3140
|
+
destination: notificationDestinationSchema.describe('Destination configuration'),
|
|
3141
|
+
},
|
|
3142
|
+
title: 'Create Notification Destination',
|
|
3143
|
+
outputSchema: {
|
|
3144
|
+
type: 'object',
|
|
3145
|
+
properties: {
|
|
3146
|
+
success: { type: 'boolean' },
|
|
3147
|
+
data: { type: 'object' }
|
|
3148
|
+
}
|
|
3149
|
+
},
|
|
3150
|
+
annotations: {
|
|
3151
|
+
title: 'Create Notification Destination',
|
|
3152
|
+
idempotentHint: true
|
|
3153
|
+
},
|
|
3154
|
+
_meta: {
|
|
3155
|
+
category: 'communication',
|
|
3156
|
+
version: '1.0.0'
|
|
3157
|
+
}
|
|
3158
|
+
},
|
|
3159
|
+
{
|
|
3160
|
+
name: 'ebay_get_feedback',
|
|
3161
|
+
description: 'Get feedback for a transaction',
|
|
3162
|
+
inputSchema: {
|
|
3163
|
+
transactionId: z.string().describe('The transaction ID'),
|
|
3164
|
+
},
|
|
3165
|
+
title: 'Get Feedback',
|
|
3166
|
+
outputSchema: {
|
|
3167
|
+
type: 'object',
|
|
3168
|
+
properties: {
|
|
3169
|
+
success: { type: 'boolean' },
|
|
3170
|
+
data: { type: 'object' }
|
|
3171
|
+
}
|
|
3172
|
+
},
|
|
3173
|
+
annotations: {
|
|
3174
|
+
title: 'Get Feedback',
|
|
3175
|
+
readOnlyHint: true
|
|
3176
|
+
},
|
|
3177
|
+
_meta: {
|
|
3178
|
+
category: 'communication',
|
|
3179
|
+
version: '1.0.0'
|
|
3180
|
+
}
|
|
3181
|
+
},
|
|
3182
|
+
{
|
|
3183
|
+
name: 'ebay_leave_feedback_for_buyer',
|
|
3184
|
+
description: 'Leave feedback for a buyer',
|
|
3185
|
+
inputSchema: {
|
|
3186
|
+
feedbackData: feedbackDataSchema.describe('Feedback details including rating and comment'),
|
|
3187
|
+
},
|
|
3188
|
+
title: 'Leave Feedback For Buyer',
|
|
3189
|
+
outputSchema: {
|
|
3190
|
+
type: 'object',
|
|
3191
|
+
properties: {
|
|
3192
|
+
success: { type: 'boolean' },
|
|
3193
|
+
data: { type: 'object' }
|
|
3194
|
+
}
|
|
3195
|
+
},
|
|
3196
|
+
annotations: {
|
|
3197
|
+
title: 'Leave Feedback For Buyer',
|
|
3198
|
+
idempotentHint: true
|
|
3199
|
+
},
|
|
3200
|
+
_meta: {
|
|
3201
|
+
category: 'communication',
|
|
3202
|
+
version: '1.0.0'
|
|
3203
|
+
}
|
|
3204
|
+
},
|
|
3205
|
+
{
|
|
3206
|
+
name: 'ebay_get_feedback_summary',
|
|
3207
|
+
description: 'Get feedback summary for the seller',
|
|
3208
|
+
inputSchema: {},
|
|
3209
|
+
title: 'Get Feedback Summary',
|
|
3210
|
+
outputSchema: {
|
|
3211
|
+
type: 'object',
|
|
3212
|
+
properties: {
|
|
3213
|
+
success: { type: 'boolean' },
|
|
3214
|
+
data: { type: 'object' }
|
|
3215
|
+
}
|
|
3216
|
+
},
|
|
3217
|
+
annotations: {
|
|
3218
|
+
title: 'Get Feedback Summary',
|
|
3219
|
+
readOnlyHint: true
|
|
3220
|
+
},
|
|
3221
|
+
_meta: {
|
|
3222
|
+
category: 'communication',
|
|
3223
|
+
version: '1.0.0'
|
|
3224
|
+
}
|
|
3225
|
+
},
|
|
3226
|
+
];
|
|
3227
|
+
export const otherApiTools = [
|
|
3228
|
+
{
|
|
3229
|
+
name: 'ebay_get_user',
|
|
3230
|
+
description: 'Get user identity information',
|
|
3231
|
+
inputSchema: {},
|
|
3232
|
+
title: 'Get User',
|
|
3233
|
+
outputSchema: {
|
|
3234
|
+
type: 'object',
|
|
3235
|
+
properties: {
|
|
3236
|
+
success: { type: 'boolean' },
|
|
3237
|
+
data: { type: 'object' }
|
|
3238
|
+
}
|
|
3239
|
+
},
|
|
3240
|
+
annotations: {
|
|
3241
|
+
title: 'Get User',
|
|
3242
|
+
readOnlyHint: true
|
|
3243
|
+
},
|
|
3244
|
+
_meta: {
|
|
3245
|
+
category: 'other',
|
|
3246
|
+
version: '1.0.0'
|
|
3247
|
+
}
|
|
3248
|
+
},
|
|
3249
|
+
{
|
|
3250
|
+
name: 'ebay_get_listing_violations',
|
|
3251
|
+
description: 'Get listing violations for the seller',
|
|
3252
|
+
inputSchema: {
|
|
3253
|
+
complianceType: z.string().optional().describe('Type of compliance violation'),
|
|
3254
|
+
offset: z.number().optional().describe('Number of violations to skip'),
|
|
3255
|
+
limit: z.number().optional().describe('Number of violations to return'),
|
|
3256
|
+
},
|
|
3257
|
+
title: 'Get Listing Violations',
|
|
3258
|
+
outputSchema: {
|
|
3259
|
+
type: 'object',
|
|
3260
|
+
properties: {
|
|
3261
|
+
success: { type: 'boolean' },
|
|
3262
|
+
data: { type: 'object' }
|
|
3263
|
+
}
|
|
3264
|
+
},
|
|
3265
|
+
annotations: {
|
|
3266
|
+
title: 'Get Listing Violations',
|
|
3267
|
+
readOnlyHint: true
|
|
3268
|
+
},
|
|
3269
|
+
_meta: {
|
|
3270
|
+
category: 'other',
|
|
3271
|
+
version: '1.0.0'
|
|
3272
|
+
}
|
|
3273
|
+
},
|
|
3274
|
+
{
|
|
3275
|
+
name: 'ebay_get_listing_violations_summary',
|
|
3276
|
+
description: 'Get summary of listing violations',
|
|
3277
|
+
inputSchema: {
|
|
3278
|
+
complianceType: z.string().optional().describe('Type of compliance violation'),
|
|
3279
|
+
},
|
|
3280
|
+
title: 'Get Listing Violations Summary',
|
|
3281
|
+
outputSchema: {
|
|
3282
|
+
type: 'object',
|
|
3283
|
+
properties: {
|
|
3284
|
+
success: { type: 'boolean' },
|
|
3285
|
+
data: { type: 'object' }
|
|
3286
|
+
}
|
|
3287
|
+
},
|
|
3288
|
+
annotations: {
|
|
3289
|
+
title: 'Get Listing Violations Summary',
|
|
3290
|
+
readOnlyHint: true
|
|
3291
|
+
},
|
|
3292
|
+
_meta: {
|
|
3293
|
+
category: 'other',
|
|
3294
|
+
version: '1.0.0'
|
|
3295
|
+
}
|
|
3296
|
+
},
|
|
3297
|
+
{
|
|
3298
|
+
name: 'ebay_suppress_violation',
|
|
3299
|
+
description: 'Suppress a listing violation',
|
|
3300
|
+
inputSchema: {
|
|
3301
|
+
listingViolationId: z.string().describe('The violation ID to suppress'),
|
|
3302
|
+
},
|
|
3303
|
+
title: 'Suppress Violation',
|
|
3304
|
+
outputSchema: {
|
|
3305
|
+
type: 'object',
|
|
3306
|
+
properties: {
|
|
3307
|
+
success: { type: 'boolean' },
|
|
3308
|
+
data: { type: 'object' }
|
|
3309
|
+
}
|
|
3310
|
+
},
|
|
3311
|
+
annotations: {
|
|
3312
|
+
title: 'Suppress Violation',
|
|
3313
|
+
destructiveHint: true
|
|
3314
|
+
},
|
|
3315
|
+
_meta: {
|
|
3316
|
+
category: 'other',
|
|
3317
|
+
version: '1.0.0'
|
|
3318
|
+
}
|
|
3319
|
+
},
|
|
3320
|
+
{
|
|
3321
|
+
name: 'ebay_create_vero_report',
|
|
3322
|
+
description: '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.',
|
|
3323
|
+
inputSchema: {
|
|
3324
|
+
reportData: veroReportDataSchema.describe('VERO report data containing item details and intellectual property violation information'),
|
|
3325
|
+
},
|
|
3326
|
+
title: 'Create Vero Report',
|
|
3327
|
+
outputSchema: {
|
|
3328
|
+
type: 'object',
|
|
3329
|
+
properties: {
|
|
3330
|
+
success: { type: 'boolean' },
|
|
3331
|
+
data: { type: 'object' }
|
|
3332
|
+
}
|
|
3333
|
+
},
|
|
3334
|
+
annotations: {
|
|
3335
|
+
title: 'Create Vero Report',
|
|
3336
|
+
idempotentHint: true
|
|
3337
|
+
},
|
|
3338
|
+
_meta: {
|
|
3339
|
+
category: 'other',
|
|
3340
|
+
version: '1.0.0'
|
|
3341
|
+
}
|
|
3342
|
+
},
|
|
3343
|
+
{
|
|
3344
|
+
name: 'ebay_get_vero_report',
|
|
3345
|
+
description: 'Get a specific VERO report by ID',
|
|
3346
|
+
inputSchema: {
|
|
3347
|
+
veroReportId: z.string().min(1).describe('The unique identifier of the VERO report'),
|
|
3348
|
+
},
|
|
3349
|
+
title: 'Get Vero Report',
|
|
3350
|
+
outputSchema: {
|
|
3351
|
+
type: 'object',
|
|
3352
|
+
properties: {
|
|
3353
|
+
success: { type: 'boolean' },
|
|
3354
|
+
data: { type: 'object' }
|
|
3355
|
+
}
|
|
3356
|
+
},
|
|
3357
|
+
annotations: {
|
|
3358
|
+
title: 'Get Vero Report',
|
|
3359
|
+
readOnlyHint: true
|
|
3360
|
+
},
|
|
3361
|
+
_meta: {
|
|
3362
|
+
category: 'other',
|
|
3363
|
+
version: '1.0.0'
|
|
3364
|
+
}
|
|
3365
|
+
},
|
|
3366
|
+
{
|
|
3367
|
+
name: 'ebay_get_vero_report_items',
|
|
3368
|
+
description: 'Get VERO report items (listings reported for intellectual property infringement). Supports filtering, pagination via limit and offset parameters.',
|
|
3369
|
+
inputSchema: {
|
|
3370
|
+
filter: z.string().optional().describe('Filter criteria for the query (e.g., date range)'),
|
|
3371
|
+
limit: z.number().optional().describe('Maximum number of items to return'),
|
|
3372
|
+
offset: z.number().optional().describe('Number of items to skip for pagination'),
|
|
3373
|
+
},
|
|
3374
|
+
title: 'Get Vero Report Items',
|
|
3375
|
+
outputSchema: {
|
|
3376
|
+
type: 'object',
|
|
3377
|
+
properties: {
|
|
3378
|
+
success: { type: 'boolean' },
|
|
3379
|
+
data: { type: 'object' }
|
|
3380
|
+
}
|
|
3381
|
+
},
|
|
3382
|
+
annotations: {
|
|
3383
|
+
title: 'Get Vero Report Items',
|
|
3384
|
+
readOnlyHint: true
|
|
3385
|
+
},
|
|
3386
|
+
_meta: {
|
|
3387
|
+
category: 'other',
|
|
3388
|
+
version: '1.0.0'
|
|
3389
|
+
}
|
|
3390
|
+
},
|
|
3391
|
+
{
|
|
3392
|
+
name: 'ebay_get_vero_reason_code',
|
|
3393
|
+
description: 'Get a specific VERO reason code by ID. Reason codes categorize the types of intellectual property violations.',
|
|
3394
|
+
inputSchema: {
|
|
3395
|
+
veroReasonCodeId: z.string().min(1).describe('The unique identifier of the VERO reason code'),
|
|
3396
|
+
},
|
|
3397
|
+
title: 'Get Vero Reason Code',
|
|
3398
|
+
outputSchema: {
|
|
3399
|
+
type: 'object',
|
|
3400
|
+
properties: {
|
|
3401
|
+
success: { type: 'boolean' },
|
|
3402
|
+
data: { type: 'object' }
|
|
3403
|
+
}
|
|
3404
|
+
},
|
|
3405
|
+
annotations: {
|
|
3406
|
+
title: 'Get Vero Reason Code',
|
|
3407
|
+
readOnlyHint: true
|
|
3408
|
+
},
|
|
3409
|
+
_meta: {
|
|
3410
|
+
category: 'other',
|
|
3411
|
+
version: '1.0.0'
|
|
3412
|
+
}
|
|
3413
|
+
},
|
|
3414
|
+
{
|
|
3415
|
+
name: 'ebay_get_vero_reason_codes',
|
|
3416
|
+
description: 'Get all available VERO reason codes. These codes are used when creating VERO reports to specify the type of intellectual property violation.',
|
|
3417
|
+
inputSchema: {},
|
|
3418
|
+
title: 'Get Vero Reason Codes',
|
|
3419
|
+
outputSchema: {
|
|
3420
|
+
type: 'object',
|
|
3421
|
+
properties: {
|
|
3422
|
+
success: { type: 'boolean' },
|
|
3423
|
+
data: { type: 'object' }
|
|
3424
|
+
}
|
|
3425
|
+
},
|
|
3426
|
+
annotations: {
|
|
3427
|
+
title: 'Get Vero Reason Codes',
|
|
3428
|
+
readOnlyHint: true
|
|
3429
|
+
},
|
|
3430
|
+
_meta: {
|
|
3431
|
+
category: 'other',
|
|
3432
|
+
version: '1.0.0'
|
|
3433
|
+
}
|
|
3434
|
+
},
|
|
3435
|
+
{
|
|
3436
|
+
name: 'ebay_translate',
|
|
3437
|
+
description: 'Translate listing text',
|
|
3438
|
+
inputSchema: {
|
|
3439
|
+
from: z.string().describe('Source language code'),
|
|
3440
|
+
to: z.string().describe('Target language code'),
|
|
3441
|
+
translationContext: z
|
|
3442
|
+
.string()
|
|
3443
|
+
.describe('Translation context (e.g., ITEM_TITLE, ITEM_DESCRIPTION)'),
|
|
3444
|
+
text: z.array(z.string()).describe('Array of text to translate'),
|
|
3445
|
+
},
|
|
3446
|
+
title: 'Translate',
|
|
3447
|
+
outputSchema: {
|
|
3448
|
+
type: 'object',
|
|
3449
|
+
properties: {
|
|
3450
|
+
success: { type: 'boolean' },
|
|
3451
|
+
data: { type: 'object' }
|
|
3452
|
+
}
|
|
3453
|
+
},
|
|
3454
|
+
annotations: {
|
|
3455
|
+
title: 'Translate',
|
|
3456
|
+
idempotentHint: true
|
|
3457
|
+
},
|
|
3458
|
+
_meta: {
|
|
3459
|
+
category: 'other',
|
|
3460
|
+
version: '1.0.0'
|
|
3461
|
+
}
|
|
3462
|
+
},
|
|
3463
|
+
{
|
|
3464
|
+
name: 'ebay_create_shipping_quote',
|
|
3465
|
+
description: 'Create a shipping quote for international shipping',
|
|
3466
|
+
inputSchema: {
|
|
3467
|
+
shippingQuoteRequest: shippingQuoteRequestSchema.describe('Shipping quote request details'),
|
|
3468
|
+
},
|
|
3469
|
+
title: 'Create Shipping Quote',
|
|
3470
|
+
outputSchema: {
|
|
3471
|
+
type: 'object',
|
|
3472
|
+
properties: {
|
|
3473
|
+
success: { type: 'boolean' },
|
|
3474
|
+
data: { type: 'object' }
|
|
3475
|
+
}
|
|
3476
|
+
},
|
|
3477
|
+
annotations: {
|
|
3478
|
+
title: 'Create Shipping Quote',
|
|
3479
|
+
idempotentHint: true
|
|
3480
|
+
},
|
|
3481
|
+
_meta: {
|
|
3482
|
+
category: 'other',
|
|
3483
|
+
version: '1.0.0'
|
|
3484
|
+
}
|
|
3485
|
+
},
|
|
3486
|
+
{
|
|
3487
|
+
name: 'ebay_get_shipping_quote',
|
|
3488
|
+
description: 'Get a shipping quote by ID',
|
|
3489
|
+
inputSchema: {
|
|
3490
|
+
shippingQuoteId: z.string().describe('The shipping quote ID'),
|
|
3491
|
+
},
|
|
3492
|
+
title: 'Get Shipping Quote',
|
|
3493
|
+
outputSchema: {
|
|
3494
|
+
type: 'object',
|
|
3495
|
+
properties: {
|
|
3496
|
+
success: { type: 'boolean' },
|
|
3497
|
+
data: { type: 'object' }
|
|
3498
|
+
}
|
|
3499
|
+
},
|
|
3500
|
+
annotations: {
|
|
3501
|
+
title: 'Get Shipping Quote',
|
|
3502
|
+
readOnlyHint: true
|
|
3503
|
+
},
|
|
3504
|
+
_meta: {
|
|
3505
|
+
category: 'other',
|
|
3506
|
+
version: '1.0.0'
|
|
3507
|
+
}
|
|
3508
|
+
},
|
|
3509
|
+
];
|
|
3510
|
+
export const claudeTools = [
|
|
3511
|
+
{
|
|
3512
|
+
name: 'SearchClaudeCodeDocs',
|
|
3513
|
+
description: 'Search across the Claude Code Docs knowledge base to find relevant information, code examples, API references, and guides. Use this tool when you need to answer questions about Claude Code Docs, find specific documentation, understand how features work, or locate implementation details. The search returns contextual content with titles and direct links to the documentation pages.',
|
|
3514
|
+
inputSchema: {
|
|
3515
|
+
query: z.string().describe('A query to search the content with.'),
|
|
3516
|
+
},
|
|
3517
|
+
title: 'Searchclaudecodedocs',
|
|
3518
|
+
outputSchema: {
|
|
3519
|
+
type: 'object',
|
|
3520
|
+
properties: {
|
|
3521
|
+
success: { type: 'boolean' },
|
|
3522
|
+
data: { type: 'object' }
|
|
3523
|
+
}
|
|
3524
|
+
},
|
|
3525
|
+
annotations: {
|
|
3526
|
+
title: 'Searchclaudecodedocs',
|
|
3527
|
+
readOnlyHint: true
|
|
3528
|
+
},
|
|
3529
|
+
_meta: {
|
|
3530
|
+
category: 'claude',
|
|
3531
|
+
version: '1.0.0'
|
|
3532
|
+
}
|
|
3533
|
+
},
|
|
3534
|
+
];
|