ebay-mcp 1.13.2 → 1.14.0

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.
Files changed (169) hide show
  1. package/README.de.md +3 -3
  2. package/README.es.md +3 -3
  3. package/README.fr.md +3 -3
  4. package/README.ja.md +3 -3
  5. package/README.ko.md +3 -3
  6. package/README.md +163 -41
  7. package/README.pt-BR.md +3 -3
  8. package/README.ru.md +3 -3
  9. package/README.zh-CN.md +3 -3
  10. package/build/api/account-management/account.js +633 -297
  11. package/build/api/analytics-and-report/analytics.js +111 -65
  12. package/build/api/client.js +199 -140
  13. package/build/api/clientRequestError.js +23 -0
  14. package/build/api/clientTrading.js +213 -0
  15. package/build/api/clientTradingError.js +4 -0
  16. package/build/api/communication/feedback.js +147 -59
  17. package/build/api/communication/message.js +134 -81
  18. package/build/api/communication/negotiation.js +65 -53
  19. package/build/api/communication/notification.js +458 -164
  20. package/build/api/developer/developer.js +99 -45
  21. package/build/api/index.js +23 -8
  22. package/build/api/listing-management/inventory.js +884 -338
  23. package/build/api/listing-metadata/metadata.js +416 -170
  24. package/build/api/listing-metadata/taxonomy.js +187 -42
  25. package/build/api/marketing-and-promotions/marketing.js +1392 -598
  26. package/build/api/marketing-and-promotions/recommendation.js +49 -24
  27. package/build/api/order-management/dispute.js +226 -45
  28. package/build/api/order-management/fulfillment.js +144 -71
  29. package/build/api/order-management/orderIssueHelpers.js +61 -0
  30. package/build/api/other/compliance.js +50 -38
  31. package/build/api/other/edelivery.js +603 -159
  32. package/build/api/other/finding.js +280 -0
  33. package/build/api/other/identity.js +30 -15
  34. package/build/api/other/translation.js +29 -14
  35. package/build/api/other/vero.js +113 -27
  36. package/build/api/rateLimitTracker.js +55 -0
  37. package/build/api/shared/request.js +189 -98
  38. package/build/api/trading/trading.js +154 -87
  39. package/build/auth/credentialSession.js +250 -0
  40. package/build/auth/oauth.js +298 -171
  41. package/build/auth/{oauth-metadata.js → oauthMetadata.js} +22 -6
  42. package/build/auth/oauthMiddleware.js +104 -0
  43. package/build/auth/{scope-utils.js → scopeUtils.js} +101 -28
  44. package/build/auth/tokenVerifier.js +243 -0
  45. package/build/auth/tokenVerifierError.js +21 -0
  46. package/build/config/environment.js +148 -113
  47. package/build/config/{tool-families.js → toolFamilies.js} +30 -14
  48. package/build/index.js +25 -19
  49. package/build/mcp/{http-transport.js → httpTransport.js} +102 -52
  50. package/build/mcp/readOnlyFilter.js +67 -0
  51. package/build/mcp/runtime.js +31 -13
  52. package/build/mcp/{tool-gating.js → toolGating.js} +77 -49
  53. package/build/mcp/{ui-bridge.js → uiBridge.js} +80 -23
  54. package/build/schemas/account-management/account.js +144 -6
  55. package/build/schemas/analytics/analytics.js +33 -19
  56. package/build/schemas/communication/messages.js +12 -42
  57. package/build/schemas/developer/developer.js +135 -0
  58. package/build/schemas/fulfillment/orders.js +183 -21
  59. package/build/schemas/index.js +27 -19
  60. package/build/schemas/inventory-management/inventory.js +17 -9
  61. package/build/schemas/marketing/marketing.js +480 -25
  62. package/build/schemas/metadata/metadata.js +11 -6
  63. package/build/schemas/other/finding.js +27 -0
  64. package/build/schemas/other/otherApis.js +424 -0
  65. package/build/schemas/taxonomy/taxonomy.js +11 -5
  66. package/build/scripts/{auto-setup.js → autoSetup.js} +87 -74
  67. package/build/scripts/{build-ui.js → buildUi.js} +6 -1
  68. package/build/scripts/{dev-sync.js → devSync.js} +169 -110
  69. package/build/scripts/diagnostics.js +52 -44
  70. package/build/scripts/{download-specs.js → downloadSpecs.js} +29 -21
  71. package/build/scripts/{interactive-setup.js → interactiveSetup.js} +84 -78
  72. package/build/scripts/setup.js +241 -178
  73. package/build/scripts/{setup-shared.js → setupShared.js} +29 -7
  74. package/build/scripts/skills.js +35 -27
  75. package/build/scripts/updateApiStatusDoc.js +71 -0
  76. package/build/serverHttp.js +90 -0
  77. package/build/skills/content.js +124 -118
  78. package/build/skills/index.js +22 -10
  79. package/build/skills/install.js +21 -10
  80. package/build/skills/markers.js +50 -15
  81. package/build/skills/{registry-snapshot.js → registrySnapshot.js} +8 -2
  82. package/build/skills/render.js +41 -14
  83. package/build/skills/targets.js +49 -17
  84. package/build/tools/categories/account.js +166 -264
  85. package/build/tools/categories/analytics.js +11 -22
  86. package/build/tools/categories/browse.js +17 -0
  87. package/build/tools/categories/communication.js +124 -399
  88. package/build/tools/categories/connector.js +23 -20
  89. package/build/tools/categories/developer.js +46 -159
  90. package/build/tools/categories/fulfillment.js +84 -215
  91. package/build/tools/categories/index.js +6 -14
  92. package/build/tools/categories/inventory.js +238 -293
  93. package/build/tools/categories/marketing.js +677 -39
  94. package/build/tools/categories/metadata.js +190 -117
  95. package/build/tools/categories/other.js +81 -208
  96. package/build/tools/categories/taxonomy.js +29 -20
  97. package/build/tools/categories/{token-management.js → tokenManagement.js} +187 -192
  98. package/build/tools/categories/trading.js +16 -47
  99. package/build/tools/contracts.js +34 -24
  100. package/build/tools/{define-tool.js → defineTool.js} +44 -29
  101. package/build/tools/registry.js +87 -29
  102. package/build/tools/schemas.js +3 -57
  103. package/build/tools/ui/archetypes.js +1 -0
  104. package/build/tools/ui/{map-helpers.js → mapHelpers.js} +69 -19
  105. package/build/tools/ui/maps.js +294 -80
  106. package/build/types/index.js +1 -1
  107. package/build/ui/card.html +14 -14
  108. package/build/ui/chart.html +14 -14
  109. package/build/ui/stat.html +87 -0
  110. package/build/ui/table.html +14 -14
  111. package/build/utils/apiStatusFeed.js +95 -0
  112. package/build/utils/cliOutput.js +15 -0
  113. package/build/utils/cliUi.js +108 -0
  114. package/build/utils/communication/feedback.js +57 -77
  115. package/build/utils/communication/message.js +69 -98
  116. package/build/utils/communication/negotiation.js +30 -57
  117. package/build/utils/communication/notification.js +112 -252
  118. package/build/utils/{date-converter.js → dateConverter.js} +62 -30
  119. package/build/utils/effectSchema.js +203 -0
  120. package/build/utils/effectSchemaAdapter.js +121 -0
  121. package/build/utils/effectSchemaChainMethods.js +146 -0
  122. package/build/utils/effectSchemaRefinements.js +104 -0
  123. package/build/utils/effectSchemaStringMethods.js +63 -0
  124. package/build/utils/effectSchemaTypes.js +47 -0
  125. package/build/utils/{env-parser.js → envParser.js} +10 -2
  126. package/build/utils/errors.js +7 -3
  127. package/build/utils/http.js +148 -89
  128. package/build/utils/{llm-client-detector.js → llmClientDetector.js} +295 -274
  129. package/build/utils/logger.js +127 -51
  130. package/build/utils/{oauth-helper.js → oauthHelper.js} +127 -90
  131. package/build/utils/other/compliance.js +18 -38
  132. package/build/utils/other/identity.js +2 -2
  133. package/build/utils/other/translation.js +4 -4
  134. package/build/utils/other/vero.js +36 -20
  135. package/build/utils/schemaHelpers.js +22 -0
  136. package/build/utils/scopeHelper.js +270 -0
  137. package/build/utils/securityChecker.js +316 -0
  138. package/build/utils/{setup-validator.js → setupValidator.js} +113 -94
  139. package/build/utils/{setup-wizard.js → setupWizard.js} +57 -46
  140. package/build/utils/{token-utils.js → tokenUtils.js} +2 -2
  141. package/build/utils/trading/trading.js +35 -0
  142. package/build/utils/typeGuards.js +12 -0
  143. package/build/utils/version.js +65 -29
  144. package/package.json +10 -8
  145. package/build/api/client-trading.js +0 -124
  146. package/build/api/communication/shared.js +0 -59
  147. package/build/api/shared/query-params.js +0 -16
  148. package/build/auth/credential-session.js +0 -166
  149. package/build/auth/oauth-middleware.js +0 -100
  150. package/build/auth/token-verifier.js +0 -186
  151. package/build/schemas/other/other-apis.js +0 -390
  152. package/build/scripts/update-api-status-doc.js +0 -44
  153. package/build/server-http.js +0 -85
  154. package/build/tools/definitions/marketing.js +0 -1381
  155. package/build/tools/tool-handlers/marketing.js +0 -312
  156. package/build/utils/account-management/account.js +0 -818
  157. package/build/utils/api-status-feed.js +0 -84
  158. package/build/utils/cli-ui.js +0 -47
  159. package/build/utils/order-management/dispute.js +0 -369
  160. package/build/utils/order-management/fulfillment.js +0 -205
  161. package/build/utils/other/edelivery.js +0 -235
  162. package/build/utils/schema-helpers.js +0 -13
  163. package/build/utils/scope-helper.js +0 -207
  164. package/build/utils/security-checker.js +0 -248
  165. package/build/utils/type-guards.js +0 -6
  166. /package/build/auth/{oauth-types.js → oauthTypes.js} +0 -0
  167. /package/build/{server-http.d.ts → serverHttp.d.ts} +0 -0
  168. /package/build/tools/ui/{view-models.js → viewModels.js} +0 -0
  169. /package/build/types/{ebay-enums.js → ebayEnums.js} +0 -0
@@ -1,17 +1,13 @@
1
- import { z } from 'zod';
2
- import { defineTool } from '../../tools/define-tool.js';
1
+ import { Effect } from 'effect';
2
+ import { findSellerStandardsProfilesInputSchema, getCustomerServiceMetricInputSchema, getSellerStandardsProfileInputSchema, getTrafficReportInputSchema, } from '../../schemas/analytics/analytics.js';
3
+ import { defineTool } from '../../tools/defineTool.js';
3
4
  import { mapCustomerServiceMetricToChart, mapStandardsProfileToCard, mapTrafficReportToChart, } from '../../tools/ui/maps.js';
4
5
  /** Analytics API tools for seller traffic and performance reporting. */
5
6
  export const analyticsEntries = [
6
7
  defineTool({
7
8
  name: 'ebay_get_traffic_report',
8
9
  description: 'Get traffic report for listings',
9
- inputSchema: {
10
- dimension: z.string().describe('Dimension for the report (e.g., LISTING, DAY)'),
11
- filter: z.string().describe('Filter criteria'),
12
- metric: z.string().describe('Metrics to retrieve (e.g., CLICK_THROUGH_RATE, IMPRESSION)'),
13
- sort: z.string().optional().describe('Sort order'),
14
- },
10
+ inputSchema: getTrafficReportInputSchema.shape,
15
11
  outputSchema: {
16
12
  type: 'object',
17
13
  properties: {
@@ -20,13 +16,13 @@ export const analyticsEntries = [
20
16
  },
21
17
  description: 'Traffic report data',
22
18
  },
23
- handler: (api, args) => api.analytics.getTrafficReport(args.dimension, args.filter, args.metric, args.sort),
19
+ handler: (api, args) => Effect.runPromise(api.analytics.getTrafficReport(args)),
24
20
  ui: { archetype: 'chart', map: mapTrafficReportToChart },
25
21
  }),
26
22
  defineTool({
27
23
  name: 'ebay_find_seller_standards_profiles',
28
24
  description: 'Find all seller standards profiles',
29
- inputSchema: {},
25
+ inputSchema: findSellerStandardsProfilesInputSchema.shape,
30
26
  outputSchema: {
31
27
  type: 'object',
32
28
  properties: {
@@ -34,15 +30,12 @@ export const analyticsEntries = [
34
30
  },
35
31
  description: 'Seller standards profiles',
36
32
  },
37
- handler: (api) => api.analytics.findSellerStandardsProfiles(),
33
+ handler: (api, args) => Effect.runPromise(api.analytics.findSellerStandardsProfiles(args)),
38
34
  }),
39
35
  defineTool({
40
36
  name: 'ebay_get_seller_standards_profile',
41
37
  description: 'Get a specific seller standards profile',
42
- inputSchema: {
43
- program: z.string().describe('The program (e.g., CUSTOMER_SERVICE)'),
44
- cycle: z.string().describe('The cycle (e.g., CURRENT)'),
45
- },
38
+ inputSchema: getSellerStandardsProfileInputSchema.shape,
46
39
  outputSchema: {
47
40
  type: 'object',
48
41
  properties: {
@@ -52,17 +45,13 @@ export const analyticsEntries = [
52
45
  },
53
46
  description: 'Seller standards profile data',
54
47
  },
55
- handler: (api, args) => api.analytics.getSellerStandardsProfile(args.program, args.cycle),
48
+ handler: (api, args) => Effect.runPromise(api.analytics.getSellerStandardsProfile(args)),
56
49
  ui: { archetype: 'card', map: mapStandardsProfileToCard },
57
50
  }),
58
51
  defineTool({
59
52
  name: 'ebay_get_customer_service_metric',
60
53
  description: 'Get customer service metrics',
61
- inputSchema: {
62
- customerServiceMetricType: z.string().describe('Type of metric'),
63
- evaluationType: z.string().describe('Evaluation type'),
64
- evaluationMarketplaceId: z.string().describe('Marketplace ID for evaluation'),
65
- },
54
+ inputSchema: getCustomerServiceMetricInputSchema.shape,
66
55
  outputSchema: {
67
56
  type: 'object',
68
57
  properties: {
@@ -70,7 +59,7 @@ export const analyticsEntries = [
70
59
  },
71
60
  description: 'Customer service metric data',
72
61
  },
73
- handler: (api, args) => api.analytics.getCustomerServiceMetric(args.customerServiceMetricType, args.evaluationType, args.evaluationMarketplaceId),
62
+ handler: (api, args) => Effect.runPromise(api.analytics.getCustomerServiceMetric(args)),
74
63
  ui: { archetype: 'chart', map: mapCustomerServiceMetricToChart },
75
64
  }),
76
65
  ];
@@ -0,0 +1,17 @@
1
+ import { findCompletedItemsInputSchema } from '../../schemas/other/finding.js';
2
+ import { defineTool } from '../../tools/defineTool.js';
3
+ import { Effect } from 'effect';
4
+ /**
5
+ * Browse / Finding tools for public marketplace search data.
6
+ *
7
+ * Gated as family `browse` via `EBAY_MCP_TOOLS=browse`.
8
+ */
9
+ export const browseEntries = [
10
+ defineTool({
11
+ name: 'ebay_find_completed_items',
12
+ description: 'Search eBay sold/completed listings for pricing research (sold comps). Uses the Finding API findCompletedItems operation with app credentials (SECURITY-APPNAME / EBAY_CLIENT_ID). Returns cleaned sold items: itemId, title, price, shippingCost, soldDate, condition, and listingUrl. Useful for market price research before listing or repricing. App credentials are sufficient for this public search data when OAuth is available.',
13
+ inputSchema: findCompletedItemsInputSchema.shape,
14
+ annotations: { readOnlyHint: true },
15
+ handler: (api, args) => Effect.runPromise(api.finding.findCompletedItems(args)),
16
+ }),
17
+ ];