hostinger-api-mcp 0.1.23 → 0.1.24

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 (5) hide show
  1. package/README.md +18 -19
  2. package/package.json +1 -1
  3. package/server.js +36 -111
  4. package/server.ts +36 -111
  5. package/types.d.ts +26 -30
package/README.md CHANGED
@@ -921,24 +921,7 @@ The contact will be automatically subscribed to email communications.
921
921
  - `surname`: surname parameter
922
922
  - `note`: note parameter
923
923
 
924
- ### reach_filterSegmentContactsV1
925
-
926
- Filter and retrieve contacts based on segmentation criteria.
927
-
928
- This endpoint allows filtering contacts using specified conditions and returns a paginated list of matching contacts.
929
- The results can be filtered using various attributes like email, name, subscription status, etc.
930
-
931
- - **Method**: `POST`
932
- - **Path**: `/api/reach/v1/segmentation/filters/contacts`
933
-
934
- **Parameters**:
935
-
936
- - `conditions`: conditions parameter (required)
937
- - `logic`: logic parameter (required)
938
- - `page`: page parameter
939
- - `per_page`: per_page parameter
940
-
941
- ### reach_listContactSegmentsV1
924
+ ### reach_listSegmentsV1
942
925
 
943
926
  Get a list of all contact segments.
944
927
 
@@ -965,6 +948,22 @@ The segment can be configured with specific criteria like email, name, subscript
965
948
  - `conditions`: conditions parameter (required)
966
949
  - `logic`: logic parameter (required)
967
950
 
951
+ ### reach_listSegmentContactsV1
952
+
953
+ Retrieve contacts associated with a specific segment.
954
+
955
+ This endpoint allows you to fetch and filter contacts that belong to a particular segment,
956
+ identified by its UUID.
957
+
958
+ - **Method**: `GET`
959
+ - **Path**: `/api/reach/v1/segmentation/segments/{segmentUuid}/contacts`
960
+
961
+ **Parameters**:
962
+
963
+ - `segmentUuid`: Segment uuid parameter (required)
964
+ - `page`: Page number
965
+ - `per_page`: Number of items per page
966
+
968
967
  ### reach_getSegmentDetailsV1
969
968
 
970
969
  Get details of a specific segment.
@@ -1607,7 +1606,7 @@ If virtual machine setup fails for any reason, login to [hPanel](https://hpanel.
1607
1606
 
1608
1607
  If no payment method is provided, your default payment method will be used automatically.
1609
1608
 
1610
- Use this endpoint to create new VPS instances.
1609
+ Use this endpoint to create new VPS instances.
1611
1610
 
1612
1611
  - **Method**: `POST`
1613
1612
  - **Path**: `/api/vps/v1/virtual-machines`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hostinger-api-mcp",
3
- "version": "0.1.23",
3
+ "version": "0.1.24",
4
4
  "description": "MCP server for Hostinger API",
5
5
  "repository": {
6
6
  "type": "git",
package/server.js CHANGED
@@ -1635,113 +1635,7 @@ const TOOLS = [
1635
1635
  ]
1636
1636
  },
1637
1637
  {
1638
- "name": "reach_filterSegmentContactsV1",
1639
- "description": "Filter and retrieve contacts based on segmentation criteria.\n\nThis endpoint allows filtering contacts using specified conditions and returns a paginated list of matching contacts.\nThe results can be filtered using various attributes like email, name, subscription status, etc.",
1640
- "method": "POST",
1641
- "path": "/api/reach/v1/segmentation/filters/contacts",
1642
- "inputSchema": {
1643
- "type": "object",
1644
- "properties": {
1645
- "conditions": {
1646
- "type": "array",
1647
- "description": "conditions parameter",
1648
- "items": {
1649
- "type": "object",
1650
- "description": "conditions parameter",
1651
- "properties": {
1652
- "operator": {
1653
- "type": "string",
1654
- "description": "operator parameter",
1655
- "enum": [
1656
- "equals",
1657
- "not_equals",
1658
- "contains",
1659
- "not_contains",
1660
- "gte",
1661
- "lte",
1662
- "exists",
1663
- "within_last_days",
1664
- "not_within_last_days",
1665
- "older_than_days",
1666
- "processed",
1667
- "not_processed",
1668
- "delivered",
1669
- "not_delivered",
1670
- "dropped",
1671
- "not_dropped",
1672
- "bounced",
1673
- "not_bounced",
1674
- "opened",
1675
- "not_opened",
1676
- "clicked",
1677
- "not_clicked",
1678
- "unsubscribed",
1679
- "not_unsubscribed"
1680
- ]
1681
- },
1682
- "value": {
1683
- "type": "string",
1684
- "description": "value parameter"
1685
- },
1686
- "attribute": {
1687
- "type": "string",
1688
- "description": "attribute parameter",
1689
- "enum": [
1690
- "note",
1691
- "comment",
1692
- "domain",
1693
- "integration",
1694
- "source",
1695
- "name",
1696
- "surname",
1697
- "email",
1698
- "subscribed_at",
1699
- "unsubscribed_at",
1700
- "subscription_status",
1701
- "processed",
1702
- "opened",
1703
- "clicked",
1704
- "delivered",
1705
- "bounced",
1706
- "unsubscribed",
1707
- "dropped",
1708
- "tag",
1709
- "campaigns"
1710
- ]
1711
- }
1712
- }
1713
- }
1714
- },
1715
- "logic": {
1716
- "type": "string",
1717
- "description": "logic parameter",
1718
- "enum": [
1719
- "AND",
1720
- "OR"
1721
- ]
1722
- },
1723
- "page": {
1724
- "type": "integer",
1725
- "description": "page parameter"
1726
- },
1727
- "per_page": {
1728
- "type": "integer",
1729
- "description": "per_page parameter"
1730
- }
1731
- },
1732
- "required": [
1733
- "conditions",
1734
- "logic"
1735
- ]
1736
- },
1737
- "security": [
1738
- {
1739
- "apiToken": []
1740
- }
1741
- ]
1742
- },
1743
- {
1744
- "name": "reach_listContactSegmentsV1",
1638
+ "name": "reach_listSegmentsV1",
1745
1639
  "description": "Get a list of all contact segments.\n\nThis endpoint returns a list of contact segments that can be used to organize contacts.",
1746
1640
  "method": "GET",
1747
1641
  "path": "/api/reach/v1/segmentation/segments",
@@ -1859,6 +1753,37 @@ const TOOLS = [
1859
1753
  }
1860
1754
  ]
1861
1755
  },
1756
+ {
1757
+ "name": "reach_listSegmentContactsV1",
1758
+ "description": "Retrieve contacts associated with a specific segment.\n\nThis endpoint allows you to fetch and filter contacts that belong to a particular segment,\nidentified by its UUID.",
1759
+ "method": "GET",
1760
+ "path": "/api/reach/v1/segmentation/segments/{segmentUuid}/contacts",
1761
+ "inputSchema": {
1762
+ "type": "object",
1763
+ "properties": {
1764
+ "segmentUuid": {
1765
+ "type": "string",
1766
+ "description": "Segment uuid parameter"
1767
+ },
1768
+ "page": {
1769
+ "type": "integer",
1770
+ "description": "Page number"
1771
+ },
1772
+ "per_page": {
1773
+ "type": "integer",
1774
+ "description": "Number of items per page"
1775
+ }
1776
+ },
1777
+ "required": [
1778
+ "segmentUuid"
1779
+ ]
1780
+ },
1781
+ "security": [
1782
+ {
1783
+ "apiToken": []
1784
+ }
1785
+ ]
1786
+ },
1862
1787
  {
1863
1788
  "name": "reach_getSegmentDetailsV1",
1864
1789
  "description": "Get details of a specific segment.\n\nThis endpoint retrieves information about a single segment identified by UUID.\nSegments are used to organize and group contacts based on specific criteria.",
@@ -3013,7 +2938,7 @@ const TOOLS = [
3013
2938
  },
3014
2939
  {
3015
2940
  "name": "VPS_purchaseNewVirtualMachineV1",
3016
- "description": "Purchase and setup a new virtual machine.\n\nIf virtual machine setup fails for any reason, login to [hPanel](https://hpanel.hostinger.com/) and complete the setup manually.\n\nIf no payment method is provided, your default payment method will be used automatically.\n\nUse this endpoint to create new VPS instances. ",
2941
+ "description": "Purchase and setup a new virtual machine.\n\nIf virtual machine setup fails for any reason, login to [hPanel](https://hpanel.hostinger.com/) and complete the setup manually.\n\nIf no payment method is provided, your default payment method will be used automatically.\n\nUse this endpoint to create new VPS instances.",
3017
2942
  "method": "POST",
3018
2943
  "path": "/api/vps/v1/virtual-machines",
3019
2944
  "inputSchema": {
@@ -3644,7 +3569,7 @@ const SECURITY_SCHEMES = {
3644
3569
 
3645
3570
  /**
3646
3571
  * MCP Server for Hostinger API
3647
- * Generated from OpenAPI spec version 0.10.0
3572
+ * Generated from OpenAPI spec version 0.10.2
3648
3573
  */
3649
3574
  class MCPServer {
3650
3575
  constructor() {
@@ -3662,7 +3587,7 @@ class MCPServer {
3662
3587
  this.server = new Server(
3663
3588
  {
3664
3589
  name: "hostinger-api-mcp",
3665
- version: "0.1.23",
3590
+ version: "0.1.24",
3666
3591
  },
3667
3592
  {
3668
3593
  capabilities: {
@@ -3687,7 +3612,7 @@ class MCPServer {
3687
3612
  });
3688
3613
  }
3689
3614
 
3690
- headers['User-Agent'] = 'hostinger-mcp-server/0.1.23';
3615
+ headers['User-Agent'] = 'hostinger-mcp-server/0.1.24';
3691
3616
 
3692
3617
  return headers;
3693
3618
  }
package/server.ts CHANGED
@@ -1653,113 +1653,7 @@ const TOOLS: OpenApiTool[] = [
1653
1653
  ]
1654
1654
  },
1655
1655
  {
1656
- "name": "reach_filterSegmentContactsV1",
1657
- "description": "Filter and retrieve contacts based on segmentation criteria.\n\nThis endpoint allows filtering contacts using specified conditions and returns a paginated list of matching contacts.\nThe results can be filtered using various attributes like email, name, subscription status, etc.",
1658
- "method": "POST",
1659
- "path": "/api/reach/v1/segmentation/filters/contacts",
1660
- "inputSchema": {
1661
- "type": "object",
1662
- "properties": {
1663
- "conditions": {
1664
- "type": "array",
1665
- "description": "conditions parameter",
1666
- "items": {
1667
- "type": "object",
1668
- "description": "conditions parameter",
1669
- "properties": {
1670
- "operator": {
1671
- "type": "string",
1672
- "description": "operator parameter",
1673
- "enum": [
1674
- "equals",
1675
- "not_equals",
1676
- "contains",
1677
- "not_contains",
1678
- "gte",
1679
- "lte",
1680
- "exists",
1681
- "within_last_days",
1682
- "not_within_last_days",
1683
- "older_than_days",
1684
- "processed",
1685
- "not_processed",
1686
- "delivered",
1687
- "not_delivered",
1688
- "dropped",
1689
- "not_dropped",
1690
- "bounced",
1691
- "not_bounced",
1692
- "opened",
1693
- "not_opened",
1694
- "clicked",
1695
- "not_clicked",
1696
- "unsubscribed",
1697
- "not_unsubscribed"
1698
- ]
1699
- },
1700
- "value": {
1701
- "type": "string",
1702
- "description": "value parameter"
1703
- },
1704
- "attribute": {
1705
- "type": "string",
1706
- "description": "attribute parameter",
1707
- "enum": [
1708
- "note",
1709
- "comment",
1710
- "domain",
1711
- "integration",
1712
- "source",
1713
- "name",
1714
- "surname",
1715
- "email",
1716
- "subscribed_at",
1717
- "unsubscribed_at",
1718
- "subscription_status",
1719
- "processed",
1720
- "opened",
1721
- "clicked",
1722
- "delivered",
1723
- "bounced",
1724
- "unsubscribed",
1725
- "dropped",
1726
- "tag",
1727
- "campaigns"
1728
- ]
1729
- }
1730
- }
1731
- }
1732
- },
1733
- "logic": {
1734
- "type": "string",
1735
- "description": "logic parameter",
1736
- "enum": [
1737
- "AND",
1738
- "OR"
1739
- ]
1740
- },
1741
- "page": {
1742
- "type": "integer",
1743
- "description": "page parameter"
1744
- },
1745
- "per_page": {
1746
- "type": "integer",
1747
- "description": "per_page parameter"
1748
- }
1749
- },
1750
- "required": [
1751
- "conditions",
1752
- "logic"
1753
- ]
1754
- },
1755
- "security": [
1756
- {
1757
- "apiToken": []
1758
- }
1759
- ]
1760
- },
1761
- {
1762
- "name": "reach_listContactSegmentsV1",
1656
+ "name": "reach_listSegmentsV1",
1763
1657
  "description": "Get a list of all contact segments.\n\nThis endpoint returns a list of contact segments that can be used to organize contacts.",
1764
1658
  "method": "GET",
1765
1659
  "path": "/api/reach/v1/segmentation/segments",
@@ -1877,6 +1771,37 @@ const TOOLS: OpenApiTool[] = [
1877
1771
  }
1878
1772
  ]
1879
1773
  },
1774
+ {
1775
+ "name": "reach_listSegmentContactsV1",
1776
+ "description": "Retrieve contacts associated with a specific segment.\n\nThis endpoint allows you to fetch and filter contacts that belong to a particular segment,\nidentified by its UUID.",
1777
+ "method": "GET",
1778
+ "path": "/api/reach/v1/segmentation/segments/{segmentUuid}/contacts",
1779
+ "inputSchema": {
1780
+ "type": "object",
1781
+ "properties": {
1782
+ "segmentUuid": {
1783
+ "type": "string",
1784
+ "description": "Segment uuid parameter"
1785
+ },
1786
+ "page": {
1787
+ "type": "integer",
1788
+ "description": "Page number"
1789
+ },
1790
+ "per_page": {
1791
+ "type": "integer",
1792
+ "description": "Number of items per page"
1793
+ }
1794
+ },
1795
+ "required": [
1796
+ "segmentUuid"
1797
+ ]
1798
+ },
1799
+ "security": [
1800
+ {
1801
+ "apiToken": []
1802
+ }
1803
+ ]
1804
+ },
1880
1805
  {
1881
1806
  "name": "reach_getSegmentDetailsV1",
1882
1807
  "description": "Get details of a specific segment.\n\nThis endpoint retrieves information about a single segment identified by UUID.\nSegments are used to organize and group contacts based on specific criteria.",
@@ -3031,7 +2956,7 @@ const TOOLS: OpenApiTool[] = [
3031
2956
  },
3032
2957
  {
3033
2958
  "name": "VPS_purchaseNewVirtualMachineV1",
3034
- "description": "Purchase and setup a new virtual machine.\n\nIf virtual machine setup fails for any reason, login to [hPanel](https://hpanel.hostinger.com/) and complete the setup manually.\n\nIf no payment method is provided, your default payment method will be used automatically.\n\nUse this endpoint to create new VPS instances. ",
2959
+ "description": "Purchase and setup a new virtual machine.\n\nIf virtual machine setup fails for any reason, login to [hPanel](https://hpanel.hostinger.com/) and complete the setup manually.\n\nIf no payment method is provided, your default payment method will be used automatically.\n\nUse this endpoint to create new VPS instances.",
3035
2960
  "method": "POST",
3036
2961
  "path": "/api/vps/v1/virtual-machines",
3037
2962
  "inputSchema": {
@@ -3662,7 +3587,7 @@ const SECURITY_SCHEMES: Record<string, SecurityScheme> = {
3662
3587
 
3663
3588
  /**
3664
3589
  * MCP Server for Hostinger API
3665
- * Generated from OpenAPI spec version 0.10.0
3590
+ * Generated from OpenAPI spec version 0.10.2
3666
3591
  */
3667
3592
  class MCPServer {
3668
3593
  private server: Server;
@@ -3684,7 +3609,7 @@ class MCPServer {
3684
3609
  this.server = new Server(
3685
3610
  {
3686
3611
  name: "hostinger-api-mcp",
3687
- version: "0.1.23",
3612
+ version: "0.1.24",
3688
3613
  },
3689
3614
  {
3690
3615
  capabilities: {
@@ -3709,7 +3634,7 @@ class MCPServer {
3709
3634
  });
3710
3635
  }
3711
3636
 
3712
- headers['User-Agent'] = 'hostinger-mcp-server/0.1.23';
3637
+ headers['User-Agent'] = 'hostinger-mcp-server/0.1.24';
3713
3638
 
3714
3639
  return headers;
3715
3640
  }
package/types.d.ts CHANGED
@@ -1059,40 +1059,12 @@ The contact will be automatically subscribed to email communications.
1059
1059
  response: any; // Response structure will depend on the API
1060
1060
  };
1061
1061
 
1062
- /**
1063
- * Filter and retrieve contacts based on segmentation criteria.
1064
-
1065
- This endpoint allows filtering contacts using specified conditions and returns a paginated list of matching contacts.
1066
- The results can be filtered using various attributes like email, name, subscription status, etc.
1067
- */
1068
- "reach_filterSegmentContactsV1": {
1069
- params: {
1070
- /**
1071
- * conditions parameter
1072
- */
1073
- conditions: array;
1074
- /**
1075
- * logic parameter
1076
- */
1077
- logic: string;
1078
- /**
1079
- * page parameter
1080
- */
1081
- page?: number;
1082
- /**
1083
- * per_page parameter
1084
- */
1085
- per_page?: number;
1086
- };
1087
- response: any; // Response structure will depend on the API
1088
- };
1089
-
1090
1062
  /**
1091
1063
  * Get a list of all contact segments.
1092
1064
 
1093
1065
  This endpoint returns a list of contact segments that can be used to organize contacts.
1094
1066
  */
1095
- "reach_listContactSegmentsV1": {
1067
+ "reach_listSegmentsV1": {
1096
1068
  params: {
1097
1069
 
1098
1070
  };
@@ -1123,6 +1095,30 @@ The segment can be configured with specific criteria like email, name, subscript
1123
1095
  response: any; // Response structure will depend on the API
1124
1096
  };
1125
1097
 
1098
+ /**
1099
+ * Retrieve contacts associated with a specific segment.
1100
+
1101
+ This endpoint allows you to fetch and filter contacts that belong to a particular segment,
1102
+ identified by its UUID.
1103
+ */
1104
+ "reach_listSegmentContactsV1": {
1105
+ params: {
1106
+ /**
1107
+ * Segment uuid parameter
1108
+ */
1109
+ segmentUuid: string;
1110
+ /**
1111
+ * Page number
1112
+ */
1113
+ page?: number;
1114
+ /**
1115
+ * Number of items per page
1116
+ */
1117
+ per_page?: number;
1118
+ };
1119
+ response: any; // Response structure will depend on the API
1120
+ };
1121
+
1126
1122
  /**
1127
1123
  * Get details of a specific segment.
1128
1124
 
@@ -1950,7 +1946,7 @@ If virtual machine setup fails for any reason, login to [hPanel](https://hpanel.
1950
1946
 
1951
1947
  If no payment method is provided, your default payment method will be used automatically.
1952
1948
 
1953
- Use this endpoint to create new VPS instances.
1949
+ Use this endpoint to create new VPS instances.
1954
1950
  */
1955
1951
  "VPS_purchaseNewVirtualMachineV1": {
1956
1952
  params: {