@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 @@
1
+ {"version":3,"file":"mcp-tool-registry.service.js","sourceRoot":"","sources":["../../src/registry/mcp-tool-registry.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import { StandardSchemaWithJSON } from '@modelcontextprotocol/server';
2
+ import { McpJsonSchema, McpToolSchema } from '@vendure/mcp-sdk';
3
+ interface McpToolInjectedFields {
4
+ confirm: boolean;
5
+ sessionToken: boolean;
6
+ }
7
+ interface PreparedMcpToolSchemas {
8
+ wireJsonSchema: McpJsonSchema;
9
+ compiledInputSchema: StandardSchemaWithJSON;
10
+ compiledOutputSchema?: StandardSchemaWithJSON;
11
+ }
12
+ /** Prepares and validates tool schemas once, when the registry starts. */
13
+ export declare class McpToolSchemaService {
14
+ prepareToolSchemas(options: {
15
+ toolName: string;
16
+ pluginSource: string;
17
+ inputSchema?: McpToolSchema;
18
+ outputSchema?: McpToolSchema;
19
+ injectedFields: McpToolInjectedFields;
20
+ }): PreparedMcpToolSchemas;
21
+ compileJsonSchema(schema: McpJsonSchema, label: string): StandardSchemaWithJSON;
22
+ validate(compiled: StandardSchemaWithJSON, value: unknown): Promise<{
23
+ ok: true;
24
+ value: unknown;
25
+ } | {
26
+ ok: false;
27
+ message: string;
28
+ }>;
29
+ /** Adds registry-owned fields to a clone, leaving the author's schema unchanged. */
30
+ private addInjectedFields;
31
+ private formatIssue;
32
+ private isMcpJsonSchema;
33
+ private standardProps;
34
+ private isStandardSchema;
35
+ private deriveJsonSchema;
36
+ private toRegisteredStandardSchema;
37
+ /** Validates author input separately from the fields the registry adds. */
38
+ private validateAroundInjectedFields;
39
+ private assertNotDeclared;
40
+ private resolveAuthorSchema;
41
+ }
42
+ export {};
@@ -0,0 +1,229 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.McpToolSchemaService = void 0;
10
+ const server_1 = require("@modelcontextprotocol/server");
11
+ const common_1 = require("@nestjs/common");
12
+ const NO_ARGS_SCHEMA = { type: 'object', properties: {}, additionalProperties: false };
13
+ /** Prepares and validates tool schemas once, when the registry starts. */
14
+ let McpToolSchemaService = class McpToolSchemaService {
15
+ prepareToolSchemas(options) {
16
+ var _a;
17
+ const { toolName, pluginSource, injectedFields } = options;
18
+ const toolLabel = `MCP tool "${toolName}" (${pluginSource})`;
19
+ const inputLabel = `${toolLabel} inputSchema`;
20
+ const outputLabel = `${toolLabel} outputSchema`;
21
+ const resolvedInput = this.resolveAuthorSchema(options.inputSchema, inputLabel, 'input');
22
+ const resolvedOutput = this.resolveAuthorSchema(options.outputSchema, outputLabel, 'output');
23
+ const jsonInputSchema = (_a = resolvedInput === null || resolvedInput === void 0 ? void 0 : resolvedInput.json) !== null && _a !== void 0 ? _a : NO_ARGS_SCHEMA;
24
+ if (injectedFields.confirm) {
25
+ this.assertNotDeclared({
26
+ toolLabel,
27
+ schema: jsonInputSchema,
28
+ schemaName: 'inputSchema',
29
+ field: 'confirm',
30
+ reason: 'the registry adds it to destructive tools',
31
+ });
32
+ }
33
+ if (injectedFields.sessionToken) {
34
+ const reason = 'the registry adds it to shop tools that use the active order';
35
+ this.assertNotDeclared({
36
+ toolLabel,
37
+ schema: jsonInputSchema,
38
+ schemaName: 'inputSchema',
39
+ field: 'sessionToken',
40
+ reason,
41
+ });
42
+ this.assertNotDeclared({
43
+ toolLabel,
44
+ schema: resolvedOutput === null || resolvedOutput === void 0 ? void 0 : resolvedOutput.json,
45
+ schemaName: 'outputSchema',
46
+ field: 'sessionToken',
47
+ reason,
48
+ });
49
+ }
50
+ const wireJsonSchema = this.addInjectedFields(jsonInputSchema, injectedFields);
51
+ const compiledInputSchema = (resolvedInput === null || resolvedInput === void 0 ? void 0 : resolvedInput.standard)
52
+ ? this.toRegisteredStandardSchema(resolvedInput.standard, wireJsonSchema, injectedFields)
53
+ : this.compileJsonSchema(wireJsonSchema, inputLabel);
54
+ const compiledOutputSchema = resolvedOutput
55
+ ? this.compileJsonSchema(resolvedOutput.json, outputLabel)
56
+ : undefined;
57
+ return { wireJsonSchema, compiledInputSchema, compiledOutputSchema };
58
+ }
59
+ compileJsonSchema(schema, label) {
60
+ try {
61
+ return (0, server_1.fromJsonSchema)(schema);
62
+ }
63
+ catch (e) {
64
+ throw new Error(`${label} failed to compile: ${e instanceof Error ? e.message : String(e)}. ` +
65
+ `Author schemas as JSON Schema 2020-12 without a "$schema" key.`);
66
+ }
67
+ }
68
+ async validate(compiled, value) {
69
+ const result = await compiled['~standard'].validate(value);
70
+ if (result.issues) {
71
+ const message = result.issues.map(issue => this.formatIssue(issue)).join('; ');
72
+ return { ok: false, message };
73
+ }
74
+ return { ok: true, value: result.value };
75
+ }
76
+ /** Adds registry-owned fields to a clone, leaving the author's schema unchanged. */
77
+ addInjectedFields(jsonInputSchema, injectedFields) {
78
+ if (!injectedFields.confirm && !injectedFields.sessionToken) {
79
+ return jsonInputSchema;
80
+ }
81
+ const wire = structuredClone(jsonInputSchema);
82
+ wire.properties = Object.assign({}, wire.properties);
83
+ if (injectedFields.confirm) {
84
+ wire.properties.confirm = {
85
+ type: 'boolean',
86
+ description: 'Omit on the first call to get a preview. Set to true only after the user has ' +
87
+ 'approved the action.',
88
+ };
89
+ }
90
+ if (injectedFields.sessionToken) {
91
+ wire.properties.sessionToken = {
92
+ type: 'string',
93
+ description: 'Session token returned by cart tools. To start a cart, call add_to_cart once without this field. ' +
94
+ 'For later calls, including parallel calls, pass the latest returned token to use the same cart.',
95
+ };
96
+ }
97
+ return wire;
98
+ }
99
+ formatIssue(issue) {
100
+ var _a;
101
+ const path = ((_a = issue.path) !== null && _a !== void 0 ? _a : [])
102
+ .map(segment => (typeof segment === 'object' ? String(segment.key) : String(segment)))
103
+ .join('.');
104
+ return path ? `${path}: ${issue.message}` : issue.message;
105
+ }
106
+ isMcpJsonSchema(value) {
107
+ return typeof value === 'object' && value !== null && value.type === 'object';
108
+ }
109
+ standardProps(value) {
110
+ if (typeof value !== 'object' || value === null) {
111
+ return undefined;
112
+ }
113
+ const std = value['~standard'];
114
+ return typeof std === 'object' && std !== null ? std : undefined;
115
+ }
116
+ isStandardSchema(value) {
117
+ var _a;
118
+ const std = this.standardProps(value);
119
+ return (typeof (std === null || std === void 0 ? void 0 : std.validate) === 'function' &&
120
+ typeof ((_a = std.jsonSchema) === null || _a === void 0 ? void 0 : _a.input) === 'function');
121
+ }
122
+ deriveJsonSchema(schema, label, direction) {
123
+ let json;
124
+ try {
125
+ json = schema['~standard'].jsonSchema[direction]({ target: 'draft-2020-12' });
126
+ }
127
+ catch (e) {
128
+ throw new Error(`${label}: the Standard Schema could not be converted to ` +
129
+ `JSON Schema: ${e instanceof Error ? e.message : String(e)}`);
130
+ }
131
+ // Standard Schema converters often add this key, but the MCP compiler rejects it.
132
+ delete json.$schema;
133
+ if (!this.isMcpJsonSchema(json)) {
134
+ const type = json.type;
135
+ // A union converts to anyOf/oneOf with no root type, so it needs its own message to say how to fix it.
136
+ if (type === undefined && (json.anyOf !== undefined || json.oneOf !== undefined)) {
137
+ throw new Error(`${label}: the Standard Schema is a union (anyOf/oneOf) ` +
138
+ `at the top level, and an MCP tool input must be a single object. Wrap it in an ` +
139
+ `object, e.g. z.object({ input: z.discriminatedUnion(...) }).`);
140
+ }
141
+ throw new Error(`${label}: the Standard Schema must describe an object at the ` +
142
+ `top level (the converted JSON Schema has type "${String(type)}").`);
143
+ }
144
+ return json;
145
+ }
146
+ toRegisteredStandardSchema(schema, wireJsonSchema, injectedFields) {
147
+ const std = schema['~standard'];
148
+ const validate = injectedFields.confirm || injectedFields.sessionToken
149
+ ? (value) => this.validateAroundInjectedFields(std, injectedFields, value)
150
+ : (value) => std.validate(value);
151
+ return {
152
+ '~standard': {
153
+ version: 1,
154
+ vendor: 'vendure-mcp',
155
+ validate,
156
+ jsonSchema: {
157
+ input: () => wireJsonSchema,
158
+ output: () => wireJsonSchema,
159
+ },
160
+ },
161
+ };
162
+ }
163
+ /** Validates author input separately from the fields the registry adds. */
164
+ async validateAroundInjectedFields(std, injectedFields, value) {
165
+ const input = Object.assign({}, (value !== null && value !== void 0 ? value : {}));
166
+ const held = {};
167
+ if (injectedFields.confirm && input.confirm !== undefined) {
168
+ if (typeof input.confirm !== 'boolean') {
169
+ return { issues: [{ message: '"confirm" must be a boolean', path: ['confirm'] }] };
170
+ }
171
+ held.confirm = input.confirm;
172
+ delete input.confirm;
173
+ }
174
+ if (injectedFields.sessionToken && input.sessionToken !== undefined) {
175
+ if (typeof input.sessionToken !== 'string') {
176
+ return { issues: [{ message: '"sessionToken" must be a string', path: ['sessionToken'] }] };
177
+ }
178
+ held.sessionToken = input.sessionToken;
179
+ delete input.sessionToken;
180
+ }
181
+ const result = await std.validate(input);
182
+ if (result.issues) {
183
+ return result;
184
+ }
185
+ const parsed = result.value;
186
+ if (typeof parsed !== 'object' || parsed === null || Array.isArray(parsed)) {
187
+ return {
188
+ issues: [
189
+ {
190
+ message: 'the input schema of a tool with registry-injected fields ' +
191
+ 'must parse to a plain object',
192
+ },
193
+ ],
194
+ };
195
+ }
196
+ return { value: Object.assign(Object.assign({}, parsed), held) };
197
+ }
198
+ assertNotDeclared(check) {
199
+ var _a, _b;
200
+ if (((_b = (_a = check.schema) === null || _a === void 0 ? void 0 : _a.properties) === null || _b === void 0 ? void 0 : _b[check.field]) !== undefined) {
201
+ throw new Error(`${check.toolLabel} must not declare "${check.field}" in its ${check.schemaName}: ${check.reason}.`);
202
+ }
203
+ }
204
+ resolveAuthorSchema(raw, label, direction) {
205
+ var _a;
206
+ if (raw === undefined) {
207
+ return undefined;
208
+ }
209
+ // Some Standard Schema objects also carry `type: 'object'`, so check them first.
210
+ if (this.isStandardSchema(raw)) {
211
+ return { json: this.deriveJsonSchema(raw, label, direction), standard: raw };
212
+ }
213
+ if (typeof ((_a = this.standardProps(raw)) === null || _a === void 0 ? void 0 : _a.validate) === 'function') {
214
+ throw new TypeError(`${label}: the schema implements Standard Schema validation but ` +
215
+ `cannot emit JSON Schema. Use a library version with JSON Schema conversion ` +
216
+ `(e.g. zod v4), or author the schema as plain JSON Schema.`);
217
+ }
218
+ if (this.isMcpJsonSchema(raw)) {
219
+ return { json: raw };
220
+ }
221
+ throw new Error(`${label}: the schema must be a plain JSON Schema object ` +
222
+ `({ type: 'object', ... }) or a Standard Schema with JSON conversion (e.g. a zod v4 schema).`);
223
+ }
224
+ };
225
+ exports.McpToolSchemaService = McpToolSchemaService;
226
+ exports.McpToolSchemaService = McpToolSchemaService = __decorate([
227
+ (0, common_1.Injectable)()
228
+ ], McpToolSchemaService);
229
+ //# sourceMappingURL=mcp-tool-schema.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-tool-schema.service.js","sourceRoot":"","sources":["../../src/registry/mcp-tool-schema.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,yDAKsC;AACtC,2CAA4C;AAG5C,MAAM,cAAc,GAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC;AAatG,0EAA0E;AAEnE,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAC7B,kBAAkB,CAAC,OAMlB;;QACG,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;QAC3D,MAAM,SAAS,GAAG,aAAa,QAAQ,MAAM,YAAY,GAAG,CAAC;QAC7D,MAAM,UAAU,GAAG,GAAG,SAAS,cAAc,CAAC;QAC9C,MAAM,WAAW,GAAG,GAAG,SAAS,eAAe,CAAC;QAChD,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QACzF,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,YAAY,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC7F,MAAM,eAAe,GAAG,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,mCAAI,cAAc,CAAC;QAE9D,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;YACzB,IAAI,CAAC,iBAAiB,CAAC;gBACnB,SAAS;gBACT,MAAM,EAAE,eAAe;gBACvB,UAAU,EAAE,aAAa;gBACzB,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE,2CAA2C;aACtD,CAAC,CAAC;QACP,CAAC;QACD,IAAI,cAAc,CAAC,YAAY,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,8DAA8D,CAAC;YAC9E,IAAI,CAAC,iBAAiB,CAAC;gBACnB,SAAS;gBACT,MAAM,EAAE,eAAe;gBACvB,UAAU,EAAE,aAAa;gBACzB,KAAK,EAAE,cAAc;gBACrB,MAAM;aACT,CAAC,CAAC;YACH,IAAI,CAAC,iBAAiB,CAAC;gBACnB,SAAS;gBACT,MAAM,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI;gBAC5B,UAAU,EAAE,cAAc;gBAC1B,KAAK,EAAE,cAAc;gBACrB,MAAM;aACT,CAAC,CAAC;QACP,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;QAC/E,MAAM,mBAAmB,GAAG,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,QAAQ;YAC/C,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,aAAa,CAAC,QAAQ,EAAE,cAAc,EAAE,cAAc,CAAC;YACzF,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QACzD,MAAM,oBAAoB,GAAG,cAAc;YACvC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC;YAC1D,CAAC,CAAC,SAAS,CAAC;QAEhB,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,CAAC;IACzE,CAAC;IAED,iBAAiB,CAAC,MAAqB,EAAE,KAAa;QAClD,IAAI,CAAC;YACD,OAAO,IAAA,uBAAc,EAAC,MAAmC,CAAC,CAAC;QAC/D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CACX,GAAG,KAAK,uBAAuB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;gBACzE,gEAAgE,CACvE,CAAC;QACN,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CACV,QAAgC,EAChC,KAAc;QAEd,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAClC,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IAC7C,CAAC;IAED,oFAAoF;IAC5E,iBAAiB,CACrB,eAA8B,EAC9B,cAAqC;QAErC,IAAI,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;YAC1D,OAAO,eAAe,CAAC;QAC3B,CAAC;QACD,MAAM,IAAI,GAAG,eAAe,CAAC,eAAe,CAAC,CAAC;QAC9C,IAAI,CAAC,UAAU,qBAAQ,IAAI,CAAC,UAAU,CAAE,CAAC;QACzC,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;YACzB,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG;gBACtB,IAAI,EAAE,SAAS;gBACf,WAAW,EACP,+EAA+E;oBAC/E,sBAAsB;aAC7B,CAAC;QACN,CAAC;QACD,IAAI,cAAc,CAAC,YAAY,EAAE,CAAC;YAC9B,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG;gBAC3B,IAAI,EAAE,QAAQ;gBACd,WAAW,EACP,mGAAmG;oBACnG,iGAAiG;aACxG,CAAC;QACN,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,WAAW,CAAC,KAA6B;;QAC7C,MAAM,IAAI,GAAG,CAAC,MAAA,KAAK,CAAC,IAAI,mCAAI,EAAE,CAAC;aAC1B,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;aACrF,IAAI,CAAC,GAAG,CAAC,CAAC;QACf,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;IAC9D,CAAC;IAEO,eAAe,CAAC,KAAc;QAClC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAK,KAA4B,CAAC,IAAI,KAAK,QAAQ,CAAC;IAC1G,CAAC;IAEO,aAAa,CAAC,KAAc;QAChC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC9C,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,MAAM,GAAG,GAAI,KAAiC,CAAC,WAAW,CAAC,CAAC;QAC5D,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,CAAC,CAAC,CAAE,GAA+B,CAAC,CAAC,CAAC,SAAS,CAAC;IAClG,CAAC;IAEO,gBAAgB,CAAC,KAAc;;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACtC,OAAO,CACH,OAAO,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,QAAQ,CAAA,KAAK,UAAU;YACnC,OAAO,CAAA,MAAC,GAAG,CAAC,UAA8C,0CAAE,KAAK,CAAA,KAAK,UAAU,CACnF,CAAC;IACN,CAAC;IAEO,gBAAgB,CACpB,MAAyB,EACzB,KAAa,EACb,SAA6B;QAE7B,IAAI,IAA6B,CAAC;QAClC,IAAI,CAAC;YACD,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;QAClF,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CACX,GAAG,KAAK,kDAAkD;gBACtD,gBAAgB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACnE,CAAC;QACN,CAAC;QACD,kFAAkF;QAClF,OAAO,IAAI,CAAC,OAAO,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,GAAI,IAA2B,CAAC,IAAI,CAAC;YAC/C,uGAAuG;YACvG,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,EAAE,CAAC;gBAC/E,MAAM,IAAI,KAAK,CACX,GAAG,KAAK,iDAAiD;oBACrD,iFAAiF;oBACjF,8DAA8D,CACrE,CAAC;YACN,CAAC;YACD,MAAM,IAAI,KAAK,CACX,GAAG,KAAK,uDAAuD;gBAC3D,kDAAkD,MAAM,CAAC,IAAI,CAAC,KAAK,CAC1E,CAAC;QACN,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,0BAA0B,CAC9B,MAAyB,EACzB,cAA6B,EAC7B,cAAqC;QAErC,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;QAChC,MAAM,QAAQ,GACV,cAAc,CAAC,OAAO,IAAI,cAAc,CAAC,YAAY;YACjD,CAAC,CAAC,CAAC,KAAc,EAAE,EAAE,CAAC,IAAI,CAAC,4BAA4B,CAAC,GAAG,EAAE,cAAc,EAAE,KAAK,CAAC;YACnF,CAAC,CAAC,CAAC,KAAc,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAClD,OAAO;YACH,WAAW,EAAE;gBACT,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,aAAa;gBACrB,QAAQ;gBACR,UAAU,EAAE;oBACR,KAAK,EAAE,GAAG,EAAE,CAAC,cAAyC;oBACtD,MAAM,EAAE,GAAG,EAAE,CAAC,cAAyC;iBAC1D;aACJ;SACsB,CAAC;IAChC,CAAC;IAED,2EAA2E;IACnE,KAAK,CAAC,4BAA4B,CACtC,GAAmC,EACnC,cAAqC,EACrC,KAAc;QAEd,MAAM,KAAK,qBAAS,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAA6B,CAAE,CAAC;QAChE,MAAM,IAAI,GAA4B,EAAE,CAAC;QACzC,IAAI,cAAc,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACxD,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACrC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,6BAA6B,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;YACvF,CAAC;YACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;YAC7B,OAAO,KAAK,CAAC,OAAO,CAAC;QACzB,CAAC;QACD,IAAI,cAAc,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAClE,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;gBACzC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,iCAAiC,EAAE,IAAI,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE,CAAC;YAChG,CAAC;YACD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;YACvC,OAAO,KAAK,CAAC,YAAY,CAAC;QAC9B,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO,MAAM,CAAC;QAClB,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC;QAC5B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACzE,OAAO;gBACH,MAAM,EAAE;oBACJ;wBACI,OAAO,EACH,2DAA2D;4BAC3D,8BAA8B;qBACrC;iBACJ;aACJ,CAAC;QACN,CAAC;QACD,OAAO,EAAE,KAAK,kCAAO,MAAM,GAAK,IAAI,CAAE,EAAE,CAAC;IAC7C,CAAC;IAEO,iBAAiB,CAAC,KAMzB;;QACG,IAAI,CAAA,MAAA,MAAA,KAAK,CAAC,MAAM,0CAAE,UAAU,0CAAG,KAAK,CAAC,KAAK,CAAC,MAAK,SAAS,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CACX,GAAG,KAAK,CAAC,SAAS,sBAAsB,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,MAAM,GAAG,CACtG,CAAC;QACN,CAAC;IACL,CAAC;IAEO,mBAAmB,CACvB,GAA8B,EAC9B,KAAa,EACb,SAA6B;;QAE7B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACpB,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,iFAAiF;QACjF,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;QACjF,CAAC;QACD,IAAI,OAAO,CAAA,MAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,0CAAE,QAAQ,CAAA,KAAK,UAAU,EAAE,CAAC;YAC1D,MAAM,IAAI,SAAS,CACf,GAAG,KAAK,yDAAyD;gBAC7D,6EAA6E;gBAC7E,2DAA2D,CAClE,CAAC;QACN,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QACzB,CAAC;QACD,MAAM,IAAI,KAAK,CACX,GAAG,KAAK,kDAAkD;YACtD,6FAA6F,CACpG,CAAC;IACN,CAAC;CACJ,CAAA;AAhRY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,mBAAU,GAAE;GACA,oBAAoB,CAgRhC"}
@@ -0,0 +1,32 @@
1
+ import type { StandardSchemaWithJSON, ToolAnnotations } from '@modelcontextprotocol/server';
2
+ import { McpJsonSchema, McpToolBehavior, McpToolHandler, McpToolMetadata } from '@vendure/mcp-sdk';
3
+ /**
4
+ * @description
5
+ * A discovered `@McpTool` provider, enriched by the registry at bootstrap. This is the registry's
6
+ * single source of truth, consumed by the transport factory and the admin API.
7
+ */
8
+ export interface McpRegisteredTool extends McpToolMetadata {
9
+ /** The discovered provider instance (implements `execute`). */
10
+ handler: McpToolHandler;
11
+ /** Name of the Nest module/host that declared the provider. */
12
+ pluginSource: string;
13
+ /** The tool's `behavior`, defaulting to `mutating` when not declared. */
14
+ resolvedBehavior: McpToolBehavior;
15
+ /** MCP annotations derived from behavior; surfaced to the agent in `tools/list` and `search_tools`. */
16
+ annotations: ToolAnnotations;
17
+ /** Decided once at discovery, so the advertised schema and the call-time session exchange cannot disagree. */
18
+ acceptsSessionToken: boolean;
19
+ compiledInputSchema: StandardSchemaWithJSON;
20
+ /** The author's schema, with optional `confirm` or `sessionToken` fields added when required. */
21
+ wireJsonSchema: McpJsonSchema;
22
+ /** Compiled validator for the declared output schema, if any. */
23
+ compiledOutputSchema?: StandardSchemaWithJSON;
24
+ }
25
+ /**
26
+ * @description
27
+ * A tool as handed to the per-request transport for registration: only the fields the SDK's
28
+ * registration call needs. Real tools satisfy it as-is. The discovery meta-tools (`search_tools` /
29
+ * `execute_tool`) share this shape too, since they have no handler of their own. They're routed
30
+ * by name in `callTool` and belong to no single toolset.
31
+ */
32
+ export type McpExposedTool = Pick<McpRegisteredTool, 'name' | 'title' | 'description' | 'compiledInputSchema' | 'annotations'>;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=registry-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry-types.js","sourceRoot":"","sources":["../../src/registry/registry-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import { ResolvedMcpPluginOptions } from './internal-types';
2
+ import { McpPluginOptions } from './types';
3
+ /**
4
+ * Applies every documented option default. The one exception is `oauth.issuer`, which the
5
+ * plugin's `configuration` hook defaults later because it needs the configured API port.
6
+ */
7
+ export declare function resolveMcpPluginOptions(options?: McpPluginOptions): ResolvedMcpPluginOptions;
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveMcpPluginOptions = resolveMcpPluginOptions;
4
+ const constants_1 = require("./constants");
5
+ /**
6
+ * Applies every documented option default. The one exception is `oauth.issuer`, which the
7
+ * plugin's `configuration` hook defaults later because it needs the configured API port.
8
+ */
9
+ function resolveMcpPluginOptions(options = {}) {
10
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
11
+ const oauth = options.oauth && Object.assign(Object.assign({}, constants_1.DEFAULT_OAUTH_OPTIONS), withoutUndefined(options.oauth));
12
+ const ttlDays = (_b = (_a = options.logging) === null || _a === void 0 ? void 0 : _a.ttlDays) !== null && _b !== void 0 ? _b : constants_1.DEFAULT_LOG_TTL_DAYS;
13
+ assertNonNegativeNumber('logging.ttlDays', ttlDays);
14
+ if (oauth) {
15
+ assertNonNegativeNumber('oauth.grantRetentionDays', oauth.grantRetentionDays);
16
+ }
17
+ const toolExposure = (_c = options.toolExposure) !== null && _c !== void 0 ? _c : constants_1.DEFAULT_TOOL_EXPOSURE;
18
+ const shopAccess = (_d = options.shopAccess) !== null && _d !== void 0 ? _d : constants_1.DEFAULT_SHOP_ACCESS;
19
+ const capture = (_f = (_e = options.logging) === null || _e === void 0 ? void 0 : _e.capture) !== null && _f !== void 0 ? _f : constants_1.DEFAULT_LOG_CAPTURE;
20
+ assertOneOf('toolExposure', toolExposure, ['direct', 'discovery']);
21
+ assertOneOf('shopAccess', shopAccess, ['anonymous', 'authenticated', 'disabled']);
22
+ assertOneOf('logging.capture', capture, ['metadata', 'full']);
23
+ if (shopAccess === 'authenticated' && !oauth) {
24
+ throw new Error('McpPlugin: shopAccess "authenticated" needs an oauth block, because the shop endpoint ' +
25
+ 'answers every token-less request with an OAuth challenge that names the issuer.');
26
+ }
27
+ return {
28
+ toolExposure,
29
+ shopAccess,
30
+ oauth,
31
+ rateLimits: resolveRateLimits(options.rateLimits),
32
+ dnsRebinding: options.dnsRebinding,
33
+ logging: {
34
+ ttlDays,
35
+ capture,
36
+ redact: (_g = options.logging) === null || _g === void 0 ? void 0 : _g.redact,
37
+ maxBodyBytes: (_j = (_h = options.logging) === null || _h === void 0 ? void 0 : _h.maxBodyBytes) !== null && _j !== void 0 ? _j : constants_1.DEFAULT_LOG_MAX_BODY_BYTES,
38
+ retentionSchedule: (_k = options.logging) === null || _k === void 0 ? void 0 : _k.retentionSchedule,
39
+ captureClientIp: (_m = (_l = options.logging) === null || _l === void 0 ? void 0 : _l.captureClientIp) !== null && _m !== void 0 ? _m : false,
40
+ },
41
+ };
42
+ }
43
+ // An option read from an unset environment variable must fall back to its default rather than erase it.
44
+ function withoutUndefined(value) {
45
+ return Object.fromEntries(Object.entries(value).filter(([, v]) => v !== undefined));
46
+ }
47
+ function assertOneOf(name, value, allowed) {
48
+ if (!allowed.includes(value)) {
49
+ throw new Error(`McpPlugin: ${name} must be one of ${allowed.join(', ')}, got ${String(value)}.`);
50
+ }
51
+ }
52
+ function assertNonNegativeNumber(name, value) {
53
+ if (!Number.isFinite(value) || value < 0) {
54
+ throw new Error(`McpPlugin: ${name} must be a non-negative finite number, got ${String(value)}.`);
55
+ }
56
+ }
57
+ // The anonymous-IP backstop stays on unless the user explicitly passes `anonymousIp: false`.
58
+ function resolveRateLimits(rateLimits) {
59
+ var _a, _b, _c, _d, _e;
60
+ const resolved = {
61
+ perSession: (_a = rateLimits === null || rateLimits === void 0 ? void 0 : rateLimits.perSession) !== null && _a !== void 0 ? _a : constants_1.DEFAULT_RATE_LIMIT_OPTIONS.perSession,
62
+ perUser: (_b = rateLimits === null || rateLimits === void 0 ? void 0 : rateLimits.perUser) !== null && _b !== void 0 ? _b : constants_1.DEFAULT_RATE_LIMIT_OPTIONS.perUser,
63
+ perClient: (_c = rateLimits === null || rateLimits === void 0 ? void 0 : rateLimits.perClient) !== null && _c !== void 0 ? _c : constants_1.DEFAULT_RATE_LIMIT_OPTIONS.perClient,
64
+ perTool: Object.assign(Object.assign({}, constants_1.DEFAULT_RATE_LIMIT_OPTIONS.perTool), ((rateLimits === null || rateLimits === void 0 ? void 0 : rateLimits.perTool) && withoutUndefined(rateLimits.perTool))),
65
+ anonymousIp: (_d = rateLimits === null || rateLimits === void 0 ? void 0 : rateLimits.anonymousIp) !== null && _d !== void 0 ? _d : constants_1.DEFAULT_RATE_LIMIT_OPTIONS.anonymousIp,
66
+ oauthIp: (_e = rateLimits === null || rateLimits === void 0 ? void 0 : rateLimits.oauthIp) !== null && _e !== void 0 ? _e : constants_1.DEFAULT_RATE_LIMIT_OPTIONS.oauthIp,
67
+ };
68
+ assertRpm('rateLimits.perSession', resolved.perSession);
69
+ assertRpm('rateLimits.perUser', resolved.perUser);
70
+ assertRpm('rateLimits.perClient', resolved.perClient);
71
+ assertRpm('rateLimits.anonymousIp', resolved.anonymousIp);
72
+ assertRpm('rateLimits.oauthIp', resolved.oauthIp);
73
+ for (const [toolName, perTool] of Object.entries(resolved.perTool)) {
74
+ assertRpm(`rateLimits.perTool.${toolName}`, perTool);
75
+ }
76
+ return resolved;
77
+ }
78
+ /** `false` means the bucket is switched off; anything else must carry a usable rpm. */
79
+ function assertRpm(name, option) {
80
+ if (option === false) {
81
+ return;
82
+ }
83
+ assertNonNegativeNumber(`${name}.rpm`, option.rpm);
84
+ }
85
+ //# sourceMappingURL=resolve-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-options.js","sourceRoot":"","sources":["../src/resolve-options.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /** Keep this file free of imports: the dashboard consent page reads it in the browser, where `constants.ts` can't load because it pulls in `@vendure/core`. */
2
+ export declare const OAUTH_ENDPOINT_PATHS: {
3
+ readonly register: "mcp/oauth/register";
4
+ readonly authorize: "mcp/oauth/authorize";
5
+ readonly authorizationRequest: "mcp/oauth/authorization-request";
6
+ readonly token: "mcp/oauth/token";
7
+ readonly revoke: "mcp/oauth/revoke";
8
+ };
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OAUTH_ENDPOINT_PATHS = void 0;
4
+ /** Keep this file free of imports: the dashboard consent page reads it in the browser, where `constants.ts` can't load because it pulls in `@vendure/core`. */
5
+ exports.OAUTH_ENDPOINT_PATHS = {
6
+ register: 'mcp/oauth/register',
7
+ authorize: 'mcp/oauth/authorize',
8
+ authorizationRequest: 'mcp/oauth/authorization-request',
9
+ token: 'mcp/oauth/token',
10
+ revoke: 'mcp/oauth/revoke',
11
+ };
12
+ //# sourceMappingURL=endpoint-paths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint-paths.js","sourceRoot":"","sources":["../../src/shared/endpoint-paths.ts"],"names":[],"mappings":";;;AAAA,+JAA+J;AAClJ,QAAA,oBAAoB,GAAG;IAChC,QAAQ,EAAE,oBAAoB;IAC9B,SAAS,EAAE,qBAAqB;IAChC,oBAAoB,EAAE,iCAAiC;IACvD,KAAK,EAAE,iBAAiB;IACxB,MAAM,EAAE,kBAAkB;CACpB,CAAC"}
@@ -0,0 +1,2 @@
1
+ /** Kept import-free so the dashboard bundle can reuse this check too; `oauth/oauth-utils.ts` pulls in NestJS and `node:crypto`, which can't load in a browser. */
2
+ export declare function isLoopbackHostname(hostname: string): boolean;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isLoopbackHostname = isLoopbackHostname;
4
+ /** Kept import-free so the dashboard bundle can reuse this check too; `oauth/oauth-utils.ts` pulls in NestJS and `node:crypto`, which can't load in a browser. */
5
+ function isLoopbackHostname(hostname) {
6
+ const bare = hostname.replace(/^\[|\]$/g, '').toLowerCase();
7
+ return bare === 'localhost' || bare === '127.0.0.1' || bare === '::1';
8
+ }
9
+ //# sourceMappingURL=loopback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loopback.js","sourceRoot":"","sources":["../../src/shared/loopback.ts"],"names":[],"mappings":";;AACA,gDAGC;AAJD,kKAAkK;AAClK,SAAgB,kBAAkB,CAAC,QAAgB;IAC/C,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5D,OAAO,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,KAAK,CAAC;AAC1E,CAAC"}
@@ -0,0 +1,47 @@
1
+ import { CachedSession, RequestContext, SessionService } from '@vendure/core';
2
+ export type ShopSessionOutcome = {
3
+ kind: 'refused';
4
+ message: string;
5
+ } | {
6
+ kind: 'unchanged';
7
+ } | {
8
+ kind: 'resolved';
9
+ ctx: RequestContext;
10
+ sessionToken?: string;
11
+ };
12
+ export type PreparedShopSessionCall = {
13
+ kind: 'refused';
14
+ message: string;
15
+ } | {
16
+ kind: 'prepared';
17
+ ctx: RequestContext;
18
+ input: Record<string, unknown>;
19
+ sessionToken?: string;
20
+ };
21
+ export declare class McpShopSessionService {
22
+ private readonly sessionService;
23
+ constructor(sessionService: SessionService);
24
+ prepareToolCall(call: {
25
+ ctx: RequestContext;
26
+ input: Record<string, unknown>;
27
+ isOAuthCall: boolean;
28
+ toolWritesToCart: boolean;
29
+ }): Promise<PreparedShopSessionCall>;
30
+ /** Adds the resolved token without losing handler results that are not plain objects. */
31
+ addSessionTokenToResult(output: unknown, sessionToken: string | undefined): unknown;
32
+ /** An explicit `sessionToken` argument wins over the session already on the context. */
33
+ resolveForToolCall(call: {
34
+ ctx: RequestContext;
35
+ sessionToken: string | undefined;
36
+ isOAuthCall: boolean;
37
+ toolWritesToCart: boolean;
38
+ }): Promise<ShopSessionOutcome>;
39
+ resolveHeaderToken(header: string | undefined): Promise<{
40
+ kind: 'refused';
41
+ message: string;
42
+ } | {
43
+ kind: 'resolved';
44
+ session?: CachedSession;
45
+ }>;
46
+ private resolved;
47
+ }