hostinger-api-mcp 1.21.0 → 1.22.1

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.
package/README.md CHANGED
@@ -49,7 +49,7 @@ pnpm update -g hostinger-api-mcp
49
49
 
50
50
  This package installs the following MCP server commands:
51
51
 
52
- - `hostinger-api-mcp` — unified server with every tool (263 total)
52
+ - `hostinger-api-mcp` — unified server with every tool (268 total)
53
53
  - `hostinger-agency-hosting-mcp` — 27 tools for agency-hosting
54
54
  - `hostinger-billing-mcp` — 8 tools for billing
55
55
  - `hostinger-dns-mcp` — 8 tools for dns
@@ -57,7 +57,7 @@ This package installs the following MCP server commands:
57
57
  - `hostinger-ecommerce-mcp` — 12 tools for ecommerce
58
58
  - `hostinger-horizons-mcp` — 2 tools for horizons
59
59
  - `hostinger-hosting-mcp` — 48 tools for hosting
60
- - `hostinger-mail-mcp` — 26 tools for mail
60
+ - `hostinger-mail-mcp` — 31 tools for mail
61
61
  - `hostinger-reach-mcp` — 12 tools for reach
62
62
  - `hostinger-vps-mcp` — 62 tools for vps
63
63
  - `hostinger-wordpress-mcp` — 35 tools for wordpress
@@ -1178,7 +1178,7 @@ The database name must be the full name returned by the list databases endpoint.
1178
1178
  - **Method**: `DELETE`
1179
1179
  - **Path**: `/api/hosting/v1/accounts/{username}/databases/{name}`
1180
1180
 
1181
- #### hosting_createAccountDatabaseRemoteConnectionV1
1181
+ #### hosting_createDatabaseRemoteConnectionV1
1182
1182
 
1183
1183
  Allows a remote host to connect to the specified database.
1184
1184
 
@@ -1188,7 +1188,7 @@ the full name returned by the list databases endpoint.
1188
1188
  - **Method**: `POST`
1189
1189
  - **Path**: `/api/hosting/v1/accounts/{username}/databases/{name}/remote-connections`
1190
1190
 
1191
- #### hosting_deleteAccountDatabaseRemoteConnectionV1
1191
+ #### hosting_deleteDatabaseRemoteConnectionV1
1192
1192
 
1193
1193
  Permanently removes a remote-access rule, revoking the given host's remote access to the database.
1194
1194
 
@@ -1199,7 +1199,7 @@ the full name returned by the list databases endpoint.
1199
1199
  - **Method**: `DELETE`
1200
1200
  - **Path**: `/api/hosting/v1/accounts/{username}/databases/{name}/remote-connections`
1201
1201
 
1202
- #### hosting_listAccountDatabaseRemoteConnectionsV1
1202
+ #### hosting_listDatabaseRemoteConnectionsV1
1203
1203
 
1204
1204
  Returns the remote-access rules for the specified account: the remote hosts
1205
1205
  (IPv4/IPv6 addresses, or "%" for any host) allowed to connect to the account databases.
@@ -1622,6 +1622,47 @@ mail order.
1622
1622
  - **Method**: `GET`
1623
1623
  - **Path**: `/api/mail/v1/orders/{orderId}/autoreplies`
1624
1624
 
1625
+ #### mail_createForwarderV1
1626
+
1627
+ Create a forwarder from the given mailbox to the destination address.
1628
+ The destination receives a confirmation email and forwarding becomes
1629
+ active only after it is confirmed.
1630
+
1631
+ - **Method**: `POST`
1632
+ - **Path**: `/api/mail/v1/mailboxes/{mailboxId}/forwarders`
1633
+
1634
+ #### mail_deleteForwarderV1
1635
+
1636
+ Delete a forwarder. The mailbox stops forwarding messages to the
1637
+ destination address immediately.
1638
+
1639
+ - **Method**: `DELETE`
1640
+ - **Path**: `/api/mail/v1/forwarders/{forwarderId}`
1641
+
1642
+ #### mail_listForwardersV1
1643
+
1644
+ Retrieve a paginated list of forwarders across all mailboxes of a
1645
+ mail order.
1646
+
1647
+ - **Method**: `GET`
1648
+ - **Path**: `/api/mail/v1/orders/{orderId}/forwarders`
1649
+
1650
+ #### mail_resendForwarderConfirmationV1
1651
+
1652
+ Resend the confirmation email to the destination address of an
1653
+ unconfirmed forwarder.
1654
+
1655
+ - **Method**: `POST`
1656
+ - **Path**: `/api/mail/v1/forwarders/{forwarderId}/confirmation/resend`
1657
+
1658
+ #### mail_updateForwarderKeepCopySettingV1
1659
+
1660
+ Enable or disable keeping a copy of forwarded messages in the
1661
+ mailbox.
1662
+
1663
+ - **Method**: `PATCH`
1664
+ - **Path**: `/api/mail/v1/forwarders/{forwarderId}/keep-copy`
1665
+
1625
1666
  #### mail_listAccessLogsV1
1626
1667
 
1627
1668
  Retrieve paginated access logs for the domain attached to the given
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hostinger-api-mcp",
3
- "version": "1.21.0",
3
+ "version": "1.22.1",
4
4
  "description": "Hostinger API — manage domains, DNS, hosting, VPS, billing and more from Gemini CLI.",
5
5
  "mcpServers": {
6
6
  "hostinger": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hostinger-api-mcp",
3
- "version": "1.21.0",
3
+ "version": "1.22.1",
4
4
  "mcpName": "io.github.hostinger/hostinger-api-mcp",
5
5
  "description": "MCP server for Hostinger API",
6
6
  "repository": {
package/server.json CHANGED
@@ -6,12 +6,12 @@
6
6
  "url": "https://github.com/hostinger/api-mcp-server",
7
7
  "source": "github"
8
8
  },
9
- "version": "1.21.0",
9
+ "version": "1.22.1",
10
10
  "packages": [
11
11
  {
12
12
  "registryType": "npm",
13
13
  "identifier": "hostinger-api-mcp",
14
- "version": "1.21.0",
14
+ "version": "1.22.1",
15
15
  "transport": {
16
16
  "type": "stdio"
17
17
  },
@@ -29,7 +29,7 @@ const SECURITY_SCHEMES = {
29
29
 
30
30
  /**
31
31
  * MCP Server for Hostinger API
32
- * Generated from OpenAPI spec version 1.19.0
32
+ * Generated from OpenAPI spec version 1.20.1
33
33
  */
34
34
  class MCPServer {
35
35
  constructor({ name, version, tools }) {
@@ -52,7 +52,7 @@ const SECURITY_SCHEMES: Record<string, SecurityScheme> = {
52
52
 
53
53
  /**
54
54
  * MCP Server for Hostinger API
55
- * Generated from OpenAPI spec version 1.19.0
55
+ * Generated from OpenAPI spec version 1.20.1
56
56
  */
57
57
  class MCPServer {
58
58
  private readonly name: string;
@@ -3221,7 +3221,7 @@ export default [
3221
3221
  "group": "hosting"
3222
3222
  },
3223
3223
  {
3224
- "name": "hosting_createAccountDatabaseRemoteConnectionV1",
3224
+ "name": "hosting_createDatabaseRemoteConnectionV1",
3225
3225
  "description": "Allows a remote host to connect to the specified database.\n\nProvide an IPv4/IPv6 address, or \"%\" to allow any host. The database name must be\nthe full name returned by the list databases endpoint.",
3226
3226
  "method": "POST",
3227
3227
  "path": "/api/hosting/v1/accounts/{username}/databases/{name}/remote-connections",
@@ -3255,7 +3255,7 @@ export default [
3255
3255
  "group": "hosting"
3256
3256
  },
3257
3257
  {
3258
- "name": "hosting_deleteAccountDatabaseRemoteConnectionV1",
3258
+ "name": "hosting_deleteDatabaseRemoteConnectionV1",
3259
3259
  "description": "Permanently removes a remote-access rule, revoking the given host's remote access to the database.\n\nIdentify the rule with the required ip query parameter (the IPv4/IPv6 address, or \"%\",\nexactly as returned by the list remote connections endpoint). The database name must be\nthe full name returned by the list databases endpoint.",
3260
3260
  "method": "DELETE",
3261
3261
  "path": "/api/hosting/v1/accounts/{username}/databases/{name}/remote-connections",
@@ -3289,7 +3289,7 @@ export default [
3289
3289
  "group": "hosting"
3290
3290
  },
3291
3291
  {
3292
- "name": "hosting_listAccountDatabaseRemoteConnectionsV1",
3292
+ "name": "hosting_listDatabaseRemoteConnectionsV1",
3293
3293
  "description": "Returns the remote-access rules for the specified account: the remote hosts\n(IPv4/IPv6 addresses, or \"%\" for any host) allowed to connect to the account databases.\n\nUse the domain filter to only return rules for databases assigned to a specific domain.",
3294
3294
  "method": "GET",
3295
3295
  "path": "/api/hosting/v1/accounts/{username}/databases/remote-connections",
@@ -4526,6 +4526,148 @@ export default [
4526
4526
  ],
4527
4527
  "group": "mail"
4528
4528
  },
4529
+ {
4530
+ "name": "mail_createForwarderV1",
4531
+ "description": "Create a forwarder from the given mailbox to the destination address.\nThe destination receives a confirmation email and forwarding becomes\nactive only after it is confirmed.",
4532
+ "method": "POST",
4533
+ "path": "/api/mail/v1/mailboxes/{mailboxId}/forwarders",
4534
+ "inputSchema": {
4535
+ "type": "object",
4536
+ "properties": {
4537
+ "mailboxId": {
4538
+ "type": "string",
4539
+ "description": "Mailbox resource ID"
4540
+ },
4541
+ "destination": {
4542
+ "type": "string",
4543
+ "description": "Email address the messages will be forwarded to"
4544
+ },
4545
+ "is_keep_copy_enabled": {
4546
+ "type": "boolean",
4547
+ "description": "Whether to keep a copy of forwarded messages in the mailbox. Defaults to false."
4548
+ }
4549
+ },
4550
+ "required": [
4551
+ "mailboxId",
4552
+ "destination"
4553
+ ]
4554
+ },
4555
+ "security": [
4556
+ {
4557
+ "apiToken": []
4558
+ }
4559
+ ],
4560
+ "group": "mail"
4561
+ },
4562
+ {
4563
+ "name": "mail_deleteForwarderV1",
4564
+ "description": "Delete a forwarder. The mailbox stops forwarding messages to the\ndestination address immediately.",
4565
+ "method": "DELETE",
4566
+ "path": "/api/mail/v1/forwarders/{forwarderId}",
4567
+ "inputSchema": {
4568
+ "type": "object",
4569
+ "properties": {
4570
+ "forwarderId": {
4571
+ "type": "string",
4572
+ "description": "Forwarder resource ID"
4573
+ }
4574
+ },
4575
+ "required": [
4576
+ "forwarderId"
4577
+ ]
4578
+ },
4579
+ "security": [
4580
+ {
4581
+ "apiToken": []
4582
+ }
4583
+ ],
4584
+ "group": "mail"
4585
+ },
4586
+ {
4587
+ "name": "mail_listForwardersV1",
4588
+ "description": "Retrieve a paginated list of forwarders across all mailboxes of a\nmail order.",
4589
+ "method": "GET",
4590
+ "path": "/api/mail/v1/orders/{orderId}/forwarders",
4591
+ "inputSchema": {
4592
+ "type": "object",
4593
+ "properties": {
4594
+ "orderId": {
4595
+ "type": "string",
4596
+ "description": "Order resource ID"
4597
+ },
4598
+ "page": {
4599
+ "type": "integer",
4600
+ "description": "Page number"
4601
+ },
4602
+ "per_page": {
4603
+ "type": "integer",
4604
+ "description": "Number of items per page"
4605
+ }
4606
+ },
4607
+ "required": [
4608
+ "orderId"
4609
+ ]
4610
+ },
4611
+ "security": [
4612
+ {
4613
+ "apiToken": []
4614
+ }
4615
+ ],
4616
+ "group": "mail"
4617
+ },
4618
+ {
4619
+ "name": "mail_resendForwarderConfirmationV1",
4620
+ "description": "Resend the confirmation email to the destination address of an\nunconfirmed forwarder.",
4621
+ "method": "POST",
4622
+ "path": "/api/mail/v1/forwarders/{forwarderId}/confirmation/resend",
4623
+ "inputSchema": {
4624
+ "type": "object",
4625
+ "properties": {
4626
+ "forwarderId": {
4627
+ "type": "string",
4628
+ "description": "Forwarder resource ID"
4629
+ }
4630
+ },
4631
+ "required": [
4632
+ "forwarderId"
4633
+ ]
4634
+ },
4635
+ "security": [
4636
+ {
4637
+ "apiToken": []
4638
+ }
4639
+ ],
4640
+ "group": "mail"
4641
+ },
4642
+ {
4643
+ "name": "mail_updateForwarderKeepCopySettingV1",
4644
+ "description": "Enable or disable keeping a copy of forwarded messages in the\nmailbox.",
4645
+ "method": "PATCH",
4646
+ "path": "/api/mail/v1/forwarders/{forwarderId}/keep-copy",
4647
+ "inputSchema": {
4648
+ "type": "object",
4649
+ "properties": {
4650
+ "forwarderId": {
4651
+ "type": "string",
4652
+ "description": "Forwarder resource ID"
4653
+ },
4654
+ "is_keep_copy_enabled": {
4655
+ "type": "boolean",
4656
+ "description": "Whether to keep a copy of forwarded messages in the mailbox"
4657
+ }
4658
+ },
4659
+ "required": [
4660
+ "forwarderId",
4661
+ "is_keep_copy_enabled"
4662
+ ]
4663
+ },
4664
+ "security": [
4665
+ {
4666
+ "apiToken": []
4667
+ }
4668
+ ],
4669
+ "group": "mail"
4670
+ },
4529
4671
  {
4530
4672
  "name": "mail_listAccessLogsV1",
4531
4673
  "description": "Retrieve paginated access logs for the domain attached to the given\nmail order. Supports filtering by account, date range, protocol,\nstatus, and deletion flag. Results are sorted by timestamp descending.",
@@ -3235,7 +3235,7 @@ const tools: OpenApiTool[] = [
3235
3235
  "group": "hosting"
3236
3236
  },
3237
3237
  {
3238
- "name": "hosting_createAccountDatabaseRemoteConnectionV1",
3238
+ "name": "hosting_createDatabaseRemoteConnectionV1",
3239
3239
  "description": "Allows a remote host to connect to the specified database.\n\nProvide an IPv4/IPv6 address, or \"%\" to allow any host. The database name must be\nthe full name returned by the list databases endpoint.",
3240
3240
  "method": "POST",
3241
3241
  "path": "/api/hosting/v1/accounts/{username}/databases/{name}/remote-connections",
@@ -3269,7 +3269,7 @@ const tools: OpenApiTool[] = [
3269
3269
  "group": "hosting"
3270
3270
  },
3271
3271
  {
3272
- "name": "hosting_deleteAccountDatabaseRemoteConnectionV1",
3272
+ "name": "hosting_deleteDatabaseRemoteConnectionV1",
3273
3273
  "description": "Permanently removes a remote-access rule, revoking the given host's remote access to the database.\n\nIdentify the rule with the required ip query parameter (the IPv4/IPv6 address, or \"%\",\nexactly as returned by the list remote connections endpoint). The database name must be\nthe full name returned by the list databases endpoint.",
3274
3274
  "method": "DELETE",
3275
3275
  "path": "/api/hosting/v1/accounts/{username}/databases/{name}/remote-connections",
@@ -3303,7 +3303,7 @@ const tools: OpenApiTool[] = [
3303
3303
  "group": "hosting"
3304
3304
  },
3305
3305
  {
3306
- "name": "hosting_listAccountDatabaseRemoteConnectionsV1",
3306
+ "name": "hosting_listDatabaseRemoteConnectionsV1",
3307
3307
  "description": "Returns the remote-access rules for the specified account: the remote hosts\n(IPv4/IPv6 addresses, or \"%\" for any host) allowed to connect to the account databases.\n\nUse the domain filter to only return rules for databases assigned to a specific domain.",
3308
3308
  "method": "GET",
3309
3309
  "path": "/api/hosting/v1/accounts/{username}/databases/remote-connections",
@@ -4540,6 +4540,148 @@ const tools: OpenApiTool[] = [
4540
4540
  ],
4541
4541
  "group": "mail"
4542
4542
  },
4543
+ {
4544
+ "name": "mail_createForwarderV1",
4545
+ "description": "Create a forwarder from the given mailbox to the destination address.\nThe destination receives a confirmation email and forwarding becomes\nactive only after it is confirmed.",
4546
+ "method": "POST",
4547
+ "path": "/api/mail/v1/mailboxes/{mailboxId}/forwarders",
4548
+ "inputSchema": {
4549
+ "type": "object",
4550
+ "properties": {
4551
+ "mailboxId": {
4552
+ "type": "string",
4553
+ "description": "Mailbox resource ID"
4554
+ },
4555
+ "destination": {
4556
+ "type": "string",
4557
+ "description": "Email address the messages will be forwarded to"
4558
+ },
4559
+ "is_keep_copy_enabled": {
4560
+ "type": "boolean",
4561
+ "description": "Whether to keep a copy of forwarded messages in the mailbox. Defaults to false."
4562
+ }
4563
+ },
4564
+ "required": [
4565
+ "mailboxId",
4566
+ "destination"
4567
+ ]
4568
+ },
4569
+ "security": [
4570
+ {
4571
+ "apiToken": []
4572
+ }
4573
+ ],
4574
+ "group": "mail"
4575
+ },
4576
+ {
4577
+ "name": "mail_deleteForwarderV1",
4578
+ "description": "Delete a forwarder. The mailbox stops forwarding messages to the\ndestination address immediately.",
4579
+ "method": "DELETE",
4580
+ "path": "/api/mail/v1/forwarders/{forwarderId}",
4581
+ "inputSchema": {
4582
+ "type": "object",
4583
+ "properties": {
4584
+ "forwarderId": {
4585
+ "type": "string",
4586
+ "description": "Forwarder resource ID"
4587
+ }
4588
+ },
4589
+ "required": [
4590
+ "forwarderId"
4591
+ ]
4592
+ },
4593
+ "security": [
4594
+ {
4595
+ "apiToken": []
4596
+ }
4597
+ ],
4598
+ "group": "mail"
4599
+ },
4600
+ {
4601
+ "name": "mail_listForwardersV1",
4602
+ "description": "Retrieve a paginated list of forwarders across all mailboxes of a\nmail order.",
4603
+ "method": "GET",
4604
+ "path": "/api/mail/v1/orders/{orderId}/forwarders",
4605
+ "inputSchema": {
4606
+ "type": "object",
4607
+ "properties": {
4608
+ "orderId": {
4609
+ "type": "string",
4610
+ "description": "Order resource ID"
4611
+ },
4612
+ "page": {
4613
+ "type": "integer",
4614
+ "description": "Page number"
4615
+ },
4616
+ "per_page": {
4617
+ "type": "integer",
4618
+ "description": "Number of items per page"
4619
+ }
4620
+ },
4621
+ "required": [
4622
+ "orderId"
4623
+ ]
4624
+ },
4625
+ "security": [
4626
+ {
4627
+ "apiToken": []
4628
+ }
4629
+ ],
4630
+ "group": "mail"
4631
+ },
4632
+ {
4633
+ "name": "mail_resendForwarderConfirmationV1",
4634
+ "description": "Resend the confirmation email to the destination address of an\nunconfirmed forwarder.",
4635
+ "method": "POST",
4636
+ "path": "/api/mail/v1/forwarders/{forwarderId}/confirmation/resend",
4637
+ "inputSchema": {
4638
+ "type": "object",
4639
+ "properties": {
4640
+ "forwarderId": {
4641
+ "type": "string",
4642
+ "description": "Forwarder resource ID"
4643
+ }
4644
+ },
4645
+ "required": [
4646
+ "forwarderId"
4647
+ ]
4648
+ },
4649
+ "security": [
4650
+ {
4651
+ "apiToken": []
4652
+ }
4653
+ ],
4654
+ "group": "mail"
4655
+ },
4656
+ {
4657
+ "name": "mail_updateForwarderKeepCopySettingV1",
4658
+ "description": "Enable or disable keeping a copy of forwarded messages in the\nmailbox.",
4659
+ "method": "PATCH",
4660
+ "path": "/api/mail/v1/forwarders/{forwarderId}/keep-copy",
4661
+ "inputSchema": {
4662
+ "type": "object",
4663
+ "properties": {
4664
+ "forwarderId": {
4665
+ "type": "string",
4666
+ "description": "Forwarder resource ID"
4667
+ },
4668
+ "is_keep_copy_enabled": {
4669
+ "type": "boolean",
4670
+ "description": "Whether to keep a copy of forwarded messages in the mailbox"
4671
+ }
4672
+ },
4673
+ "required": [
4674
+ "forwarderId",
4675
+ "is_keep_copy_enabled"
4676
+ ]
4677
+ },
4678
+ "security": [
4679
+ {
4680
+ "apiToken": []
4681
+ }
4682
+ ],
4683
+ "group": "mail"
4684
+ },
4543
4685
  {
4544
4686
  "name": "mail_listAccessLogsV1",
4545
4687
  "description": "Retrieve paginated access logs for the domain attached to the given\nmail order. Supports filtering by account, date range, protocol,\nstatus, and deletion flag. Results are sorted by timestamp descending.",
@@ -626,7 +626,7 @@ export default [
626
626
  "group": "hosting"
627
627
  },
628
628
  {
629
- "name": "hosting_createAccountDatabaseRemoteConnectionV1",
629
+ "name": "hosting_createDatabaseRemoteConnectionV1",
630
630
  "description": "Allows a remote host to connect to the specified database.\n\nProvide an IPv4/IPv6 address, or \"%\" to allow any host. The database name must be\nthe full name returned by the list databases endpoint.",
631
631
  "method": "POST",
632
632
  "path": "/api/hosting/v1/accounts/{username}/databases/{name}/remote-connections",
@@ -660,7 +660,7 @@ export default [
660
660
  "group": "hosting"
661
661
  },
662
662
  {
663
- "name": "hosting_deleteAccountDatabaseRemoteConnectionV1",
663
+ "name": "hosting_deleteDatabaseRemoteConnectionV1",
664
664
  "description": "Permanently removes a remote-access rule, revoking the given host's remote access to the database.\n\nIdentify the rule with the required ip query parameter (the IPv4/IPv6 address, or \"%\",\nexactly as returned by the list remote connections endpoint). The database name must be\nthe full name returned by the list databases endpoint.",
665
665
  "method": "DELETE",
666
666
  "path": "/api/hosting/v1/accounts/{username}/databases/{name}/remote-connections",
@@ -694,7 +694,7 @@ export default [
694
694
  "group": "hosting"
695
695
  },
696
696
  {
697
- "name": "hosting_listAccountDatabaseRemoteConnectionsV1",
697
+ "name": "hosting_listDatabaseRemoteConnectionsV1",
698
698
  "description": "Returns the remote-access rules for the specified account: the remote hosts\n(IPv4/IPv6 addresses, or \"%\" for any host) allowed to connect to the account databases.\n\nUse the domain filter to only return rules for databases assigned to a specific domain.",
699
699
  "method": "GET",
700
700
  "path": "/api/hosting/v1/accounts/{username}/databases/remote-connections",
@@ -640,7 +640,7 @@ const tools: OpenApiTool[] = [
640
640
  "group": "hosting"
641
641
  },
642
642
  {
643
- "name": "hosting_createAccountDatabaseRemoteConnectionV1",
643
+ "name": "hosting_createDatabaseRemoteConnectionV1",
644
644
  "description": "Allows a remote host to connect to the specified database.\n\nProvide an IPv4/IPv6 address, or \"%\" to allow any host. The database name must be\nthe full name returned by the list databases endpoint.",
645
645
  "method": "POST",
646
646
  "path": "/api/hosting/v1/accounts/{username}/databases/{name}/remote-connections",
@@ -674,7 +674,7 @@ const tools: OpenApiTool[] = [
674
674
  "group": "hosting"
675
675
  },
676
676
  {
677
- "name": "hosting_deleteAccountDatabaseRemoteConnectionV1",
677
+ "name": "hosting_deleteDatabaseRemoteConnectionV1",
678
678
  "description": "Permanently removes a remote-access rule, revoking the given host's remote access to the database.\n\nIdentify the rule with the required ip query parameter (the IPv4/IPv6 address, or \"%\",\nexactly as returned by the list remote connections endpoint). The database name must be\nthe full name returned by the list databases endpoint.",
679
679
  "method": "DELETE",
680
680
  "path": "/api/hosting/v1/accounts/{username}/databases/{name}/remote-connections",
@@ -708,7 +708,7 @@ const tools: OpenApiTool[] = [
708
708
  "group": "hosting"
709
709
  },
710
710
  {
711
- "name": "hosting_listAccountDatabaseRemoteConnectionsV1",
711
+ "name": "hosting_listDatabaseRemoteConnectionsV1",
712
712
  "description": "Returns the remote-access rules for the specified account: the remote hosts\n(IPv4/IPv6 addresses, or \"%\" for any host) allowed to connect to the account databases.\n\nUse the domain filter to only return rules for databases assigned to a specific domain.",
713
713
  "method": "GET",
714
714
  "path": "/api/hosting/v1/accounts/{username}/databases/remote-connections",
@@ -253,6 +253,148 @@ export default [
253
253
  ],
254
254
  "group": "mail"
255
255
  },
256
+ {
257
+ "name": "mail_createForwarderV1",
258
+ "description": "Create a forwarder from the given mailbox to the destination address.\nThe destination receives a confirmation email and forwarding becomes\nactive only after it is confirmed.",
259
+ "method": "POST",
260
+ "path": "/api/mail/v1/mailboxes/{mailboxId}/forwarders",
261
+ "inputSchema": {
262
+ "type": "object",
263
+ "properties": {
264
+ "mailboxId": {
265
+ "type": "string",
266
+ "description": "Mailbox resource ID"
267
+ },
268
+ "destination": {
269
+ "type": "string",
270
+ "description": "Email address the messages will be forwarded to"
271
+ },
272
+ "is_keep_copy_enabled": {
273
+ "type": "boolean",
274
+ "description": "Whether to keep a copy of forwarded messages in the mailbox. Defaults to false."
275
+ }
276
+ },
277
+ "required": [
278
+ "mailboxId",
279
+ "destination"
280
+ ]
281
+ },
282
+ "security": [
283
+ {
284
+ "apiToken": []
285
+ }
286
+ ],
287
+ "group": "mail"
288
+ },
289
+ {
290
+ "name": "mail_deleteForwarderV1",
291
+ "description": "Delete a forwarder. The mailbox stops forwarding messages to the\ndestination address immediately.",
292
+ "method": "DELETE",
293
+ "path": "/api/mail/v1/forwarders/{forwarderId}",
294
+ "inputSchema": {
295
+ "type": "object",
296
+ "properties": {
297
+ "forwarderId": {
298
+ "type": "string",
299
+ "description": "Forwarder resource ID"
300
+ }
301
+ },
302
+ "required": [
303
+ "forwarderId"
304
+ ]
305
+ },
306
+ "security": [
307
+ {
308
+ "apiToken": []
309
+ }
310
+ ],
311
+ "group": "mail"
312
+ },
313
+ {
314
+ "name": "mail_listForwardersV1",
315
+ "description": "Retrieve a paginated list of forwarders across all mailboxes of a\nmail order.",
316
+ "method": "GET",
317
+ "path": "/api/mail/v1/orders/{orderId}/forwarders",
318
+ "inputSchema": {
319
+ "type": "object",
320
+ "properties": {
321
+ "orderId": {
322
+ "type": "string",
323
+ "description": "Order resource ID"
324
+ },
325
+ "page": {
326
+ "type": "integer",
327
+ "description": "Page number"
328
+ },
329
+ "per_page": {
330
+ "type": "integer",
331
+ "description": "Number of items per page"
332
+ }
333
+ },
334
+ "required": [
335
+ "orderId"
336
+ ]
337
+ },
338
+ "security": [
339
+ {
340
+ "apiToken": []
341
+ }
342
+ ],
343
+ "group": "mail"
344
+ },
345
+ {
346
+ "name": "mail_resendForwarderConfirmationV1",
347
+ "description": "Resend the confirmation email to the destination address of an\nunconfirmed forwarder.",
348
+ "method": "POST",
349
+ "path": "/api/mail/v1/forwarders/{forwarderId}/confirmation/resend",
350
+ "inputSchema": {
351
+ "type": "object",
352
+ "properties": {
353
+ "forwarderId": {
354
+ "type": "string",
355
+ "description": "Forwarder resource ID"
356
+ }
357
+ },
358
+ "required": [
359
+ "forwarderId"
360
+ ]
361
+ },
362
+ "security": [
363
+ {
364
+ "apiToken": []
365
+ }
366
+ ],
367
+ "group": "mail"
368
+ },
369
+ {
370
+ "name": "mail_updateForwarderKeepCopySettingV1",
371
+ "description": "Enable or disable keeping a copy of forwarded messages in the\nmailbox.",
372
+ "method": "PATCH",
373
+ "path": "/api/mail/v1/forwarders/{forwarderId}/keep-copy",
374
+ "inputSchema": {
375
+ "type": "object",
376
+ "properties": {
377
+ "forwarderId": {
378
+ "type": "string",
379
+ "description": "Forwarder resource ID"
380
+ },
381
+ "is_keep_copy_enabled": {
382
+ "type": "boolean",
383
+ "description": "Whether to keep a copy of forwarded messages in the mailbox"
384
+ }
385
+ },
386
+ "required": [
387
+ "forwarderId",
388
+ "is_keep_copy_enabled"
389
+ ]
390
+ },
391
+ "security": [
392
+ {
393
+ "apiToken": []
394
+ }
395
+ ],
396
+ "group": "mail"
397
+ },
256
398
  {
257
399
  "name": "mail_listAccessLogsV1",
258
400
  "description": "Retrieve paginated access logs for the domain attached to the given\nmail order. Supports filtering by account, date range, protocol,\nstatus, and deletion flag. Results are sorted by timestamp descending.",
@@ -267,6 +267,148 @@ const tools: OpenApiTool[] = [
267
267
  ],
268
268
  "group": "mail"
269
269
  },
270
+ {
271
+ "name": "mail_createForwarderV1",
272
+ "description": "Create a forwarder from the given mailbox to the destination address.\nThe destination receives a confirmation email and forwarding becomes\nactive only after it is confirmed.",
273
+ "method": "POST",
274
+ "path": "/api/mail/v1/mailboxes/{mailboxId}/forwarders",
275
+ "inputSchema": {
276
+ "type": "object",
277
+ "properties": {
278
+ "mailboxId": {
279
+ "type": "string",
280
+ "description": "Mailbox resource ID"
281
+ },
282
+ "destination": {
283
+ "type": "string",
284
+ "description": "Email address the messages will be forwarded to"
285
+ },
286
+ "is_keep_copy_enabled": {
287
+ "type": "boolean",
288
+ "description": "Whether to keep a copy of forwarded messages in the mailbox. Defaults to false."
289
+ }
290
+ },
291
+ "required": [
292
+ "mailboxId",
293
+ "destination"
294
+ ]
295
+ },
296
+ "security": [
297
+ {
298
+ "apiToken": []
299
+ }
300
+ ],
301
+ "group": "mail"
302
+ },
303
+ {
304
+ "name": "mail_deleteForwarderV1",
305
+ "description": "Delete a forwarder. The mailbox stops forwarding messages to the\ndestination address immediately.",
306
+ "method": "DELETE",
307
+ "path": "/api/mail/v1/forwarders/{forwarderId}",
308
+ "inputSchema": {
309
+ "type": "object",
310
+ "properties": {
311
+ "forwarderId": {
312
+ "type": "string",
313
+ "description": "Forwarder resource ID"
314
+ }
315
+ },
316
+ "required": [
317
+ "forwarderId"
318
+ ]
319
+ },
320
+ "security": [
321
+ {
322
+ "apiToken": []
323
+ }
324
+ ],
325
+ "group": "mail"
326
+ },
327
+ {
328
+ "name": "mail_listForwardersV1",
329
+ "description": "Retrieve a paginated list of forwarders across all mailboxes of a\nmail order.",
330
+ "method": "GET",
331
+ "path": "/api/mail/v1/orders/{orderId}/forwarders",
332
+ "inputSchema": {
333
+ "type": "object",
334
+ "properties": {
335
+ "orderId": {
336
+ "type": "string",
337
+ "description": "Order resource ID"
338
+ },
339
+ "page": {
340
+ "type": "integer",
341
+ "description": "Page number"
342
+ },
343
+ "per_page": {
344
+ "type": "integer",
345
+ "description": "Number of items per page"
346
+ }
347
+ },
348
+ "required": [
349
+ "orderId"
350
+ ]
351
+ },
352
+ "security": [
353
+ {
354
+ "apiToken": []
355
+ }
356
+ ],
357
+ "group": "mail"
358
+ },
359
+ {
360
+ "name": "mail_resendForwarderConfirmationV1",
361
+ "description": "Resend the confirmation email to the destination address of an\nunconfirmed forwarder.",
362
+ "method": "POST",
363
+ "path": "/api/mail/v1/forwarders/{forwarderId}/confirmation/resend",
364
+ "inputSchema": {
365
+ "type": "object",
366
+ "properties": {
367
+ "forwarderId": {
368
+ "type": "string",
369
+ "description": "Forwarder resource ID"
370
+ }
371
+ },
372
+ "required": [
373
+ "forwarderId"
374
+ ]
375
+ },
376
+ "security": [
377
+ {
378
+ "apiToken": []
379
+ }
380
+ ],
381
+ "group": "mail"
382
+ },
383
+ {
384
+ "name": "mail_updateForwarderKeepCopySettingV1",
385
+ "description": "Enable or disable keeping a copy of forwarded messages in the\nmailbox.",
386
+ "method": "PATCH",
387
+ "path": "/api/mail/v1/forwarders/{forwarderId}/keep-copy",
388
+ "inputSchema": {
389
+ "type": "object",
390
+ "properties": {
391
+ "forwarderId": {
392
+ "type": "string",
393
+ "description": "Forwarder resource ID"
394
+ },
395
+ "is_keep_copy_enabled": {
396
+ "type": "boolean",
397
+ "description": "Whether to keep a copy of forwarded messages in the mailbox"
398
+ }
399
+ },
400
+ "required": [
401
+ "forwarderId",
402
+ "is_keep_copy_enabled"
403
+ ]
404
+ },
405
+ "security": [
406
+ {
407
+ "apiToken": []
408
+ }
409
+ ],
410
+ "group": "mail"
411
+ },
270
412
  {
271
413
  "name": "mail_listAccessLogsV1",
272
414
  "description": "Retrieve paginated access logs for the domain attached to the given\nmail order. Supports filtering by account, date range, protocol,\nstatus, and deletion flag. Results are sorted by timestamp descending.",
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/agency-hosting.js';
5
5
 
6
- startServer({ name: 'hostinger-agency-hosting-mcp', version: '1.21.0', tools });
6
+ startServer({ name: 'hostinger-agency-hosting-mcp', version: '1.22.1', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/agency-hosting.js';
5
5
 
6
- startServer({ name: 'hostinger-agency-hosting-mcp', version: '1.21.0', tools });
6
+ startServer({ name: 'hostinger-agency-hosting-mcp', version: '1.22.1', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/all.js';
5
5
 
6
- startServer({ name: 'hostinger-api-mcp', version: '1.21.0', tools });
6
+ startServer({ name: 'hostinger-api-mcp', version: '1.22.1', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/all.js';
5
5
 
6
- startServer({ name: 'hostinger-api-mcp', version: '1.21.0', tools });
6
+ startServer({ name: 'hostinger-api-mcp', version: '1.22.1', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/billing.js';
5
5
 
6
- startServer({ name: 'hostinger-billing-mcp', version: '1.21.0', tools });
6
+ startServer({ name: 'hostinger-billing-mcp', version: '1.22.1', tools });
@@ -3,4 +3,4 @@
3
3
  import { startServer } from '../core/runtime.js';
4
4
  import tools from '../core/tools/billing.js';
5
5
 
6
- startServer({ name: 'hostinger-billing-mcp', version: '1.21.0', tools });
6
+ startServer({ name: 'hostinger-billing-mcp', version: '1.22.1', tools });
@@ -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.21.0', tools });
6
+ startServer({ name: 'hostinger-dns-mcp', version: '1.22.1', tools });
@@ -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.21.0', tools });
6
+ startServer({ name: 'hostinger-dns-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-domains-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-domains-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-ecommerce-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-ecommerce-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-horizons-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-horizons-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-hosting-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-hosting-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-mail-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-mail-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-reach-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-reach-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-vps-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-vps-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-wordpress-mcp', version: '1.22.1', 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.21.0', tools });
6
+ startServer({ name: 'hostinger-wordpress-mcp', version: '1.22.1', tools });
package/types.d.ts CHANGED
@@ -2071,7 +2071,7 @@ The database name must be the full name returned by the list databases endpoint.
2071
2071
  Provide an IPv4/IPv6 address, or "%" to allow any host. The database name must be
2072
2072
  the full name returned by the list databases endpoint.
2073
2073
  */
2074
- "hosting_createAccountDatabaseRemoteConnectionV1": {
2074
+ "hosting_createDatabaseRemoteConnectionV1": {
2075
2075
  params: {
2076
2076
  /**
2077
2077
  * username parameter
@@ -2096,7 +2096,7 @@ Identify the rule with the required ip query parameter (the IPv4/IPv6 address, o
2096
2096
  exactly as returned by the list remote connections endpoint). The database name must be
2097
2097
  the full name returned by the list databases endpoint.
2098
2098
  */
2099
- "hosting_deleteAccountDatabaseRemoteConnectionV1": {
2099
+ "hosting_deleteDatabaseRemoteConnectionV1": {
2100
2100
  params: {
2101
2101
  /**
2102
2102
  * username parameter
@@ -2121,7 +2121,7 @@ exactly as returned by the list remote connections endpoint.
2121
2121
 
2122
2122
  Use the domain filter to only return rules for databases assigned to a specific domain.
2123
2123
  */
2124
- "hosting_listAccountDatabaseRemoteConnectionsV1": {
2124
+ "hosting_listDatabaseRemoteConnectionsV1": {
2125
2125
  params: {
2126
2126
  /**
2127
2127
  * username parameter
@@ -3032,6 +3032,97 @@ mail order.
3032
3032
  response: any; // Response structure will depend on the API
3033
3033
  };
3034
3034
 
3035
+ /**
3036
+ * Create a forwarder from the given mailbox to the destination address.
3037
+ The destination receives a confirmation email and forwarding becomes
3038
+ active only after it is confirmed.
3039
+ */
3040
+ "mail_createForwarderV1": {
3041
+ params: {
3042
+ /**
3043
+ * Mailbox resource ID
3044
+ */
3045
+ mailboxId: string;
3046
+ /**
3047
+ * Email address the messages will be forwarded to
3048
+ */
3049
+ destination: string;
3050
+ /**
3051
+ * Whether to keep a copy of forwarded messages in the mailbox. Defaults to false.
3052
+ */
3053
+ is_keep_copy_enabled?: boolean;
3054
+ };
3055
+ response: any; // Response structure will depend on the API
3056
+ };
3057
+
3058
+ /**
3059
+ * Delete a forwarder. The mailbox stops forwarding messages to the
3060
+ destination address immediately.
3061
+ */
3062
+ "mail_deleteForwarderV1": {
3063
+ params: {
3064
+ /**
3065
+ * Forwarder resource ID
3066
+ */
3067
+ forwarderId: string;
3068
+ };
3069
+ response: any; // Response structure will depend on the API
3070
+ };
3071
+
3072
+ /**
3073
+ * Retrieve a paginated list of forwarders across all mailboxes of a
3074
+ mail order.
3075
+ */
3076
+ "mail_listForwardersV1": {
3077
+ params: {
3078
+ /**
3079
+ * Order resource ID
3080
+ */
3081
+ orderId: string;
3082
+ /**
3083
+ * Page number
3084
+ */
3085
+ page?: number;
3086
+ /**
3087
+ * Number of items per page
3088
+ */
3089
+ per_page?: number;
3090
+ };
3091
+ response: any; // Response structure will depend on the API
3092
+ };
3093
+
3094
+ /**
3095
+ * Resend the confirmation email to the destination address of an
3096
+ unconfirmed forwarder.
3097
+ */
3098
+ "mail_resendForwarderConfirmationV1": {
3099
+ params: {
3100
+ /**
3101
+ * Forwarder resource ID
3102
+ */
3103
+ forwarderId: string;
3104
+ };
3105
+ response: any; // Response structure will depend on the API
3106
+ };
3107
+
3108
+ /**
3109
+ * Enable or disable keeping a copy of forwarded messages in the
3110
+ mailbox.
3111
+ */
3112
+ "mail_updateForwarderKeepCopySettingV1": {
3113
+ params: {
3114
+ /**
3115
+ * Forwarder resource ID
3116
+ */
3117
+ forwarderId: string;
3118
+ /**
3119
+ * Whether to keep a copy of forwarded messages in the mailbox
3120
+ */
3121
+ is_keep_copy_enabled: boolean;
3122
+ };
3123
+ response: any; // Response structure will depend on the API
3124
+ };
3125
+
3035
3126
  /**
3036
3127
  * Retrieve paginated access logs for the domain attached to the given
3037
3128
  mail order. Supports filtering by account, date range, protocol,