hostinger-api-mcp 1.31.0 → 1.33.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.
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/dns.js';
5
5
 
6
- startServer({ name: 'hostinger-dns-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-dns-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/domains.js';
5
5
 
6
- startServer({ name: 'hostinger-domains-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-domains-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/domains.js';
5
5
 
6
- startServer({ name: 'hostinger-domains-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-domains-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/ecommerce.js';
5
5
 
6
- startServer({ name: 'hostinger-ecommerce-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-ecommerce-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/ecommerce.js';
5
5
 
6
- startServer({ name: 'hostinger-ecommerce-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-ecommerce-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/horizons.js';
5
5
 
6
- startServer({ name: 'hostinger-horizons-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-horizons-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/horizons.js';
5
5
 
6
- startServer({ name: 'hostinger-horizons-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-horizons-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/hosting.js';
5
5
 
6
- startServer({ name: 'hostinger-hosting-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-hosting-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/hosting.js';
5
5
 
6
- startServer({ name: 'hostinger-hosting-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-hosting-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/mail.js';
5
5
 
6
- startServer({ name: 'hostinger-mail-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-mail-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/mail.js';
5
5
 
6
- startServer({ name: 'hostinger-mail-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-mail-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/reach.js';
5
5
 
6
- startServer({ name: 'hostinger-reach-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-reach-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/reach.js';
5
5
 
6
- startServer({ name: 'hostinger-reach-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-reach-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/vps.js';
5
5
 
6
- startServer({ name: 'hostinger-vps-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-vps-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/vps.js';
5
5
 
6
- startServer({ name: 'hostinger-vps-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-vps-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/wordpress.js';
5
5
 
6
- startServer({ name: 'hostinger-wordpress-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-wordpress-mcp', version: '1.33.0', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/wordpress.js';
5
5
 
6
- startServer({ name: 'hostinger-wordpress-mcp', version: '1.31.0', tools });
6
+ startServer({ name: 'hostinger-wordpress-mcp', version: '1.33.0', tools });
package/types.d.ts CHANGED
@@ -4565,6 +4565,10 @@ and a confirmation email will be sent.
4565
4565
  * Get a list of all contact segments.
4566
4566
 
4567
4567
  This endpoint returns a list of contact segments that can be used to organize contacts.
4568
+
4569
+ **Deprecated.** This endpoint cannot target a profile, so it always falls back to
4570
+ the client's default profile and cannot list the segments of any other profile. Use
4571
+ `GET /api/reach/v1/profiles/{profileUuid}/segmentation/segments` instead.
4568
4572
  */
4569
4573
  "reach_listSegmentsV1": {
4570
4574
  params: {
@@ -4578,6 +4582,10 @@ This endpoint returns a list of contact segments that can be used to organize co
4578
4582
 
4579
4583
  This endpoint allows creating a new contact segment that can be used to organize contacts.
4580
4584
  The segment can be configured with specific criteria like email, name, subscription status, etc.
4585
+
4586
+ **Deprecated.** This endpoint cannot target a profile, so it always falls back to
4587
+ the client's default profile and cannot create segments in any other profile. Use
4588
+ `POST /api/reach/v1/profiles/{profileUuid}/segmentation/segments` instead.
4581
4589
  */
4582
4590
  "reach_createANewContactSegmentV1": {
4583
4591
  params: {
@@ -4597,6 +4605,25 @@ The segment can be configured with specific criteria like email, name, subscript
4597
4605
  response: any; // Response structure will depend on the API
4598
4606
  };
4599
4607
 
4608
+ /**
4609
+ * Count the contacts currently matching a segment without listing them.
4610
+
4611
+ Cheaper than paging through the segment contacts endpoint when only the size is needed.
4612
+ */
4613
+ "reach_countProfileSegmentContactsV1": {
4614
+ params: {
4615
+ /**
4616
+ * Profile uuid parameter
4617
+ */
4618
+ profileUuid: string;
4619
+ /**
4620
+ * Segment uuid parameter
4621
+ */
4622
+ segmentUuid: string;
4623
+ };
4624
+ response: any; // Response structure will depend on the API
4625
+ };
4626
+
4600
4627
  /**
4601
4628
  * Retrieve contacts associated with a specific segment for a given profile.
4602
4629
 
@@ -4625,11 +4652,144 @@ identified by its UUID, scoped to a specific profile.
4625
4652
  response: any; // Response structure will depend on the API
4626
4653
  };
4627
4654
 
4655
+ /**
4656
+ * Get a single segment of a profile, including the conditions that define it.
4657
+
4658
+ To retrieve the contacts currently matching those conditions, use the segment contacts
4659
+ endpoint instead.
4660
+ */
4661
+ "reach_getProfileSegmentDetailsV1": {
4662
+ params: {
4663
+ /**
4664
+ * Profile uuid parameter
4665
+ */
4666
+ profileUuid: string;
4667
+ /**
4668
+ * Segment uuid parameter
4669
+ */
4670
+ segmentUuid: string;
4671
+ };
4672
+ response: any; // Response structure will depend on the API
4673
+ };
4674
+
4675
+ /**
4676
+ * Rename a segment and/or replace the conditions that define it.
4677
+
4678
+ `name` is always required. Omit `conditions` to rename without touching the conditions;
4679
+ supply them and they replace the existing set entirely rather than being merged into it.
4680
+ Contacts are never modified, but which of them match the segment can change immediately.
4681
+ */
4682
+ "reach_updateAProfileSegmentV1": {
4683
+ params: {
4684
+ /**
4685
+ * Profile uuid parameter
4686
+ */
4687
+ profileUuid: string;
4688
+ /**
4689
+ * Segment uuid parameter
4690
+ */
4691
+ segmentUuid: string;
4692
+ /**
4693
+ * name parameter
4694
+ */
4695
+ name: string;
4696
+ /**
4697
+ * Replaces the existing conditions entirely. Omit to keep the current ones.
4698
+ */
4699
+ conditions?: array;
4700
+ /**
4701
+ * How to combine multiple conditions. Required when conditions are given.
4702
+ */
4703
+ logic?: string;
4704
+ };
4705
+ response: any; // Response structure will depend on the API
4706
+ };
4707
+
4708
+ /**
4709
+ * Delete a segment.
4710
+
4711
+ Only the segment definition is removed. The contacts that matched it are left untouched.
4712
+ */
4713
+ "reach_deleteAProfileSegmentV1": {
4714
+ params: {
4715
+ /**
4716
+ * Profile uuid parameter
4717
+ */
4718
+ profileUuid: string;
4719
+ /**
4720
+ * Segment uuid parameter
4721
+ */
4722
+ segmentUuid: string;
4723
+ };
4724
+ response: any; // Response structure will depend on the API
4725
+ };
4726
+
4727
+ /**
4728
+ * Get a paginated list of the segments defined in a profile.
4729
+
4730
+ Each entry carries the number of contacts currently matching it, which is recalculated on
4731
+ read rather than stored. Use `count_type` to count either every matching contact or only
4732
+ the subscribed ones.
4733
+ */
4734
+ "reach_listProfileSegmentsV1": {
4735
+ params: {
4736
+ /**
4737
+ * Profile uuid parameter
4738
+ */
4739
+ profileUuid: string;
4740
+ /**
4741
+ * Which matching contacts to count for each segment
4742
+ */
4743
+ count_type?: string;
4744
+ /**
4745
+ * Page number
4746
+ */
4747
+ page?: number;
4748
+ /**
4749
+ * Number of items per page
4750
+ */
4751
+ per_page?: number;
4752
+ };
4753
+ response: any; // Response structure will depend on the API
4754
+ };
4755
+
4756
+ /**
4757
+ * Create a segment in a profile.
4758
+
4759
+ A segment is a saved set of conditions rather than a fixed list, so its membership changes
4760
+ as contacts change. Creating one does not modify any contact.
4761
+ */
4762
+ "reach_createAProfileSegmentV1": {
4763
+ params: {
4764
+ /**
4765
+ * Profile uuid parameter
4766
+ */
4767
+ profileUuid: string;
4768
+ /**
4769
+ * name parameter
4770
+ */
4771
+ name: string;
4772
+ /**
4773
+ * Conditions a contact must satisfy to fall into the segment
4774
+ */
4775
+ conditions: array;
4776
+ /**
4777
+ * How to combine multiple conditions
4778
+ */
4779
+ logic: string;
4780
+ };
4781
+ response: any; // Response structure will depend on the API
4782
+ };
4783
+
4628
4784
  /**
4629
4785
  * Retrieve contacts associated with a specific segment.
4630
4786
 
4631
4787
  This endpoint allows you to fetch and filter contacts that belong to a particular segment,
4632
4788
  identified by its UUID.
4789
+
4790
+ **Deprecated.** This endpoint cannot target a profile, so it always falls back to
4791
+ the client's default profile and cannot read segments of any other profile. Use
4792
+ `GET /api/reach/v1/profiles/{profileUuid}/segmentation/segments/{segmentUuid}/contacts` instead.
4633
4793
  */
4634
4794
  "reach_listSegmentContactsV1": {
4635
4795
  params: {
@@ -4654,6 +4814,10 @@ identified by its UUID.
4654
4814
 
4655
4815
  This endpoint retrieves information about a single segment identified by UUID.
4656
4816
  Segments are used to organize and group contacts based on specific criteria.
4817
+
4818
+ **Deprecated.** This endpoint cannot target a profile, so it always falls back to
4819
+ the client's default profile and cannot read segments of any other profile. Use
4820
+ `GET /api/reach/v1/profiles/{profileUuid}/segmentation/segments/{segmentUuid}` instead.
4657
4821
  */
4658
4822
  "reach_getSegmentDetailsV1": {
4659
4823
  params: {
@@ -4665,6 +4829,185 @@ Segments are used to organize and group contacts based on specific criteria.
4665
4829
  response: any; // Response structure will depend on the API
4666
4830
  };
4667
4831
 
4832
+ /**
4833
+ * Assign a tag to a single contact.
4834
+
4835
+ Unlike the bulk endpoint this is applied immediately rather than queued. Assigning a tag
4836
+ the contact already carries succeeds without duplicating it.
4837
+ */
4838
+ "reach_assignAContactToATagV1": {
4839
+ params: {
4840
+ /**
4841
+ * Profile uuid parameter
4842
+ */
4843
+ profileUuid: string;
4844
+ /**
4845
+ * Tag uuid parameter
4846
+ */
4847
+ tagUuid: string;
4848
+ /**
4849
+ * Contact uuid parameter
4850
+ */
4851
+ contactUuid: string;
4852
+ };
4853
+ response: any; // Response structure will depend on the API
4854
+ };
4855
+
4856
+ /**
4857
+ * Remove a tag from a single contact.
4858
+
4859
+ Unlike the bulk endpoint this is applied immediately rather than queued. Neither the tag
4860
+ nor the contact is deleted.
4861
+ */
4862
+ "reach_removeAContactFromATagV1": {
4863
+ params: {
4864
+ /**
4865
+ * Profile uuid parameter
4866
+ */
4867
+ profileUuid: string;
4868
+ /**
4869
+ * Tag uuid parameter
4870
+ */
4871
+ tagUuid: string;
4872
+ /**
4873
+ * Contact uuid parameter
4874
+ */
4875
+ contactUuid: string;
4876
+ };
4877
+ response: any; // Response structure will depend on the API
4878
+ };
4879
+
4880
+ /**
4881
+ * Assign a tag to many contacts at once.
4882
+
4883
+ Pass `contact_uuids` to target specific contacts, or `all_contacts` to target every contact
4884
+ in the profile. The work is queued, so a success response means it was accepted rather than
4885
+ finished. Contacts that already carry the tag are left alone.
4886
+ */
4887
+ "reach_assignContactsToATagV1": {
4888
+ params: {
4889
+ /**
4890
+ * Profile uuid parameter
4891
+ */
4892
+ profileUuid: string;
4893
+ /**
4894
+ * Tag uuid parameter
4895
+ */
4896
+ tagUuid: string;
4897
+ /**
4898
+ * Contacts to apply the change to. Required unless all_contacts is true.
4899
+ */
4900
+ contact_uuids?: array;
4901
+ /**
4902
+ * Apply to every contact in the profile
4903
+ */
4904
+ all_contacts?: boolean;
4905
+ };
4906
+ response: any; // Response structure will depend on the API
4907
+ };
4908
+
4909
+ /**
4910
+ * Remove a tag from many contacts at once.
4911
+
4912
+ Pass `contact_uuids` to target specific contacts, or `all_contacts` to target every contact
4913
+ in the profile. The work is queued, so a success response means it was accepted rather than
4914
+ finished. The tag itself and the contacts are not deleted.
4915
+ */
4916
+ "reach_removeContactsFromATagV1": {
4917
+ params: {
4918
+ /**
4919
+ * Profile uuid parameter
4920
+ */
4921
+ profileUuid: string;
4922
+ /**
4923
+ * Tag uuid parameter
4924
+ */
4925
+ tagUuid: string;
4926
+ };
4927
+ response: any; // Response structure will depend on the API
4928
+ };
4929
+
4930
+ /**
4931
+ * Delete a tag and remove it from every contact carrying it.
4932
+
4933
+ The contacts themselves are not deleted. This is idempotent: deleting a tag that does not
4934
+ exist in the profile still succeeds.
4935
+ */
4936
+ "reach_deleteATagV1": {
4937
+ params: {
4938
+ /**
4939
+ * Profile uuid parameter
4940
+ */
4941
+ profileUuid: string;
4942
+ /**
4943
+ * Tag uuid parameter
4944
+ */
4945
+ tagUuid: string;
4946
+ };
4947
+ response: any; // Response structure will depend on the API
4948
+ };
4949
+
4950
+ /**
4951
+ * Rename a tag.
4952
+
4953
+ The contacts assigned to the tag are unaffected. Names are unique within a profile, so
4954
+ renaming a tag to a name that is already taken is rejected.
4955
+ */
4956
+ "reach_renameATagV1": {
4957
+ params: {
4958
+ /**
4959
+ * Profile uuid parameter
4960
+ */
4961
+ profileUuid: string;
4962
+ /**
4963
+ * Tag uuid parameter
4964
+ */
4965
+ tagUuid: string;
4966
+ /**
4967
+ * New tag name
4968
+ */
4969
+ value: string;
4970
+ };
4971
+ response: any; // Response structure will depend on the API
4972
+ };
4973
+
4974
+ /**
4975
+ * Get all tags defined in a profile.
4976
+
4977
+ Tags are the way contacts are grouped in Reach, and can be used to filter the contact
4978
+ list or to build segments.
4979
+ */
4980
+ "reach_listProfileTagsV1": {
4981
+ params: {
4982
+ /**
4983
+ * Profile uuid parameter
4984
+ */
4985
+ profileUuid: string;
4986
+ };
4987
+ response: any; // Response structure will depend on the API
4988
+ };
4989
+
4990
+ /**
4991
+ * Create tags in a profile.
4992
+
4993
+ Names that already exist in the profile are not duplicated: the existing tag is returned
4994
+ instead, so the call is safe to repeat. Every tag in the request is returned, whether it
4995
+ was created now or already existed.
4996
+ */
4997
+ "reach_createOrFindTagsV1": {
4998
+ params: {
4999
+ /**
5000
+ * Profile uuid parameter
5001
+ */
5002
+ profileUuid: string;
5003
+ /**
5004
+ * names parameter
5005
+ */
5006
+ names: array;
5007
+ };
5008
+ response: any; // Response structure will depend on the API
5009
+ };
5010
+
4668
5011
  /**
4669
5012
  * Retrieve the DNS configuration status for a profile's domain.
4670
5013