@vendure/mcp-plugin 3.8.0-minor-bootstrap.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 (389) hide show
  1. package/lib/api/api-extensions.d.ts +2 -0
  2. package/lib/api/api-extensions.js +239 -0
  3. package/lib/api/api-extensions.js.map +1 -0
  4. package/lib/api/mcp-actor.service.d.ts +19 -0
  5. package/lib/api/mcp-actor.service.js +52 -0
  6. package/lib/api/mcp-actor.service.js.map +1 -0
  7. package/lib/api/mcp-admin.resolver.d.ts +105 -0
  8. package/lib/api/mcp-admin.resolver.js +463 -0
  9. package/lib/api/mcp-admin.resolver.js.map +1 -0
  10. package/lib/api/mcp-shop.resolver.d.ts +25 -0
  11. package/lib/api/mcp-shop.resolver.js +74 -0
  12. package/lib/api/mcp-shop.resolver.js.map +1 -0
  13. package/lib/check-options.d.ts +7 -0
  14. package/lib/check-options.js +130 -0
  15. package/lib/check-options.js.map +1 -0
  16. package/lib/constants.d.ts +48 -0
  17. package/lib/constants.js +72 -0
  18. package/lib/constants.js.map +1 -0
  19. package/lib/delete-in-batches.d.ts +5 -0
  20. package/lib/delete-in-batches.js +28 -0
  21. package/lib/delete-in-batches.js.map +1 -0
  22. package/lib/entities/index.d.ts +5 -0
  23. package/lib/entities/index.js +22 -0
  24. package/lib/entities/index.js.map +1 -0
  25. package/lib/entities/mcp-authorization-code.entity.d.ts +33 -0
  26. package/lib/entities/mcp-authorization-code.entity.js +77 -0
  27. package/lib/entities/mcp-authorization-code.entity.js.map +1 -0
  28. package/lib/entities/mcp-authorization-request.entity.d.ts +31 -0
  29. package/lib/entities/mcp-authorization-request.entity.js +73 -0
  30. package/lib/entities/mcp-authorization-request.entity.js.map +1 -0
  31. package/lib/entities/mcp-oauth-client.entity.d.ts +56 -0
  32. package/lib/entities/mcp-oauth-client.entity.js +70 -0
  33. package/lib/entities/mcp-oauth-client.entity.js.map +1 -0
  34. package/lib/entities/mcp-oauth-grant.entity.d.ts +77 -0
  35. package/lib/entities/mcp-oauth-grant.entity.js +121 -0
  36. package/lib/entities/mcp-oauth-grant.entity.js.map +1 -0
  37. package/lib/entities/mcp-tool-call-log.entity.d.ts +50 -0
  38. package/lib/entities/mcp-tool-call-log.entity.js +101 -0
  39. package/lib/entities/mcp-tool-call-log.entity.js.map +1 -0
  40. package/lib/events/mcp-tool-call.event.d.ts +17 -0
  41. package/lib/events/mcp-tool-call.event.js +23 -0
  42. package/lib/events/mcp-tool-call.event.js.map +1 -0
  43. package/lib/get-client-ip.d.ts +2 -0
  44. package/lib/get-client-ip.js +10 -0
  45. package/lib/get-client-ip.js.map +1 -0
  46. package/lib/get-language-code.d.ts +3 -0
  47. package/lib/get-language-code.js +12 -0
  48. package/lib/get-language-code.js.map +1 -0
  49. package/lib/index.d.ts +6 -0
  50. package/lib/index.js +26 -0
  51. package/lib/index.js.map +1 -0
  52. package/lib/internal-types.d.ts +27 -0
  53. package/lib/internal-types.js +3 -0
  54. package/lib/internal-types.js.map +1 -0
  55. package/lib/logging/mcp-tool-call-log-retention.service.d.ts +8 -0
  56. package/lib/logging/mcp-tool-call-log-retention.service.js +54 -0
  57. package/lib/logging/mcp-tool-call-log-retention.service.js.map +1 -0
  58. package/lib/logging/mcp-tool-call-log.service.d.ts +24 -0
  59. package/lib/logging/mcp-tool-call-log.service.js +128 -0
  60. package/lib/logging/mcp-tool-call-log.service.js.map +1 -0
  61. package/lib/oauth/cimd/cimd-client-resolver.service.d.ts +18 -0
  62. package/lib/oauth/cimd/cimd-client-resolver.service.js +109 -0
  63. package/lib/oauth/cimd/cimd-client-resolver.service.js.map +1 -0
  64. package/lib/oauth/cimd/cimd-document.d.ts +11 -0
  65. package/lib/oauth/cimd/cimd-document.js +66 -0
  66. package/lib/oauth/cimd/cimd-document.js.map +1 -0
  67. package/lib/oauth/cimd/cimd-fetch.d.ts +14 -0
  68. package/lib/oauth/cimd/cimd-fetch.js +192 -0
  69. package/lib/oauth/cimd/cimd-fetch.js.map +1 -0
  70. package/lib/oauth/cimd/cimd-url.d.ts +5 -0
  71. package/lib/oauth/cimd/cimd-url.js +94 -0
  72. package/lib/oauth/cimd/cimd-url.js.map +1 -0
  73. package/lib/oauth/grant-session.service.d.ts +19 -0
  74. package/lib/oauth/grant-session.service.js +141 -0
  75. package/lib/oauth/grant-session.service.js.map +1 -0
  76. package/lib/oauth/oauth-error.d.ts +18 -0
  77. package/lib/oauth/oauth-error.js +60 -0
  78. package/lib/oauth/oauth-error.js.map +1 -0
  79. package/lib/oauth/oauth-metadata.service.d.ts +34 -0
  80. package/lib/oauth/oauth-metadata.service.js +107 -0
  81. package/lib/oauth/oauth-metadata.service.js.map +1 -0
  82. package/lib/oauth/oauth-retention.service.d.ts +23 -0
  83. package/lib/oauth/oauth-retention.service.js +103 -0
  84. package/lib/oauth/oauth-retention.service.js.map +1 -0
  85. package/lib/oauth/oauth-types.d.ts +61 -0
  86. package/lib/oauth/oauth-types.js +32 -0
  87. package/lib/oauth/oauth-types.js.map +1 -0
  88. package/lib/oauth/oauth-utils.d.ts +20 -0
  89. package/lib/oauth/oauth-utils.js +111 -0
  90. package/lib/oauth/oauth-utils.js.map +1 -0
  91. package/lib/oauth/oauth.controller.d.ts +31 -0
  92. package/lib/oauth/oauth.controller.js +132 -0
  93. package/lib/oauth/oauth.controller.js.map +1 -0
  94. package/lib/oauth/oauth.service.d.ts +69 -0
  95. package/lib/oauth/oauth.service.js +650 -0
  96. package/lib/oauth/oauth.service.js.map +1 -0
  97. package/lib/oauth/token-hash.d.ts +6 -0
  98. package/lib/oauth/token-hash.js +21 -0
  99. package/lib/oauth/token-hash.js.map +1 -0
  100. package/lib/plugin.d.ts +54 -0
  101. package/lib/plugin.js +171 -0
  102. package/lib/plugin.js.map +1 -0
  103. package/lib/rate-limit/ip-bucket-key.d.ts +1 -0
  104. package/lib/rate-limit/ip-bucket-key.js +35 -0
  105. package/lib/rate-limit/ip-bucket-key.js.map +1 -0
  106. package/lib/rate-limit/mcp-oauth-rate-limit.guard.d.ts +20 -0
  107. package/lib/rate-limit/mcp-oauth-rate-limit.guard.js +63 -0
  108. package/lib/rate-limit/mcp-oauth-rate-limit.guard.js.map +1 -0
  109. package/lib/rate-limit/mcp-rate-limiter.service.d.ts +47 -0
  110. package/lib/rate-limit/mcp-rate-limiter.service.js +248 -0
  111. package/lib/rate-limit/mcp-rate-limiter.service.js.map +1 -0
  112. package/lib/registry/bm25.d.ts +12 -0
  113. package/lib/registry/bm25.js +60 -0
  114. package/lib/registry/bm25.js.map +1 -0
  115. package/lib/registry/mcp-tool-execution.service.d.ts +45 -0
  116. package/lib/registry/mcp-tool-execution.service.js +72 -0
  117. package/lib/registry/mcp-tool-execution.service.js.map +1 -0
  118. package/lib/registry/mcp-tool-registry.service.d.ts +89 -0
  119. package/lib/registry/mcp-tool-registry.service.js +668 -0
  120. package/lib/registry/mcp-tool-registry.service.js.map +1 -0
  121. package/lib/registry/mcp-tool-schema.service.d.ts +42 -0
  122. package/lib/registry/mcp-tool-schema.service.js +229 -0
  123. package/lib/registry/mcp-tool-schema.service.js.map +1 -0
  124. package/lib/registry/registry-types.d.ts +32 -0
  125. package/lib/registry/registry-types.js +3 -0
  126. package/lib/registry/registry-types.js.map +1 -0
  127. package/lib/resolve-options.d.ts +7 -0
  128. package/lib/resolve-options.js +85 -0
  129. package/lib/resolve-options.js.map +1 -0
  130. package/lib/shared/endpoint-paths.d.ts +8 -0
  131. package/lib/shared/endpoint-paths.js +12 -0
  132. package/lib/shared/endpoint-paths.js.map +1 -0
  133. package/lib/shared/loopback.d.ts +2 -0
  134. package/lib/shared/loopback.js +9 -0
  135. package/lib/shared/loopback.js.map +1 -0
  136. package/lib/shop-session/mcp-shop-session.service.d.ts +47 -0
  137. package/lib/shop-session/mcp-shop-session.service.js +132 -0
  138. package/lib/shop-session/mcp-shop-session.service.js.map +1 -0
  139. package/lib/tasks/mcp-oauth-retention.task.d.ts +9 -0
  140. package/lib/tasks/mcp-oauth-retention.task.js +21 -0
  141. package/lib/tasks/mcp-oauth-retention.task.js.map +1 -0
  142. package/lib/tasks/mcp-tool-call-log-retention.task.d.ts +7 -0
  143. package/lib/tasks/mcp-tool-call-log-retention.task.js +22 -0
  144. package/lib/tasks/mcp-tool-call-log-retention.task.js.map +1 -0
  145. package/lib/tools/built-in/active-order.service.d.ts +26 -0
  146. package/lib/tools/built-in/active-order.service.js +125 -0
  147. package/lib/tools/built-in/active-order.service.js.map +1 -0
  148. package/lib/tools/built-in/admin/add-customer-to-group.tool.d.ts +23 -0
  149. package/lib/tools/built-in/admin/add-customer-to-group.tool.js +68 -0
  150. package/lib/tools/built-in/admin/add-customer-to-group.tool.js.map +1 -0
  151. package/lib/tools/built-in/admin/add-note-to-order.tool.d.ts +104 -0
  152. package/lib/tools/built-in/admin/add-note-to-order.tool.js +66 -0
  153. package/lib/tools/built-in/admin/add-note-to-order.tool.js.map +1 -0
  154. package/lib/tools/built-in/admin/adjust-stock.tool.d.ts +26 -0
  155. package/lib/tools/built-in/admin/adjust-stock.tool.js +88 -0
  156. package/lib/tools/built-in/admin/adjust-stock.tool.js.map +1 -0
  157. package/lib/tools/built-in/admin/cancel-order.tool.d.ts +17 -0
  158. package/lib/tools/built-in/admin/cancel-order.tool.js +60 -0
  159. package/lib/tools/built-in/admin/cancel-order.tool.js.map +1 -0
  160. package/lib/tools/built-in/admin/channel-access.d.ts +2 -0
  161. package/lib/tools/built-in/admin/channel-access.js +9 -0
  162. package/lib/tools/built-in/admin/channel-access.js.map +1 -0
  163. package/lib/tools/built-in/admin/create-customer.tool.d.ts +41 -0
  164. package/lib/tools/built-in/admin/create-customer.tool.js +57 -0
  165. package/lib/tools/built-in/admin/create-customer.tool.js.map +1 -0
  166. package/lib/tools/built-in/admin/create-fulfillment.tool.d.ts +118 -0
  167. package/lib/tools/built-in/admin/create-fulfillment.tool.js +156 -0
  168. package/lib/tools/built-in/admin/create-fulfillment.tool.js.map +1 -0
  169. package/lib/tools/built-in/admin/create-product.tool.d.ts +52 -0
  170. package/lib/tools/built-in/admin/create-product.tool.js +61 -0
  171. package/lib/tools/built-in/admin/create-product.tool.js.map +1 -0
  172. package/lib/tools/built-in/admin/create-variant.tool.d.ts +48 -0
  173. package/lib/tools/built-in/admin/create-variant.tool.js +79 -0
  174. package/lib/tools/built-in/admin/create-variant.tool.js.map +1 -0
  175. package/lib/tools/built-in/admin/entity-field-schemas.d.ts +36 -0
  176. package/lib/tools/built-in/admin/entity-field-schemas.js +63 -0
  177. package/lib/tools/built-in/admin/entity-field-schemas.js.map +1 -0
  178. package/lib/tools/built-in/admin/get-customer.tool.d.ts +28 -0
  179. package/lib/tools/built-in/admin/get-customer.tool.js +55 -0
  180. package/lib/tools/built-in/admin/get-customer.tool.js.map +1 -0
  181. package/lib/tools/built-in/admin/get-order.tool.d.ts +100 -0
  182. package/lib/tools/built-in/admin/get-order.tool.js +68 -0
  183. package/lib/tools/built-in/admin/get-order.tool.js.map +1 -0
  184. package/lib/tools/built-in/admin/get-product.tool.d.ts +69 -0
  185. package/lib/tools/built-in/admin/get-product.tool.js +77 -0
  186. package/lib/tools/built-in/admin/get-product.tool.js.map +1 -0
  187. package/lib/tools/built-in/admin/get-stock-levels.tool.d.ts +23 -0
  188. package/lib/tools/built-in/admin/get-stock-levels.tool.js +61 -0
  189. package/lib/tools/built-in/admin/get-stock-levels.tool.js.map +1 -0
  190. package/lib/tools/built-in/admin/index.d.ts +25 -0
  191. package/lib/tools/built-in/admin/index.js +54 -0
  192. package/lib/tools/built-in/admin/index.js.map +1 -0
  193. package/lib/tools/built-in/admin/list-channels.tool.d.ts +24 -0
  194. package/lib/tools/built-in/admin/list-channels.tool.js +56 -0
  195. package/lib/tools/built-in/admin/list-channels.tool.js.map +1 -0
  196. package/lib/tools/built-in/admin/list-customer-groups.tool.d.ts +23 -0
  197. package/lib/tools/built-in/admin/list-customer-groups.tool.js +52 -0
  198. package/lib/tools/built-in/admin/list-customer-groups.tool.js.map +1 -0
  199. package/lib/tools/built-in/admin/list-customers.tool.d.ts +62 -0
  200. package/lib/tools/built-in/admin/list-customers.tool.js +66 -0
  201. package/lib/tools/built-in/admin/list-customers.tool.js.map +1 -0
  202. package/lib/tools/built-in/admin/list-orders.tool.d.ts +142 -0
  203. package/lib/tools/built-in/admin/list-orders.tool.js +87 -0
  204. package/lib/tools/built-in/admin/list-orders.tool.js.map +1 -0
  205. package/lib/tools/built-in/admin/list-products.tool.d.ts +63 -0
  206. package/lib/tools/built-in/admin/list-products.tool.js +71 -0
  207. package/lib/tools/built-in/admin/list-products.tool.js.map +1 -0
  208. package/lib/tools/built-in/admin/refund-order.tool.d.ts +38 -0
  209. package/lib/tools/built-in/admin/refund-order.tool.js +115 -0
  210. package/lib/tools/built-in/admin/refund-order.tool.js.map +1 -0
  211. package/lib/tools/built-in/admin/set-active-channel.tool.d.ts +22 -0
  212. package/lib/tools/built-in/admin/set-active-channel.tool.js +84 -0
  213. package/lib/tools/built-in/admin/set-active-channel.tool.js.map +1 -0
  214. package/lib/tools/built-in/admin/translation-schemas.d.ts +12 -0
  215. package/lib/tools/built-in/admin/translation-schemas.js +17 -0
  216. package/lib/tools/built-in/admin/translation-schemas.js.map +1 -0
  217. package/lib/tools/built-in/admin/update-customer.tool.d.ts +42 -0
  218. package/lib/tools/built-in/admin/update-customer.tool.js +59 -0
  219. package/lib/tools/built-in/admin/update-customer.tool.js.map +1 -0
  220. package/lib/tools/built-in/admin/update-order-state.tool.d.ts +16 -0
  221. package/lib/tools/built-in/admin/update-order-state.tool.js +58 -0
  222. package/lib/tools/built-in/admin/update-order-state.tool.js.map +1 -0
  223. package/lib/tools/built-in/admin/update-product.tool.d.ts +53 -0
  224. package/lib/tools/built-in/admin/update-product.tool.js +68 -0
  225. package/lib/tools/built-in/admin/update-product.tool.js.map +1 -0
  226. package/lib/tools/built-in/admin/update-variant.tool.d.ts +46 -0
  227. package/lib/tools/built-in/admin/update-variant.tool.js +77 -0
  228. package/lib/tools/built-in/admin/update-variant.tool.js.map +1 -0
  229. package/lib/tools/built-in/admin/upload-asset.tool.d.ts +32 -0
  230. package/lib/tools/built-in/admin/upload-asset.tool.js +56 -0
  231. package/lib/tools/built-in/admin/upload-asset.tool.js.map +1 -0
  232. package/lib/tools/built-in/catalog-query.service.d.ts +21 -0
  233. package/lib/tools/built-in/catalog-query.service.js +128 -0
  234. package/lib/tools/built-in/catalog-query.service.js.map +1 -0
  235. package/lib/tools/built-in/custom-field-input.service.d.ts +10 -0
  236. package/lib/tools/built-in/custom-field-input.service.js +64 -0
  237. package/lib/tools/built-in/custom-field-input.service.js.map +1 -0
  238. package/lib/tools/built-in/email-schema.d.ts +2 -0
  239. package/lib/tools/built-in/email-schema.js +12 -0
  240. package/lib/tools/built-in/email-schema.js.map +1 -0
  241. package/lib/tools/built-in/id-schema.d.ts +3 -0
  242. package/lib/tools/built-in/id-schema.js +11 -0
  243. package/lib/tools/built-in/id-schema.js.map +1 -0
  244. package/lib/tools/built-in/int32-schema.d.ts +4 -0
  245. package/lib/tools/built-in/int32-schema.js +8 -0
  246. package/lib/tools/built-in/int32-schema.js.map +1 -0
  247. package/lib/tools/built-in/list-helpers.d.ts +48 -0
  248. package/lib/tools/built-in/list-helpers.js +76 -0
  249. package/lib/tools/built-in/list-helpers.js.map +1 -0
  250. package/lib/tools/built-in/order-list-helpers.d.ts +20 -0
  251. package/lib/tools/built-in/order-list-helpers.js +48 -0
  252. package/lib/tools/built-in/order-list-helpers.js.map +1 -0
  253. package/lib/tools/built-in/providers.d.ts +2 -0
  254. package/lib/tools/built-in/providers.js +7 -0
  255. package/lib/tools/built-in/providers.js.map +1 -0
  256. package/lib/tools/built-in/remote-asset.d.ts +4 -0
  257. package/lib/tools/built-in/remote-asset.js +54 -0
  258. package/lib/tools/built-in/remote-asset.js.map +1 -0
  259. package/lib/tools/built-in/serializer.service.d.ts +327 -0
  260. package/lib/tools/built-in/serializer.service.js +413 -0
  261. package/lib/tools/built-in/serializer.service.js.map +1 -0
  262. package/lib/tools/built-in/shop/add-to-cart.tool.d.ts +21 -0
  263. package/lib/tools/built-in/shop/add-to-cart.tool.js +100 -0
  264. package/lib/tools/built-in/shop/add-to-cart.tool.js.map +1 -0
  265. package/lib/tools/built-in/shop/address-schema.d.ts +15 -0
  266. package/lib/tools/built-in/shop/address-schema.js +20 -0
  267. package/lib/tools/built-in/shop/address-schema.js.map +1 -0
  268. package/lib/tools/built-in/shop/apply-coupon-code.tool.d.ts +17 -0
  269. package/lib/tools/built-in/shop/apply-coupon-code.tool.js +62 -0
  270. package/lib/tools/built-in/shop/apply-coupon-code.tool.js.map +1 -0
  271. package/lib/tools/built-in/shop/collection-lookup.d.ts +15 -0
  272. package/lib/tools/built-in/shop/collection-lookup.js +35 -0
  273. package/lib/tools/built-in/shop/collection-lookup.js.map +1 -0
  274. package/lib/tools/built-in/shop/get-cart.tool.d.ts +94 -0
  275. package/lib/tools/built-in/shop/get-cart.tool.js +55 -0
  276. package/lib/tools/built-in/shop/get-cart.tool.js.map +1 -0
  277. package/lib/tools/built-in/shop/get-collection.tool.d.ts +42 -0
  278. package/lib/tools/built-in/shop/get-collection.tool.js +64 -0
  279. package/lib/tools/built-in/shop/get-collection.tool.js.map +1 -0
  280. package/lib/tools/built-in/shop/get-eligible-payment-methods.tool.d.ts +26 -0
  281. package/lib/tools/built-in/shop/get-eligible-payment-methods.tool.js +58 -0
  282. package/lib/tools/built-in/shop/get-eligible-payment-methods.tool.js.map +1 -0
  283. package/lib/tools/built-in/shop/get-eligible-shipping-methods.tool.d.ts +30 -0
  284. package/lib/tools/built-in/shop/get-eligible-shipping-methods.tool.js +59 -0
  285. package/lib/tools/built-in/shop/get-eligible-shipping-methods.tool.js.map +1 -0
  286. package/lib/tools/built-in/shop/get-my-account.tool.d.ts +22 -0
  287. package/lib/tools/built-in/shop/get-my-account.tool.js +57 -0
  288. package/lib/tools/built-in/shop/get-my-account.tool.js.map +1 -0
  289. package/lib/tools/built-in/shop/get-order.tool.d.ts +100 -0
  290. package/lib/tools/built-in/shop/get-order.tool.js +67 -0
  291. package/lib/tools/built-in/shop/get-order.tool.js.map +1 -0
  292. package/lib/tools/built-in/shop/get-product.tool.d.ts +57 -0
  293. package/lib/tools/built-in/shop/get-product.tool.js +81 -0
  294. package/lib/tools/built-in/shop/get-product.tool.js.map +1 -0
  295. package/lib/tools/built-in/shop/index.d.ts +19 -0
  296. package/lib/tools/built-in/shop/index.js +42 -0
  297. package/lib/tools/built-in/shop/index.js.map +1 -0
  298. package/lib/tools/built-in/shop/list-collections.tool.d.ts +42 -0
  299. package/lib/tools/built-in/shop/list-collections.tool.js +75 -0
  300. package/lib/tools/built-in/shop/list-collections.tool.js.map +1 -0
  301. package/lib/tools/built-in/shop/list-my-orders.tool.d.ts +100 -0
  302. package/lib/tools/built-in/shop/list-my-orders.tool.js +63 -0
  303. package/lib/tools/built-in/shop/list-my-orders.tool.js.map +1 -0
  304. package/lib/tools/built-in/shop/place-order.tool.d.ts +188 -0
  305. package/lib/tools/built-in/shop/place-order.tool.js +152 -0
  306. package/lib/tools/built-in/shop/place-order.tool.js.map +1 -0
  307. package/lib/tools/built-in/shop/product-search-query.d.ts +4 -0
  308. package/lib/tools/built-in/shop/product-search-query.js +34 -0
  309. package/lib/tools/built-in/shop/product-search-query.js.map +1 -0
  310. package/lib/tools/built-in/shop/remove-coupon-code.tool.d.ts +17 -0
  311. package/lib/tools/built-in/shop/remove-coupon-code.tool.js +63 -0
  312. package/lib/tools/built-in/shop/remove-coupon-code.tool.js.map +1 -0
  313. package/lib/tools/built-in/shop/remove-from-cart.tool.d.ts +17 -0
  314. package/lib/tools/built-in/shop/remove-from-cart.tool.js +58 -0
  315. package/lib/tools/built-in/shop/remove-from-cart.tool.js.map +1 -0
  316. package/lib/tools/built-in/shop/search-products.tool.d.ts +48 -0
  317. package/lib/tools/built-in/shop/search-products.tool.js +95 -0
  318. package/lib/tools/built-in/shop/search-products.tool.js.map +1 -0
  319. package/lib/tools/built-in/shop/set-checkout-details.tool.d.ts +56 -0
  320. package/lib/tools/built-in/shop/set-checkout-details.tool.js +187 -0
  321. package/lib/tools/built-in/shop/set-checkout-details.tool.js.map +1 -0
  322. package/lib/tools/built-in/shop/set-shipping-method.tool.d.ts +17 -0
  323. package/lib/tools/built-in/shop/set-shipping-method.tool.js +58 -0
  324. package/lib/tools/built-in/shop/set-shipping-method.tool.js.map +1 -0
  325. package/lib/tools/built-in/shop/update-cart-line.tool.d.ts +18 -0
  326. package/lib/tools/built-in/shop/update-cart-line.tool.js +60 -0
  327. package/lib/tools/built-in/shop/update-cart-line.tool.js.map +1 -0
  328. package/lib/tools/built-in/string-schemas.d.ts +4 -0
  329. package/lib/tools/built-in/string-schemas.js +13 -0
  330. package/lib/tools/built-in/string-schemas.js.map +1 -0
  331. package/lib/transport/mcp-server.factory.d.ts +13 -0
  332. package/lib/transport/mcp-server.factory.js +32 -0
  333. package/lib/transport/mcp-server.factory.js.map +1 -0
  334. package/lib/transport/mcp-transport.controller.d.ts +77 -0
  335. package/lib/transport/mcp-transport.controller.js +442 -0
  336. package/lib/transport/mcp-transport.controller.js.map +1 -0
  337. package/lib/types.d.ts +432 -0
  338. package/lib/types.js +3 -0
  339. package/lib/types.js.map +1 -0
  340. package/package.json +42 -0
  341. package/src/dashboard/components/activity-block.tsx +72 -0
  342. package/src/dashboard/components/actor-cell.tsx +31 -0
  343. package/src/dashboard/components/connection-dialog.tsx +106 -0
  344. package/src/dashboard/components/empty-cell.tsx +7 -0
  345. package/src/dashboard/components/grants-block.tsx +218 -0
  346. package/src/dashboard/components/stats-block.tsx +275 -0
  347. package/src/dashboard/components/tools-block.tsx +274 -0
  348. package/src/dashboard/components/tooltip-button.tsx +28 -0
  349. package/src/dashboard/components/use-mcp-table-state.ts +47 -0
  350. package/src/dashboard/i18n/ar.po +311 -0
  351. package/src/dashboard/i18n/bg.po +311 -0
  352. package/src/dashboard/i18n/cs.po +311 -0
  353. package/src/dashboard/i18n/de.po +311 -0
  354. package/src/dashboard/i18n/en.po +311 -0
  355. package/src/dashboard/i18n/es.po +311 -0
  356. package/src/dashboard/i18n/fa.po +311 -0
  357. package/src/dashboard/i18n/fr.po +311 -0
  358. package/src/dashboard/i18n/he.po +311 -0
  359. package/src/dashboard/i18n/hr.po +311 -0
  360. package/src/dashboard/i18n/hu.po +311 -0
  361. package/src/dashboard/i18n/it.po +311 -0
  362. package/src/dashboard/i18n/ja.po +311 -0
  363. package/src/dashboard/i18n/ko.po +311 -0
  364. package/src/dashboard/i18n/nb.po +311 -0
  365. package/src/dashboard/i18n/ne.po +311 -0
  366. package/src/dashboard/i18n/nl.po +311 -0
  367. package/src/dashboard/i18n/pl.po +311 -0
  368. package/src/dashboard/i18n/pt_BR.po +311 -0
  369. package/src/dashboard/i18n/pt_PT.po +311 -0
  370. package/src/dashboard/i18n/ro.po +311 -0
  371. package/src/dashboard/i18n/ru.po +311 -0
  372. package/src/dashboard/i18n/sv.po +311 -0
  373. package/src/dashboard/i18n/tr.po +311 -0
  374. package/src/dashboard/i18n/uk.po +311 -0
  375. package/src/dashboard/i18n/uz.po +311 -0
  376. package/src/dashboard/i18n/zh_Hans.po +311 -0
  377. package/src/dashboard/i18n/zh_Hant.po +311 -0
  378. package/src/dashboard/index.tsx +30 -0
  379. package/src/dashboard/mcp-activity-route.tsx +38 -0
  380. package/src/dashboard/mcp-authorize-route.tsx +369 -0
  381. package/src/dashboard/mcp-grants-route.tsx +38 -0
  382. package/src/dashboard/mcp-overview-route.tsx +46 -0
  383. package/src/dashboard/mcp-server-redirect-route.tsx +15 -0
  384. package/src/dashboard/mcp-tools-route.tsx +38 -0
  385. package/src/dashboard/mcp.graphql.ts +127 -0
  386. package/src/dashboard/published-files.spec.ts +54 -0
  387. package/src/dashboard/tsconfig.json +9 -0
  388. package/src/shared/endpoint-paths.ts +8 -0
  389. package/src/shared/loopback.ts +6 -0
@@ -0,0 +1,52 @@
1
+ import { ProductService, RequestContext } from '@vendure/core';
2
+ import { McpToolHandler } from '@vendure/mcp-sdk';
3
+ import { z } from 'zod';
4
+ import { McpCustomFieldInputService } from '../custom-field-input.service';
5
+ import { McpToolSerializerService } from '../serializer.service';
6
+ declare const createProductInput: z.ZodObject<{
7
+ input: z.ZodObject<{
8
+ enabled: z.ZodOptional<z.ZodBoolean>;
9
+ facetValueIds: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
10
+ assetIds: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
11
+ featuredAssetId: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
12
+ customFields: z.ZodOptional<z.ZodObject<{}, z.core.$loose>>;
13
+ translations: z.ZodArray<z.ZodObject<{
14
+ languageCode: z.ZodEnum<typeof import("@vendure/core").LanguageCode>;
15
+ name: z.ZodOptional<z.ZodString>;
16
+ slug: z.ZodOptional<z.ZodString>;
17
+ description: z.ZodOptional<z.ZodString>;
18
+ }, z.core.$strict>>;
19
+ }, z.core.$strict>;
20
+ }, z.core.$strict>;
21
+ type CreateProductToolInput = z.infer<typeof createProductInput>;
22
+ export declare class CreateProductTool implements McpToolHandler<CreateProductToolInput> {
23
+ private readonly productService;
24
+ private readonly customFieldInput;
25
+ private readonly serializer;
26
+ constructor(productService: ProductService, customFieldInput: McpCustomFieldInputService, serializer: McpToolSerializerService);
27
+ execute(ctx: RequestContext, input: CreateProductToolInput): Promise<{
28
+ product: {
29
+ id: import("@vendure/core").ID;
30
+ name: import("@vendure/core").LocaleString;
31
+ slug: import("@vendure/core").LocaleString;
32
+ description: import("@vendure/core").LocaleString;
33
+ enabled: boolean;
34
+ featuredAsset: {
35
+ id: import("@vendure/core").ID;
36
+ name: import("@vendure/core").LocaleString;
37
+ type: import("@vendure/core").AssetType;
38
+ mimeType: string;
39
+ width: number;
40
+ height: number;
41
+ fileSize: number;
42
+ source: string;
43
+ preview: string;
44
+ focalPoint: {
45
+ x: number;
46
+ y: number;
47
+ } | undefined;
48
+ } | null;
49
+ } | null;
50
+ }>;
51
+ }
52
+ export {};
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreateProductTool = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const core_1 = require("@vendure/core");
15
+ const mcp_sdk_1 = require("@vendure/mcp-sdk");
16
+ const zod_1 = require("zod");
17
+ const custom_field_input_service_1 = require("../custom-field-input.service");
18
+ const serializer_service_1 = require("../serializer.service");
19
+ const entity_field_schemas_1 = require("./entity-field-schemas");
20
+ const translation_schemas_1 = require("./translation-schemas");
21
+ const createProductInputSchema = entity_field_schemas_1.productFieldsSchema.extend({
22
+ translations: zod_1.z
23
+ .array(translation_schemas_1.productTranslationSchema)
24
+ .describe('Localized product content. At least one entry with a languageCode is required.'),
25
+ });
26
+ const createProductInput = zod_1.z.strictObject({ input: createProductInputSchema });
27
+ let CreateProductTool = class CreateProductTool {
28
+ constructor(productService, customFieldInput, serializer) {
29
+ this.productService = productService;
30
+ this.customFieldInput = customFieldInput;
31
+ this.serializer = serializer;
32
+ }
33
+ async execute(ctx, input) {
34
+ await this.customFieldInput.assertWritable(ctx, 'Product', input.input.customFields);
35
+ return { product: this.serializer.product(await this.productService.create(ctx, input.input)) };
36
+ }
37
+ };
38
+ exports.CreateProductTool = CreateProductTool;
39
+ exports.CreateProductTool = CreateProductTool = __decorate([
40
+ (0, mcp_sdk_1.McpTool)({
41
+ name: 'create_product',
42
+ toolset: 'admin',
43
+ description: 'Create a new product in the catalog, with its name, slug, description and enabled state.',
44
+ keywords: [
45
+ 'add a new product',
46
+ 'list a new item for sale',
47
+ 'create a catalog entry',
48
+ 'add product to the store',
49
+ 'make a new listing',
50
+ 'put a new item on sale',
51
+ ],
52
+ permissions: [core_1.Permission.CreateProduct],
53
+ behavior: 'mutating',
54
+ inputSchema: createProductInput,
55
+ }),
56
+ (0, common_1.Injectable)(),
57
+ __metadata("design:paramtypes", [core_1.ProductService,
58
+ custom_field_input_service_1.McpCustomFieldInputService,
59
+ serializer_service_1.McpToolSerializerService])
60
+ ], CreateProductTool);
61
+ //# sourceMappingURL=create-product.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-product.tool.js","sourceRoot":"","sources":["../../../../src/tools/built-in/admin/create-product.tool.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,wCAA2E;AAC3E,8CAA2D;AAC3D,6BAAwB;AAExB,8EAA2E;AAC3E,8DAAiE;AAEjE,iEAA6D;AAC7D,+DAAiE;AAEjE,MAAM,wBAAwB,GAAG,0CAAmB,CAAC,MAAM,CAAC;IACxD,YAAY,EAAE,OAAC;SACV,KAAK,CAAC,8CAAwB,CAAC;SAC/B,QAAQ,CAAC,gFAAgF,CAAC;CAClG,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,OAAC,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC;AAqBxE,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC1B,YACqB,cAA8B,EAC9B,gBAA4C,EAC5C,UAAoC;QAFpC,mBAAc,GAAd,cAAc,CAAgB;QAC9B,qBAAgB,GAAhB,gBAAgB,CAA4B;QAC5C,eAAU,GAAV,UAAU,CAA0B;IACtD,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,GAAmB,EAAE,KAA6B;QAC5D,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACrF,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;IACpG,CAAC;CACJ,CAAA;AAXY,8CAAiB;4BAAjB,iBAAiB;IAjB7B,IAAA,iBAAO,EAAC;QACL,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,0FAA0F;QACvG,QAAQ,EAAE;YACN,mBAAmB;YACnB,0BAA0B;YAC1B,wBAAwB;YACxB,0BAA0B;YAC1B,oBAAoB;YACpB,wBAAwB;SAC3B;QACD,WAAW,EAAE,CAAC,iBAAU,CAAC,aAAa,CAAC;QACvC,QAAQ,EAAE,UAAU;QACpB,WAAW,EAAE,kBAAkB;KAClC,CAAC;IACD,IAAA,mBAAU,GAAE;qCAG4B,qBAAc;QACZ,uDAA0B;QAChC,6CAAwB;GAJhD,iBAAiB,CAW7B"}
@@ -0,0 +1,48 @@
1
+ import { ProductService, ProductVariantService, RequestContext, StockLevelService } from '@vendure/core';
2
+ import { McpToolHandler } from '@vendure/mcp-sdk';
3
+ import { z } from 'zod';
4
+ import { McpCustomFieldInputService } from '../custom-field-input.service';
5
+ import { McpToolSerializerService } from '../serializer.service';
6
+ declare const createVariantInput: z.ZodObject<{
7
+ productId: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
8
+ input: z.ZodObject<{
9
+ price: z.ZodOptional<z.ZodNumber>;
10
+ optionIds: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
11
+ taxCategoryId: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
12
+ featuredAssetId: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
13
+ assetIds: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
14
+ trackInventory: z.ZodOptional<z.ZodEnum<typeof import("@vendure/common/lib/generated-types").GlobalFlag>>;
15
+ enabled: z.ZodOptional<z.ZodBoolean>;
16
+ customFields: z.ZodOptional<z.ZodObject<{}, z.core.$loose>>;
17
+ sku: z.ZodString;
18
+ translations: z.ZodArray<z.ZodObject<{
19
+ languageCode: z.ZodEnum<typeof import("@vendure/core").LanguageCode>;
20
+ name: z.ZodOptional<z.ZodString>;
21
+ }, z.core.$strict>>;
22
+ stockOnHand: z.ZodOptional<z.ZodNumber>;
23
+ }, z.core.$strict>;
24
+ }, z.core.$strict>;
25
+ type CreateVariantToolInput = z.infer<typeof createVariantInput>;
26
+ export declare class CreateVariantTool implements McpToolHandler<CreateVariantToolInput> {
27
+ private readonly productVariantService;
28
+ private readonly productService;
29
+ private readonly stockLevelService;
30
+ private readonly customFieldInput;
31
+ private readonly serializer;
32
+ constructor(productVariantService: ProductVariantService, productService: ProductService, stockLevelService: StockLevelService, customFieldInput: McpCustomFieldInputService, serializer: McpToolSerializerService);
33
+ execute(ctx: RequestContext, input: CreateVariantToolInput): Promise<{
34
+ variant: {
35
+ stockOnHand: number;
36
+ id?: import("@vendure/core").ID | undefined;
37
+ name?: import("@vendure/core").LocaleString | undefined;
38
+ sku?: string | undefined;
39
+ enabled?: boolean | undefined;
40
+ price?: number | undefined;
41
+ priceDecimal?: string | undefined;
42
+ priceWithTax?: number | undefined;
43
+ priceWithTaxDecimal?: string | undefined;
44
+ currencyCode?: import("@vendure/core").CurrencyCode | undefined;
45
+ };
46
+ }>;
47
+ }
48
+ export {};
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreateVariantTool = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const core_1 = require("@vendure/core");
15
+ const mcp_sdk_1 = require("@vendure/mcp-sdk");
16
+ const zod_1 = require("zod");
17
+ const custom_field_input_service_1 = require("../custom-field-input.service");
18
+ const id_schema_1 = require("../id-schema");
19
+ const int32_schema_1 = require("../int32-schema");
20
+ const serializer_service_1 = require("../serializer.service");
21
+ const string_schemas_1 = require("../string-schemas");
22
+ const entity_field_schemas_1 = require("./entity-field-schemas");
23
+ const translation_schemas_1 = require("./translation-schemas");
24
+ const createVariantInputSchema = entity_field_schemas_1.variantFieldsSchema.extend({
25
+ sku: string_schemas_1.shortText.describe('Stock keeping unit.'),
26
+ translations: zod_1.z.array(translation_schemas_1.variantTranslationSchema).describe('Localized variant content.'),
27
+ stockOnHand: int32_schema_1.int32Schema.describe('Initial stock on hand.').optional(),
28
+ });
29
+ const createVariantInput = zod_1.z.strictObject({
30
+ productId: id_schema_1.idSchema.describe('Parent product ID.'),
31
+ input: createVariantInputSchema,
32
+ });
33
+ let CreateVariantTool = class CreateVariantTool {
34
+ constructor(productVariantService, productService, stockLevelService, customFieldInput, serializer) {
35
+ this.productVariantService = productVariantService;
36
+ this.productService = productService;
37
+ this.stockLevelService = stockLevelService;
38
+ this.customFieldInput = customFieldInput;
39
+ this.serializer = serializer;
40
+ }
41
+ async execute(ctx, input) {
42
+ await this.customFieldInput.assertWritable(ctx, 'ProductVariant', input.input.customFields);
43
+ const product = await this.productService.findOne(ctx, input.productId);
44
+ if (!product) {
45
+ throw new core_1.UserInputError(`Product ${input.productId} is not available in the active channel.`);
46
+ }
47
+ const [variant] = await this.productVariantService.create(ctx, [
48
+ Object.assign(Object.assign({}, input.input), { productId: input.productId }),
49
+ ]);
50
+ const { stockOnHand } = await this.stockLevelService.getAvailableStock(ctx, variant.id);
51
+ return { variant: this.serializer.adminVariant(variant, stockOnHand) };
52
+ }
53
+ };
54
+ exports.CreateVariantTool = CreateVariantTool;
55
+ exports.CreateVariantTool = CreateVariantTool = __decorate([
56
+ (0, mcp_sdk_1.McpTool)({
57
+ name: 'create_variant',
58
+ toolset: 'admin',
59
+ description: 'Create a new variant of an existing product (e.g. a size or color option), with its SKU, price and stock.',
60
+ keywords: [
61
+ 'add a size or color option',
62
+ 'create a new sku',
63
+ 'add a variant to a product',
64
+ 'make another version of an item',
65
+ 'new product option',
66
+ 'add a variation',
67
+ ],
68
+ permissions: [core_1.Permission.UpdateProduct],
69
+ behavior: 'mutating',
70
+ inputSchema: createVariantInput,
71
+ }),
72
+ (0, common_1.Injectable)(),
73
+ __metadata("design:paramtypes", [core_1.ProductVariantService,
74
+ core_1.ProductService,
75
+ core_1.StockLevelService,
76
+ custom_field_input_service_1.McpCustomFieldInputService,
77
+ serializer_service_1.McpToolSerializerService])
78
+ ], CreateVariantTool);
79
+ //# sourceMappingURL=create-variant.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-variant.tool.js","sourceRoot":"","sources":["../../../../src/tools/built-in/admin/create-variant.tool.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,wCAOuB;AACvB,8CAA2D;AAC3D,6BAAwB;AAExB,8EAA2E;AAC3E,4CAAwC;AACxC,kDAA8C;AAC9C,8DAAiE;AACjE,sDAA8C;AAE9C,iEAA6D;AAC7D,+DAAiE;AAEjE,MAAM,wBAAwB,GAAG,0CAAmB,CAAC,MAAM,CAAC;IACxD,GAAG,EAAE,0BAAS,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IAC9C,YAAY,EAAE,OAAC,CAAC,KAAK,CAAC,8CAAwB,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IACtF,WAAW,EAAE,0BAAW,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,QAAQ,EAAE;CACzE,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,OAAC,CAAC,YAAY,CAAC;IACtC,SAAS,EAAE,oBAAQ,CAAC,QAAQ,CAAC,oBAAoB,CAAC;IAClD,KAAK,EAAE,wBAAwB;CAClC,CAAC,CAAC;AAsBI,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC1B,YACqB,qBAA4C,EAC5C,cAA8B,EAC9B,iBAAoC,EACpC,gBAA4C,EAC5C,UAAoC;QAJpC,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,mBAAc,GAAd,cAAc,CAAgB;QAC9B,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,qBAAgB,GAAhB,gBAAgB,CAA4B;QAC5C,eAAU,GAAV,UAAU,CAA0B;IACtD,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,GAAmB,EAAE,KAA6B;QAC5D,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC5F,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACxE,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,qBAAc,CAAC,WAAW,KAAK,CAAC,SAAS,0CAA0C,CAAC,CAAC;QACnG,CAAC;QACD,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,GAAG,EAAE;4CACtD,KAAK,CAAC,KAAK,KAAE,SAAS,EAAE,KAAK,CAAC,SAAS;SAC/C,CAAC,CAAC;QACH,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;QACxF,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC;IAC3E,CAAC;CACJ,CAAA;AArBY,8CAAiB;4BAAjB,iBAAiB;IAlB7B,IAAA,iBAAO,EAAC;QACL,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,OAAO;QAChB,WAAW,EACP,2GAA2G;QAC/G,QAAQ,EAAE;YACN,4BAA4B;YAC5B,kBAAkB;YAClB,4BAA4B;YAC5B,iCAAiC;YACjC,oBAAoB;YACpB,iBAAiB;SACpB;QACD,WAAW,EAAE,CAAC,iBAAU,CAAC,aAAa,CAAC;QACvC,QAAQ,EAAE,UAAU;QACpB,WAAW,EAAE,kBAAkB;KAClC,CAAC;IACD,IAAA,mBAAU,GAAE;qCAGmC,4BAAqB;QAC5B,qBAAc;QACX,wBAAiB;QAClB,uDAA0B;QAChC,6CAAwB;GANhD,iBAAiB,CAqB7B"}
@@ -0,0 +1,36 @@
1
+ import { GlobalFlag } from '@vendure/common/lib/generated-types';
2
+ import { z } from 'zod';
3
+ /**
4
+ * Fields shared by create_customer and update_customer. create uses them as is; update makes them all
5
+ * optional.
6
+ */
7
+ export declare const customerFieldsSchema: z.ZodObject<{
8
+ firstName: z.ZodString;
9
+ lastName: z.ZodString;
10
+ emailAddress: z.ZodString;
11
+ phoneNumber: z.ZodOptional<z.ZodString>;
12
+ title: z.ZodOptional<z.ZodString>;
13
+ customFields: z.ZodOptional<z.ZodObject<{}, z.core.$loose>>;
14
+ }, z.core.$strict>;
15
+ /** Fields shared by create_product and update_product. Each tool adds its own `translations`. */
16
+ export declare const productFieldsSchema: z.ZodObject<{
17
+ enabled: z.ZodOptional<z.ZodBoolean>;
18
+ facetValueIds: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
19
+ assetIds: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
20
+ featuredAssetId: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
21
+ customFields: z.ZodOptional<z.ZodObject<{}, z.core.$loose>>;
22
+ }, z.core.$strict>;
23
+ /**
24
+ * Fields shared by create_variant and update_variant. Each tool adds `sku` and `translations`; create
25
+ * also adds `stockOnHand`.
26
+ */
27
+ export declare const variantFieldsSchema: z.ZodObject<{
28
+ price: z.ZodOptional<z.ZodNumber>;
29
+ optionIds: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
30
+ taxCategoryId: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
31
+ featuredAssetId: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
32
+ assetIds: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
33
+ trackInventory: z.ZodOptional<z.ZodEnum<typeof GlobalFlag>>;
34
+ enabled: z.ZodOptional<z.ZodBoolean>;
35
+ customFields: z.ZodOptional<z.ZodObject<{}, z.core.$loose>>;
36
+ }, z.core.$strict>;
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.variantFieldsSchema = exports.productFieldsSchema = exports.customerFieldsSchema = void 0;
4
+ const generated_types_1 = require("@vendure/common/lib/generated-types");
5
+ const zod_1 = require("zod");
6
+ const email_schema_1 = require("../email-schema");
7
+ const id_schema_1 = require("../id-schema");
8
+ const int32_schema_1 = require("../int32-schema");
9
+ const string_schemas_1 = require("../string-schemas");
10
+ /**
11
+ * Fields shared by create_customer and update_customer. create uses them as is; update makes them all
12
+ * optional.
13
+ */
14
+ exports.customerFieldsSchema = zod_1.z.strictObject({
15
+ firstName: string_schemas_1.shortText.describe('Customer first name.'),
16
+ lastName: string_schemas_1.shortText.describe('Customer last name.'),
17
+ emailAddress: email_schema_1.emailAddressSchema,
18
+ phoneNumber: string_schemas_1.shortText.describe('Customer phone number.').optional(),
19
+ title: string_schemas_1.shortText.describe('Customer title, e.g. "Mr" or "Ms".').optional(),
20
+ customFields: zod_1.z.looseObject({}).describe('Customer custom fields.').optional(),
21
+ });
22
+ /** Fields shared by create_product and update_product. Each tool adds its own `translations`. */
23
+ exports.productFieldsSchema = zod_1.z.strictObject({
24
+ enabled: zod_1.z.boolean().describe('Whether the product is enabled.').optional(),
25
+ facetValueIds: zod_1.z
26
+ .array(id_schema_1.idSchema.describe('Vendure ID.'))
27
+ .max(id_schema_1.MAX_ID_LIST_LENGTH)
28
+ .describe('Facet value IDs to assign.')
29
+ .optional(),
30
+ assetIds: zod_1.z
31
+ .array(id_schema_1.idSchema.describe('Vendure ID.'))
32
+ .max(id_schema_1.MAX_ID_LIST_LENGTH)
33
+ .describe('Asset IDs to attach.')
34
+ .optional(),
35
+ featuredAssetId: id_schema_1.idSchema.describe('Featured asset ID.').optional(),
36
+ customFields: zod_1.z.looseObject({}).describe('Product custom fields.').optional(),
37
+ });
38
+ /**
39
+ * Fields shared by create_variant and update_variant. Each tool adds `sku` and `translations`; create
40
+ * also adds `stockOnHand`.
41
+ */
42
+ exports.variantFieldsSchema = zod_1.z.strictObject({
43
+ price: int32_schema_1.int32Schema.min(0).describe('Price as a whole number of minor units, e.g. cents.').optional(),
44
+ optionIds: zod_1.z
45
+ .array(id_schema_1.idSchema.describe('Vendure ID.'))
46
+ .max(id_schema_1.MAX_ID_LIST_LENGTH)
47
+ .describe('Product option IDs for this variant.')
48
+ .optional(),
49
+ taxCategoryId: id_schema_1.idSchema.describe('Tax category ID.').optional(),
50
+ featuredAssetId: id_schema_1.idSchema.describe('Featured asset ID.').optional(),
51
+ assetIds: zod_1.z
52
+ .array(id_schema_1.idSchema.describe('Vendure ID.'))
53
+ .max(id_schema_1.MAX_ID_LIST_LENGTH)
54
+ .describe('Asset IDs to attach.')
55
+ .optional(),
56
+ trackInventory: zod_1.z
57
+ .enum(generated_types_1.GlobalFlag)
58
+ .describe('Inventory tracking: "TRUE", "FALSE", or "INHERIT".')
59
+ .optional(),
60
+ enabled: zod_1.z.boolean().describe('Whether the variant is enabled.').optional(),
61
+ customFields: zod_1.z.looseObject({}).describe('Variant custom fields.').optional(),
62
+ });
63
+ //# sourceMappingURL=entity-field-schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-field-schemas.js","sourceRoot":"","sources":["../../../../src/tools/built-in/admin/entity-field-schemas.ts"],"names":[],"mappings":";;;AAAA,yEAAiE;AACjE,6BAAwB;AAExB,kDAAqD;AACrD,4CAA4D;AAC5D,kDAA8C;AAC9C,sDAA8C;AAE9C;;;GAGG;AACU,QAAA,oBAAoB,GAAG,OAAC,CAAC,YAAY,CAAC;IAC/C,SAAS,EAAE,0BAAS,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACrD,QAAQ,EAAE,0BAAS,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IACnD,YAAY,EAAE,iCAAkB;IAChC,WAAW,EAAE,0BAAS,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,QAAQ,EAAE;IACpE,KAAK,EAAE,0BAAS,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC,QAAQ,EAAE;IAC1E,YAAY,EAAE,OAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC,QAAQ,EAAE;CACjF,CAAC,CAAC;AAEH,iGAAiG;AACpF,QAAA,mBAAmB,GAAG,OAAC,CAAC,YAAY,CAAC;IAC9C,OAAO,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC,CAAC,QAAQ,EAAE;IAC3E,aAAa,EAAE,OAAC;SACX,KAAK,CAAC,oBAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;SACvC,GAAG,CAAC,8BAAkB,CAAC;SACvB,QAAQ,CAAC,4BAA4B,CAAC;SACtC,QAAQ,EAAE;IACf,QAAQ,EAAE,OAAC;SACN,KAAK,CAAC,oBAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;SACvC,GAAG,CAAC,8BAAkB,CAAC;SACvB,QAAQ,CAAC,sBAAsB,CAAC;SAChC,QAAQ,EAAE;IACf,eAAe,EAAE,oBAAQ,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE;IACnE,YAAY,EAAE,OAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,QAAQ,EAAE;CAChF,CAAC,CAAC;AAEH;;;GAGG;AACU,QAAA,mBAAmB,GAAG,OAAC,CAAC,YAAY,CAAC;IAC9C,KAAK,EAAE,0BAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,qDAAqD,CAAC,CAAC,QAAQ,EAAE;IACpG,SAAS,EAAE,OAAC;SACP,KAAK,CAAC,oBAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;SACvC,GAAG,CAAC,8BAAkB,CAAC;SACvB,QAAQ,CAAC,sCAAsC,CAAC;SAChD,QAAQ,EAAE;IACf,aAAa,EAAE,oBAAQ,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE;IAC/D,eAAe,EAAE,oBAAQ,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE;IACnE,QAAQ,EAAE,OAAC;SACN,KAAK,CAAC,oBAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;SACvC,GAAG,CAAC,8BAAkB,CAAC;SACvB,QAAQ,CAAC,sBAAsB,CAAC;SAChC,QAAQ,EAAE;IACf,cAAc,EAAE,OAAC;SACZ,IAAI,CAAC,4BAAU,CAAC;SAChB,QAAQ,CAAC,oDAAoD,CAAC;SAC9D,QAAQ,EAAE;IACf,OAAO,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC,CAAC,QAAQ,EAAE;IAC3E,YAAY,EAAE,OAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,QAAQ,EAAE;CAChF,CAAC,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { CustomerService, RequestContext } from '@vendure/core';
2
+ import { McpToolHandler } from '@vendure/mcp-sdk';
3
+ import { z } from 'zod';
4
+ import { McpToolSerializerService } from '../serializer.service';
5
+ declare const getCustomerInput: z.ZodObject<{
6
+ id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
7
+ }, z.core.$strict>;
8
+ type GetCustomerInput = z.infer<typeof getCustomerInput>;
9
+ export declare class GetCustomerTool implements McpToolHandler<GetCustomerInput> {
10
+ private readonly customerService;
11
+ private readonly serializer;
12
+ constructor(customerService: CustomerService, serializer: McpToolSerializerService);
13
+ execute(ctx: RequestContext, input: GetCustomerInput): Promise<{
14
+ customer: {
15
+ id: import("@vendure/core").ID;
16
+ firstName: string;
17
+ lastName: string;
18
+ emailAddress: string;
19
+ phoneNumber: string;
20
+ addresses: {
21
+ defaultShippingAddress: boolean;
22
+ defaultBillingAddress: boolean;
23
+ id: import("@vendure/core").ID;
24
+ }[] | undefined;
25
+ } | null;
26
+ }>;
27
+ }
28
+ export {};
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.GetCustomerTool = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const core_1 = require("@vendure/core");
15
+ const mcp_sdk_1 = require("@vendure/mcp-sdk");
16
+ const zod_1 = require("zod");
17
+ const id_schema_1 = require("../id-schema");
18
+ const serializer_service_1 = require("../serializer.service");
19
+ const getCustomerInput = zod_1.z.strictObject({
20
+ id: id_schema_1.idSchema.describe('Customer ID.'),
21
+ });
22
+ let GetCustomerTool = class GetCustomerTool {
23
+ constructor(customerService, serializer) {
24
+ this.customerService = customerService;
25
+ this.serializer = serializer;
26
+ }
27
+ async execute(ctx, input) {
28
+ return {
29
+ customer: this.serializer.customer(await this.customerService.findOne(ctx, input.id, ['user'])),
30
+ };
31
+ }
32
+ };
33
+ exports.GetCustomerTool = GetCustomerTool;
34
+ exports.GetCustomerTool = GetCustomerTool = __decorate([
35
+ (0, mcp_sdk_1.McpTool)({
36
+ name: 'get_customer',
37
+ toolset: 'admin',
38
+ description: 'Get a customer by id.',
39
+ keywords: [
40
+ 'look up a customer record',
41
+ "view a client's profile",
42
+ 'pull up customer details',
43
+ 'find a buyer by id',
44
+ 'inspect a customer account',
45
+ 'open a single customer',
46
+ ],
47
+ permissions: [core_1.Permission.ReadCustomer],
48
+ behavior: 'readonly',
49
+ inputSchema: getCustomerInput,
50
+ }),
51
+ (0, common_1.Injectable)(),
52
+ __metadata("design:paramtypes", [core_1.CustomerService,
53
+ serializer_service_1.McpToolSerializerService])
54
+ ], GetCustomerTool);
55
+ //# sourceMappingURL=get-customer.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-customer.tool.js","sourceRoot":"","sources":["../../../../src/tools/built-in/admin/get-customer.tool.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,wCAA4E;AAC5E,8CAA2D;AAC3D,6BAAwB;AAExB,4CAAwC;AACxC,8DAAiE;AAEjE,MAAM,gBAAgB,GAAG,OAAC,CAAC,YAAY,CAAC;IACpC,EAAE,EAAE,oBAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC;CACxC,CAAC,CAAC;AAqBI,IAAM,eAAe,GAArB,MAAM,eAAe;IACxB,YACqB,eAAgC,EAChC,UAAoC;QADpC,oBAAe,GAAf,eAAe,CAAiB;QAChC,eAAU,GAAV,UAAU,CAA0B;IACtD,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,GAAmB,EAAE,KAAuB;QACtD,OAAO;YACH,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;SAClG,CAAC;IACN,CAAC;CACJ,CAAA;AAXY,0CAAe;0BAAf,eAAe;IAjB3B,IAAA,iBAAO,EAAC;QACL,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,uBAAuB;QACpC,QAAQ,EAAE;YACN,2BAA2B;YAC3B,yBAAyB;YACzB,0BAA0B;YAC1B,oBAAoB;YACpB,4BAA4B;YAC5B,wBAAwB;SAC3B;QACD,WAAW,EAAE,CAAC,iBAAU,CAAC,YAAY,CAAC;QACtC,QAAQ,EAAE,UAAU;QACpB,WAAW,EAAE,gBAAgB;KAChC,CAAC;IACD,IAAA,mBAAU,GAAE;qCAG6B,sBAAe;QACpB,6CAAwB;GAHhD,eAAe,CAW3B"}
@@ -0,0 +1,100 @@
1
+ import { OrderService, RequestContext } from '@vendure/core';
2
+ import { McpToolHandler } from '@vendure/mcp-sdk';
3
+ import { z } from 'zod';
4
+ import { McpToolSerializerService } from '../serializer.service';
5
+ declare const getOrderInput: z.ZodObject<{
6
+ id: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
7
+ code: z.ZodOptional<z.ZodString>;
8
+ }, z.core.$strict>;
9
+ type GetOrderInput = z.infer<typeof getOrderInput>;
10
+ export declare class AdminGetOrderTool implements McpToolHandler<GetOrderInput> {
11
+ private readonly orderService;
12
+ private readonly serializer;
13
+ constructor(orderService: OrderService, serializer: McpToolSerializerService);
14
+ execute(ctx: RequestContext, input: GetOrderInput): Promise<{
15
+ order: {
16
+ id: import("@vendure/core").ID;
17
+ code: string;
18
+ state: import("@vendure/core").OrderState;
19
+ active: boolean;
20
+ total: number;
21
+ totalDecimal: string;
22
+ totalWithTax: number;
23
+ totalWithTaxDecimal: string;
24
+ currencyCode: import("@vendure/core").CurrencyCode;
25
+ totalQuantity: number;
26
+ createdAt: string | null;
27
+ updatedAt: string | null;
28
+ orderPlacedAt: string | null;
29
+ couponCodes: string[];
30
+ discounts: {
31
+ adjustmentSource: string;
32
+ type: import("@vendure/core").AdjustmentType;
33
+ description: string;
34
+ amount: number;
35
+ amountDecimal: string;
36
+ amountWithTax: number;
37
+ amountWithTaxDecimal: string;
38
+ }[];
39
+ lines: {
40
+ id: import("@vendure/core").ID;
41
+ quantity: number;
42
+ linePriceWithTax: number;
43
+ linePriceWithTaxDecimal: string;
44
+ productVariant: {
45
+ id: import("@vendure/core").ID;
46
+ name: import("@vendure/core").LocaleString;
47
+ sku: string;
48
+ } | null;
49
+ }[];
50
+ payments: {
51
+ id: import("@vendure/core").ID;
52
+ method: string;
53
+ amount: number;
54
+ amountDecimal: string;
55
+ state: import("@vendure/core").PaymentState;
56
+ transactionId: string;
57
+ errorMessage: string | undefined;
58
+ publicMetadata: any;
59
+ refunds: {
60
+ id: import("@vendure/core").ID;
61
+ state: import("@vendure/core").RefundState;
62
+ total: number;
63
+ totalDecimal: string;
64
+ reason: string;
65
+ }[];
66
+ }[] | undefined;
67
+ fulfillments: {
68
+ id: import("@vendure/core").ID;
69
+ state: import("@vendure/core").FulfillmentState;
70
+ method: string;
71
+ trackingCode: string;
72
+ lines: {
73
+ orderLineId: import("@vendure/core").ID;
74
+ quantity: number;
75
+ }[];
76
+ }[] | undefined;
77
+ customer: {
78
+ id: import("@vendure/core").ID;
79
+ emailAddress: string;
80
+ firstName: string;
81
+ lastName: string;
82
+ } | null | undefined;
83
+ shippingAddress: Record<string, string> | null;
84
+ billingAddress: Record<string, string> | null;
85
+ shippingWithTax: number;
86
+ shippingWithTaxDecimal: string;
87
+ shippingLines: {
88
+ id: import("@vendure/core").ID;
89
+ shippingMethodId: import("@vendure/core").ID | null;
90
+ priceWithTax: number;
91
+ priceWithTaxDecimal: string;
92
+ }[] | undefined;
93
+ } | null;
94
+ message?: undefined;
95
+ } | {
96
+ order: null;
97
+ message: string;
98
+ }>;
99
+ }
100
+ export {};
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AdminGetOrderTool = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const core_1 = require("@vendure/core");
15
+ const mcp_sdk_1 = require("@vendure/mcp-sdk");
16
+ const zod_1 = require("zod");
17
+ const id_schema_1 = require("../id-schema");
18
+ const order_list_helpers_1 = require("../order-list-helpers");
19
+ const serializer_service_1 = require("../serializer.service");
20
+ const string_schemas_1 = require("../string-schemas");
21
+ const getOrderInput = zod_1.z
22
+ .strictObject({
23
+ id: id_schema_1.idSchema.describe('Order ID. Pass this or code, not both.').optional(),
24
+ code: string_schemas_1.shortText.describe('Order code, used when ID is omitted.').optional(),
25
+ })
26
+ .refine(input => (input.id != null) !== (input.code != null), {
27
+ message: 'Pass exactly one of id or code.',
28
+ });
29
+ // Named distinctly from the shop version so stack traces and symbol search aren't ambiguous.
30
+ let AdminGetOrderTool = class AdminGetOrderTool {
31
+ constructor(orderService, serializer) {
32
+ this.orderService = orderService;
33
+ this.serializer = serializer;
34
+ }
35
+ async execute(ctx, input) {
36
+ const lookup = input.id != null ? `id ${String(input.id)}` : `code ${String(input.code)}`;
37
+ const order = input.id != null
38
+ ? await this.orderService.findOne(ctx, input.id, order_list_helpers_1.ORDER_DETAIL_RELATIONS)
39
+ : await this.orderService.findOneByCode(ctx, input.code, order_list_helpers_1.ORDER_DETAIL_RELATIONS);
40
+ if (order) {
41
+ return { order: this.serializer.order(order) };
42
+ }
43
+ return { order: null, message: `No order with ${lookup}` };
44
+ }
45
+ };
46
+ exports.AdminGetOrderTool = AdminGetOrderTool;
47
+ exports.AdminGetOrderTool = AdminGetOrderTool = __decorate([
48
+ (0, mcp_sdk_1.McpTool)({
49
+ name: 'get_order',
50
+ toolset: 'admin',
51
+ description: 'Get an order by ID or code, with its lines, customer and payments.',
52
+ keywords: [
53
+ 'look up an order in the back office',
54
+ 'pull up order details for support',
55
+ 'inspect a single order',
56
+ 'open an order record by id or code',
57
+ 'view an order as staff',
58
+ 'fetch order info for operations',
59
+ ],
60
+ permissions: [core_1.Permission.ReadOrder],
61
+ behavior: 'readonly',
62
+ inputSchema: getOrderInput,
63
+ }),
64
+ (0, common_1.Injectable)(),
65
+ __metadata("design:paramtypes", [core_1.OrderService,
66
+ serializer_service_1.McpToolSerializerService])
67
+ ], AdminGetOrderTool);
68
+ //# sourceMappingURL=get-order.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-order.tool.js","sourceRoot":"","sources":["../../../../src/tools/built-in/admin/get-order.tool.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,wCAAyE;AACzE,8CAA2D;AAC3D,6BAAwB;AAExB,4CAAwC;AACxC,8DAA+D;AAC/D,8DAAiE;AACjE,sDAA8C;AAE9C,MAAM,aAAa,GAAG,OAAC;KAClB,YAAY,CAAC;IACV,EAAE,EAAE,oBAAQ,CAAC,QAAQ,CAAC,wCAAwC,CAAC,CAAC,QAAQ,EAAE;IAC1E,IAAI,EAAE,0BAAS,CAAC,QAAQ,CAAC,sCAAsC,CAAC,CAAC,QAAQ,EAAE;CAC9E,CAAC;KACD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE;IAC1D,OAAO,EAAE,iCAAiC;CAC7C,CAAC,CAAC;AAIP,6FAA6F;AAkBtF,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC1B,YACqB,YAA0B,EAC1B,UAAoC;QADpC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,eAAU,GAAV,UAAU,CAA0B;IACtD,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,GAAmB,EAAE,KAAoB;QACnD,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1F,MAAM,KAAK,GACP,KAAK,CAAC,EAAE,IAAI,IAAI;YACZ,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,2CAAsB,CAAC;YACxE,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,IAAc,EAAE,2CAAsB,CAAC,CAAC;QACnG,IAAI,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QACnD,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,iBAAiB,MAAM,EAAE,EAAE,CAAC;IAC/D,CAAC;CACJ,CAAA;AAjBY,8CAAiB;4BAAjB,iBAAiB;IAjB7B,IAAA,iBAAO,EAAC;QACL,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,oEAAoE;QACjF,QAAQ,EAAE;YACN,qCAAqC;YACrC,mCAAmC;YACnC,wBAAwB;YACxB,oCAAoC;YACpC,wBAAwB;YACxB,iCAAiC;SACpC;QACD,WAAW,EAAE,CAAC,iBAAU,CAAC,SAAS,CAAC;QACnC,QAAQ,EAAE,UAAU;QACpB,WAAW,EAAE,aAAa;KAC7B,CAAC;IACD,IAAA,mBAAU,GAAE;qCAG0B,mBAAY;QACd,6CAAwB;GAHhD,iBAAiB,CAiB7B"}