hostinger-api-mcp 1.49.0 → 1.51.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 (55) hide show
  1. package/README.md +13 -2
  2. package/gemini-extension.json +1 -1
  3. package/package.json +1 -1
  4. package/server.json +2 -2
  5. package/src/core/runtime.js +3 -1
  6. package/src/core/runtime.ts +3 -1
  7. package/src/core/tools/agency-hosting.js +239 -0
  8. package/src/core/tools/agency-hosting.ts +239 -0
  9. package/src/core/tools/all.js +2367 -0
  10. package/src/core/tools/all.ts +2367 -0
  11. package/src/core/tools/billing.js +57 -0
  12. package/src/core/tools/billing.ts +57 -0
  13. package/src/core/tools/dns.js +50 -0
  14. package/src/core/tools/dns.ts +50 -0
  15. package/src/core/tools/domains.js +255 -0
  16. package/src/core/tools/domains.ts +255 -0
  17. package/src/core/tools/ecommerce.js +180 -0
  18. package/src/core/tools/ecommerce.ts +180 -0
  19. package/src/core/tools/horizons.js +12 -0
  20. package/src/core/tools/horizons.ts +12 -0
  21. package/src/core/tools/hosting.js +365 -0
  22. package/src/core/tools/hosting.ts +365 -0
  23. package/src/core/tools/mail.js +239 -0
  24. package/src/core/tools/mail.ts +239 -0
  25. package/src/core/tools/reach.js +306 -0
  26. package/src/core/tools/reach.ts +306 -0
  27. package/src/core/tools/vps.js +432 -0
  28. package/src/core/tools/vps.ts +432 -0
  29. package/src/core/tools/wordpress.js +232 -0
  30. package/src/core/tools/wordpress.ts +232 -0
  31. package/src/servers/agency-hosting.js +1 -1
  32. package/src/servers/agency-hosting.ts +1 -1
  33. package/src/servers/all.js +1 -1
  34. package/src/servers/all.ts +1 -1
  35. package/src/servers/billing.js +1 -1
  36. package/src/servers/billing.ts +1 -1
  37. package/src/servers/dns.js +1 -1
  38. package/src/servers/dns.ts +1 -1
  39. package/src/servers/domains.js +1 -1
  40. package/src/servers/domains.ts +1 -1
  41. package/src/servers/ecommerce.js +1 -1
  42. package/src/servers/ecommerce.ts +1 -1
  43. package/src/servers/horizons.js +1 -1
  44. package/src/servers/horizons.ts +1 -1
  45. package/src/servers/hosting.js +1 -1
  46. package/src/servers/hosting.ts +1 -1
  47. package/src/servers/mail.js +1 -1
  48. package/src/servers/mail.ts +1 -1
  49. package/src/servers/reach.js +1 -1
  50. package/src/servers/reach.ts +1 -1
  51. package/src/servers/vps.js +1 -1
  52. package/src/servers/vps.ts +1 -1
  53. package/src/servers/wordpress.js +1 -1
  54. package/src/servers/wordpress.ts +1 -1
  55. package/types.d.ts +25 -0
@@ -2,6 +2,12 @@
2
2
  export default [
3
3
  {
4
4
  "name": "ecommerce_listDiscountsV1",
5
+ "title": "List discounts",
6
+ "annotations": {
7
+ "title": "List discounts",
8
+ "readOnlyHint": true,
9
+ "destructiveHint": false
10
+ },
5
11
  "description": "List a store's discounts. Filter by free text over code and name, or by disabled state.\nAmounts for fixed discounts are integers in the smallest currency unit; percentage\ndiscounts carry a whole-number value between 1 and 100.",
6
12
  "method": "GET",
7
13
  "path": "/api/ecommerce/v1/stores/{store_id}/discounts",
@@ -42,6 +48,12 @@ export default [
42
48
  },
43
49
  {
44
50
  "name": "ecommerce_createADiscountV1",
51
+ "title": "Create a discount",
52
+ "annotations": {
53
+ "title": "Create a discount",
54
+ "readOnlyHint": false,
55
+ "destructiveHint": false
56
+ },
45
57
  "description": "Create a discount for a store. Fixed discounts take an amount in the smallest currency\nunit (e.g. $10 is 1000); percentage discounts take a whole-number value between 1 and 100.\nFree-shipping discounts ignore value. Returns the created discount.",
46
58
  "method": "POST",
47
59
  "path": "/api/ecommerce/v1/stores/{store_id}/discounts",
@@ -118,6 +130,12 @@ export default [
118
130
  },
119
131
  {
120
132
  "name": "ecommerce_getCustomStorefrontSetupInstructionsV1",
133
+ "title": "Get custom storefront setup instructions",
134
+ "annotations": {
135
+ "title": "Get custom storefront setup instructions",
136
+ "readOnlyHint": true,
137
+ "destructiveHint": false
138
+ },
121
139
  "description": "Retrieve step-by-step setup instructions, formatted as Markdown, for connecting a custom sales\nchannel to your store and keeping your catalog, orders, shipping and payments in sync through\nthe Ecommerce API.",
122
140
  "method": "GET",
123
141
  "path": "/api/ecommerce/v1/miscellaneous/custom-storefront-instructions",
@@ -135,6 +153,12 @@ export default [
135
153
  },
136
154
  {
137
155
  "name": "ecommerce_cancelAnOrderV1",
156
+ "title": "Cancel an order",
157
+ "annotations": {
158
+ "title": "Cancel an order",
159
+ "readOnlyHint": false,
160
+ "destructiveHint": false
161
+ },
138
162
  "description": "Cancel the order and optionally email the customer. Returns the updated order summary.",
139
163
  "method": "POST",
140
164
  "path": "/api/ecommerce/v1/stores/{store_id}/orders/{order_id}/cancel",
@@ -168,6 +192,12 @@ export default [
168
192
  },
169
193
  {
170
194
  "name": "ecommerce_fulfilAnOrderV1",
195
+ "title": "Fulfil an order",
196
+ "annotations": {
197
+ "title": "Fulfil an order",
198
+ "readOnlyHint": false,
199
+ "destructiveHint": false
200
+ },
171
201
  "description": "Create a fulfilment for the order and attach tracking in one call. Omit items to fulfil\nevery remaining unfulfilled item. Returns the updated order summary.",
172
202
  "method": "POST",
173
203
  "path": "/api/ecommerce/v1/stores/{store_id}/orders/{order_id}/fulfill",
@@ -231,6 +261,12 @@ export default [
231
261
  },
232
262
  {
233
263
  "name": "ecommerce_listStoreOrdersV1",
264
+ "title": "List store orders",
265
+ "annotations": {
266
+ "title": "List store orders",
267
+ "readOnlyHint": true,
268
+ "destructiveHint": false
269
+ },
234
270
  "description": "List a store's orders newest first as summaries. Filter by status, payment or fulfilment\nstatus, customer email, order number or a free-text query. Amounts are in the smallest\ncurrency unit. Retrieve a single order for its line items, addresses and fulfilments.",
235
271
  "method": "GET",
236
272
  "path": "/api/ecommerce/v1/stores/{store_id}/orders",
@@ -331,6 +367,12 @@ export default [
331
367
  },
332
368
  {
333
369
  "name": "ecommerce_retrieveAnOrderV1",
370
+ "title": "Retrieve an order",
371
+ "annotations": {
372
+ "title": "Retrieve an order",
373
+ "readOnlyHint": true,
374
+ "destructiveHint": false
375
+ },
334
376
  "description": "Retrieve one order in full: line items (each with the id the fulfil endpoint needs),\naddresses, the totals breakdown and fulfilments with tracking. Amounts are in the\nsmallest currency unit.",
335
377
  "method": "GET",
336
378
  "path": "/api/ecommerce/v1/stores/{store_id}/orders/{order_id}",
@@ -360,6 +402,12 @@ export default [
360
402
  },
361
403
  {
362
404
  "name": "ecommerce_enableManualPaymentMethodV1",
405
+ "title": "Enable manual payment method",
406
+ "annotations": {
407
+ "title": "Enable manual payment method",
408
+ "readOnlyHint": false,
409
+ "destructiveHint": false
410
+ },
363
411
  "description": "Enable a manual payment method so the store can accept orders without an online payment provider.",
364
412
  "method": "POST",
365
413
  "path": "/api/ecommerce/v1/stores/{store_id}/payment-methods/manual",
@@ -388,6 +436,12 @@ export default [
388
436
  },
389
437
  {
390
438
  "name": "ecommerce_createAPaymentProviderConnectLinkV1",
439
+ "title": "Create a payment provider connect link",
440
+ "annotations": {
441
+ "title": "Create a payment provider connect link",
442
+ "readOnlyHint": false,
443
+ "destructiveHint": false
444
+ },
391
445
  "description": "Create an onboarding link for connecting a payment gateway to the store. Returns the gateway\nonboarding URL for the merchant to open and a deep-link into the store admin.",
392
446
  "method": "POST",
393
447
  "path": "/api/ecommerce/v1/stores/{store_id}/payment-providers/{provider_id}/connect-link",
@@ -417,6 +471,12 @@ export default [
417
471
  },
418
472
  {
419
473
  "name": "ecommerce_listStorePaymentProvidersV1",
474
+ "title": "List store payment providers",
475
+ "annotations": {
476
+ "title": "List store payment providers",
477
+ "readOnlyHint": true,
478
+ "destructiveHint": false
479
+ },
420
480
  "description": "List a store's payment providers, split into providers already connected to the store and\ngateways available to install. Never exposes gateway credentials, secrets, or configuration.",
421
481
  "method": "GET",
422
482
  "path": "/api/ecommerce/v1/stores/{store_id}/payment-providers",
@@ -445,6 +505,12 @@ export default [
445
505
  },
446
506
  {
447
507
  "name": "ecommerce_createAProductImageUploadURLV1",
508
+ "title": "Create a product image upload URL",
509
+ "annotations": {
510
+ "title": "Create a product image upload URL",
511
+ "readOnlyHint": false,
512
+ "destructiveHint": false
513
+ },
448
514
  "description": "Returns a signed URL to upload a product image to (multipart/form-data POST). Then call the\nattach-image endpoint with the returned object_name to scan and attach it to the product.",
449
515
  "method": "POST",
450
516
  "path": "/api/ecommerce/v1/stores/{store_id}/products/{product_id}/images/upload-url",
@@ -474,6 +540,13 @@ export default [
474
540
  },
475
541
  {
476
542
  "name": "ecommerce_deleteAProductV1",
543
+ "title": "Delete a product",
544
+ "annotations": {
545
+ "title": "Delete a product",
546
+ "readOnlyHint": false,
547
+ "destructiveHint": true,
548
+ "idempotentHint": true
549
+ },
477
550
  "description": "Delete a product and its variants from the store. A subscription product with active\nsubscribers is archived instead of deleted so its data stays available.",
478
551
  "method": "DELETE",
479
552
  "path": "/api/ecommerce/v1/stores/{store_id}/products/{product_id}",
@@ -503,6 +576,13 @@ export default [
503
576
  },
504
577
  {
505
578
  "name": "ecommerce_updateAProductV1",
579
+ "title": "Update a product",
580
+ "annotations": {
581
+ "title": "Update a product",
582
+ "readOnlyHint": false,
583
+ "destructiveHint": true,
584
+ "idempotentHint": true
585
+ },
506
586
  "description": "Update a product's name, description or status. Set status to published to make it buyable,\ndraft to hide it, or archived to retire it. Variants, prices and inventory are managed\nthrough the variant endpoints, not here. Returns the updated product summary.",
507
587
  "method": "PATCH",
508
588
  "path": "/api/ecommerce/v1/stores/{store_id}/products/{product_id}",
@@ -549,6 +629,12 @@ export default [
549
629
  },
550
630
  {
551
631
  "name": "ecommerce_createDigitalProductV1",
632
+ "title": "Create digital product",
633
+ "annotations": {
634
+ "title": "Create digital product",
635
+ "readOnlyHint": false,
636
+ "destructiveHint": false
637
+ },
552
638
  "description": "Create a published digital product with a single variant and an optional external download link.",
553
639
  "method": "POST",
554
640
  "path": "/api/ecommerce/v1/stores/{store_id}/products/digital",
@@ -595,6 +681,12 @@ export default [
595
681
  },
596
682
  {
597
683
  "name": "ecommerce_listProductsV1",
684
+ "title": "List products",
685
+ "annotations": {
686
+ "title": "List products",
687
+ "readOnlyHint": true,
688
+ "destructiveHint": false
689
+ },
598
690
  "description": "List a store's products newest first as lean summaries (name, status, thumbnail, variant\ncount and price range). Prices are integers in the smallest currency unit and live on\nvariants. Filter by status, free text or a set of product ids. Use include=variants to\nembed each product's variants with prices and inventory, and include=media to embed its media.",
599
691
  "method": "GET",
600
692
  "path": "/api/ecommerce/v1/stores/{store_id}/products",
@@ -662,6 +754,12 @@ export default [
662
754
  },
663
755
  {
664
756
  "name": "ecommerce_createPhysicalProductV1",
757
+ "title": "Create physical product",
758
+ "annotations": {
759
+ "title": "Create physical product",
760
+ "readOnlyHint": false,
761
+ "destructiveHint": false
762
+ },
665
763
  "description": "Create a published physical product with a single variant priced in the store currency.",
666
764
  "method": "POST",
667
765
  "path": "/api/ecommerce/v1/stores/{store_id}/products/physical",
@@ -704,6 +802,12 @@ export default [
704
802
  },
705
803
  {
706
804
  "name": "ecommerce_uploadAndAttachAProductImageV1",
805
+ "title": "Upload and attach a product image",
806
+ "annotations": {
807
+ "title": "Upload and attach a product image",
808
+ "readOnlyHint": false,
809
+ "destructiveHint": false
810
+ },
707
811
  "description": "Fetch a raster image (JPEG, PNG, GIF or WebP, max 15MB) from a URL and attach it to a product in a\nsingle call. The image is virus-scanned and validated by content, then stored on the CDN. Set\nis_thumbnail to make it the product's primary image.",
708
812
  "method": "POST",
709
813
  "path": "/api/ecommerce/v1/stores/{store_id}/products/{product_id}/images",
@@ -745,6 +849,12 @@ export default [
745
849
  },
746
850
  {
747
851
  "name": "ecommerce_listSalesChannelsV1",
852
+ "title": "List sales channels",
853
+ "annotations": {
854
+ "title": "List sales channels",
855
+ "readOnlyHint": true,
856
+ "destructiveHint": false
857
+ },
748
858
  "description": "List a store's active sales channels with their full metadata.",
749
859
  "method": "GET",
750
860
  "path": "/api/ecommerce/v1/stores/{store_id}/sales-channels",
@@ -769,6 +879,12 @@ export default [
769
879
  },
770
880
  {
771
881
  "name": "ecommerce_createASalesChannelV1",
882
+ "title": "Create a sales channel",
883
+ "annotations": {
884
+ "title": "Create a sales channel",
885
+ "readOnlyHint": false,
886
+ "destructiveHint": false
887
+ },
772
888
  "description": "Create a sales channel for a store. A \"custom\" channel is headless: build your own frontend and keep\nyour catalog, orders, shipping and payments in sync through the Ecommerce API. A \"quick-link\" channel\nis a hosted one-page store whose handle is auto-generated.",
773
889
  "method": "POST",
774
890
  "path": "/api/ecommerce/v1/stores/{store_id}/sales-channels",
@@ -810,6 +926,13 @@ export default [
810
926
  },
811
927
  {
812
928
  "name": "ecommerce_updateSalesChannelV1",
929
+ "title": "Update sales channel",
930
+ "annotations": {
931
+ "title": "Update sales channel",
932
+ "readOnlyHint": false,
933
+ "destructiveHint": true,
934
+ "idempotentHint": true
935
+ },
813
936
  "description": "Update a custom sales channel. The merchant-facing `name` and the public `url`\n(returned as the channel `domain`) can be changed. Pass `null` to clear a value.",
814
937
  "method": "PATCH",
815
938
  "path": "/api/ecommerce/v1/stores/{store_id}/sales-channels/{sales_channel_id}",
@@ -847,6 +970,12 @@ export default [
847
970
  },
848
971
  {
849
972
  "name": "ecommerce_setStoreShippingV1",
973
+ "title": "Set store shipping",
974
+ "annotations": {
975
+ "title": "Set store shipping",
976
+ "readOnlyHint": false,
977
+ "destructiveHint": false
978
+ },
850
979
  "description": "Set the flat-rate shipping price for a store, creating the shipping zone if it does not exist yet.",
851
980
  "method": "POST",
852
981
  "path": "/api/ecommerce/v1/stores/{store_id}/shipping",
@@ -876,6 +1005,13 @@ export default [
876
1005
  },
877
1006
  {
878
1007
  "name": "ecommerce_deleteStoreV1",
1008
+ "title": "Delete store",
1009
+ "annotations": {
1010
+ "title": "Delete store",
1011
+ "readOnlyHint": false,
1012
+ "destructiveHint": true,
1013
+ "idempotentHint": true
1014
+ },
879
1015
  "description": "Soft-delete a store owned by your account.\n\nThe underlying store data is preserved; only the store is marked as deleted.",
880
1016
  "method": "DELETE",
881
1017
  "path": "/api/ecommerce/v1/stores/{store_id}",
@@ -900,6 +1036,12 @@ export default [
900
1036
  },
901
1037
  {
902
1038
  "name": "ecommerce_getStoresV1",
1039
+ "title": "Get stores",
1040
+ "annotations": {
1041
+ "title": "Get stores",
1042
+ "readOnlyHint": true,
1043
+ "destructiveHint": false
1044
+ },
903
1045
  "description": "Retrieve the stores associated with your account.",
904
1046
  "method": "GET",
905
1047
  "path": "/api/ecommerce/v1/stores",
@@ -922,6 +1064,12 @@ export default [
922
1064
  },
923
1065
  {
924
1066
  "name": "ecommerce_createStoreV1",
1067
+ "title": "Create store",
1068
+ "annotations": {
1069
+ "title": "Create store",
1070
+ "readOnlyHint": false,
1071
+ "destructiveHint": false
1072
+ },
925
1073
  "description": "Create a new store for your account.\n\nA primary sales channel is created alongside the store.",
926
1074
  "method": "POST",
927
1075
  "path": "/api/ecommerce/v1/stores",
@@ -977,6 +1125,12 @@ export default [
977
1125
  },
978
1126
  {
979
1127
  "name": "ecommerce_getStoreMetadataV1",
1128
+ "title": "Get store metadata",
1129
+ "annotations": {
1130
+ "title": "Get store metadata",
1131
+ "readOnlyHint": true,
1132
+ "destructiveHint": false
1133
+ },
980
1134
  "description": "Get a store's readiness metadata: whether payment methods and shipping are configured,\nplus its default currency. Useful to verify prerequisites before building a storefront.",
981
1135
  "method": "GET",
982
1136
  "path": "/api/ecommerce/v1/stores/{store_id}/metadata",
@@ -1001,6 +1155,13 @@ export default [
1001
1155
  },
1002
1156
  {
1003
1157
  "name": "ecommerce_updateProductVariantsInBatchV1",
1158
+ "title": "Update product variants in batch",
1159
+ "annotations": {
1160
+ "title": "Update product variants in batch",
1161
+ "readOnlyHint": false,
1162
+ "destructiveHint": true,
1163
+ "idempotentHint": true
1164
+ },
1004
1165
  "description": "Update up to 100 existing variants in place by id — title, inventory, stock tracking and\nprices. Variants omitted from the request are left untouched. Prices replace the variant's\nexisting prices in full. Returns the updated variants.",
1005
1166
  "method": "PATCH",
1006
1167
  "path": "/api/ecommerce/v1/stores/{store_id}/products/{product_id}/variants/batch",
@@ -1085,6 +1246,13 @@ export default [
1085
1246
  },
1086
1247
  {
1087
1248
  "name": "ecommerce_deleteAProductVariantV1",
1249
+ "title": "Delete a product variant",
1250
+ "annotations": {
1251
+ "title": "Delete a product variant",
1252
+ "readOnlyHint": false,
1253
+ "destructiveHint": true,
1254
+ "idempotentHint": true
1255
+ },
1088
1256
  "description": "Delete a single variant from the product.",
1089
1257
  "method": "DELETE",
1090
1258
  "path": "/api/ecommerce/v1/stores/{store_id}/products/{product_id}/variants/{variant_id}",
@@ -1119,6 +1287,12 @@ export default [
1119
1287
  },
1120
1288
  {
1121
1289
  "name": "ecommerce_listProductVariantsV1",
1290
+ "title": "List product variants",
1291
+ "annotations": {
1292
+ "title": "List product variants",
1293
+ "readOnlyHint": true,
1294
+ "destructiveHint": false
1295
+ },
1122
1296
  "description": "List a product's variants, ordered by rank, with their options, prices and inventory.\nPrices are integers in the smallest currency unit and live on variants.",
1123
1297
  "method": "GET",
1124
1298
  "path": "/api/ecommerce/v1/stores/{store_id}/products/{product_id}/variants",
@@ -1152,6 +1326,12 @@ export default [
1152
1326
  },
1153
1327
  {
1154
1328
  "name": "ecommerce_createAProductVariantV1",
1329
+ "title": "Create a product variant",
1330
+ "annotations": {
1331
+ "title": "Create a product variant",
1332
+ "readOnlyHint": false,
1333
+ "destructiveHint": false
1334
+ },
1155
1335
  "description": "Add a variant to a product along one or more option dimensions (e.g. Size, Color). Options\nmissing from the product are created automatically; provide a value for every option the\nproduct already has. Prices are integers in the smallest currency unit and default to the\nstore currency. Returns the created variant.",
1156
1336
  "method": "POST",
1157
1337
  "path": "/api/ecommerce/v1/stores/{store_id}/products/{product_id}/variants",