hostinger-api-mcp 1.48.0 → 1.50.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.
package/README.md CHANGED
@@ -69,7 +69,7 @@ pnpm update -g hostinger-api-mcp
69
69
 
70
70
  This package installs the following MCP server commands:
71
71
 
72
- - `hostinger-api-mcp` — unified server with every tool (371 total)
72
+ - `hostinger-api-mcp` — unified server with every tool (372 total)
73
73
  - `hostinger-agency-hosting-mcp` — 38 tools for agency-hosting
74
74
  - `hostinger-billing-mcp` — 9 tools for billing
75
75
  - `hostinger-dns-mcp` — 8 tools for dns
@@ -79,7 +79,7 @@ This package installs the following MCP server commands:
79
79
  - `hostinger-hosting-mcp` — 58 tools for hosting
80
80
  - `hostinger-mail-mcp` — 38 tools for mail
81
81
  - `hostinger-reach-mcp` — 49 tools for reach
82
- - `hostinger-vps-mcp` — 62 tools for vps
82
+ - `hostinger-vps-mcp` — 63 tools for vps
83
83
  - `hostinger-wordpress-mcp` — 38 tools for wordpress
84
84
 
85
85
  Pick the binary that matches your agent's scope. `hostinger-api-mcp` remains the backwards-compatible default.
@@ -3374,6 +3374,17 @@ Use this endpoint to remove specific firewall rules.
3374
3374
  - **Method**: `DELETE`
3375
3375
  - **Path**: `/api/vps/v1/firewall/{firewallId}/rules/{ruleId}`
3376
3376
 
3377
+ #### VPS_replaceAllFirewallRulesInGroupV1
3378
+
3379
+ Replaces all firewall rules within a specified firewall group with the provided set of rules
3380
+ in a single atomic operation, instead of creating or deleting rules one by one.
3381
+
3382
+ Any virtual machine using this firewall group will need to be synchronized after replacing rules;
3383
+ pass the "sync" query parameter to trigger synchronization immediately.
3384
+
3385
+ - **Method**: `PUT`
3386
+ - **Path**: `/api/vps/v1/firewall/{firewallId}/rules`
3387
+
3377
3388
  #### VPS_createFirewallRuleV1
3378
3389
 
3379
3390
  Create new firewall rule for a specified firewall.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hostinger-api-mcp",
3
- "version": "1.48.0",
3
+ "version": "1.50.0",
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.48.0",
3
+ "version": "1.50.0",
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.48.0",
9
+ "version": "1.50.0",
10
10
  "packages": [
11
11
  {
12
12
  "registryType": "npm",
13
13
  "identifier": "hostinger-api-mcp",
14
- "version": "1.48.0",
14
+ "version": "1.50.0",
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.44.0
32
+ * Generated from OpenAPI spec version 1.46.0
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.44.0
55
+ * Generated from OpenAPI spec version 1.46.0
56
56
  */
57
57
  class MCPServer {
58
58
  private readonly name: string;
@@ -10403,6 +10403,43 @@ export default [
10403
10403
  ],
10404
10404
  "group": "vps"
10405
10405
  },
10406
+ {
10407
+ "name": "VPS_replaceAllFirewallRulesInGroupV1",
10408
+ "description": "Replaces all firewall rules within a specified firewall group with the provided set of rules\nin a single atomic operation, instead of creating or deleting rules one by one.\n\nAny virtual machine using this firewall group will need to be synchronized after replacing rules;\npass the \"sync\" query parameter to trigger synchronization immediately.",
10409
+ "method": "PUT",
10410
+ "path": "/api/vps/v1/firewall/{firewallId}/rules",
10411
+ "inputSchema": {
10412
+ "type": "object",
10413
+ "properties": {
10414
+ "firewallId": {
10415
+ "type": "integer",
10416
+ "description": "Firewall ID"
10417
+ },
10418
+ "sync": {
10419
+ "type": "boolean",
10420
+ "description": "Synchronize the firewall group to all its virtual machines after replacing the rules"
10421
+ },
10422
+ "rules": {
10423
+ "type": "array",
10424
+ "description": "The complete set of firewall rules that atomically replaces all existing rules in the group",
10425
+ "items": {
10426
+ "type": "string",
10427
+ "description": "rules parameter"
10428
+ }
10429
+ }
10430
+ },
10431
+ "required": [
10432
+ "firewallId",
10433
+ "rules"
10434
+ ]
10435
+ },
10436
+ "security": [
10437
+ {
10438
+ "apiToken": []
10439
+ }
10440
+ ],
10441
+ "group": "vps"
10442
+ },
10406
10443
  {
10407
10444
  "name": "VPS_createFirewallRuleV1",
10408
10445
  "description": "Create new firewall rule for a specified firewall.\n\nBy default, the firewall drops all incoming traffic,\nwhich means you must add accept rules for all ports you want to use.\n\nAny virtual machine that has this firewall activated will lose sync with the firewall\nand will have to be synced again manually.\n\nUse this endpoint to add new security rules to firewalls.",
@@ -10417,6 +10417,43 @@ const tools: OpenApiTool[] = [
10417
10417
  ],
10418
10418
  "group": "vps"
10419
10419
  },
10420
+ {
10421
+ "name": "VPS_replaceAllFirewallRulesInGroupV1",
10422
+ "description": "Replaces all firewall rules within a specified firewall group with the provided set of rules\nin a single atomic operation, instead of creating or deleting rules one by one.\n\nAny virtual machine using this firewall group will need to be synchronized after replacing rules;\npass the \"sync\" query parameter to trigger synchronization immediately.",
10423
+ "method": "PUT",
10424
+ "path": "/api/vps/v1/firewall/{firewallId}/rules",
10425
+ "inputSchema": {
10426
+ "type": "object",
10427
+ "properties": {
10428
+ "firewallId": {
10429
+ "type": "integer",
10430
+ "description": "Firewall ID"
10431
+ },
10432
+ "sync": {
10433
+ "type": "boolean",
10434
+ "description": "Synchronize the firewall group to all its virtual machines after replacing the rules"
10435
+ },
10436
+ "rules": {
10437
+ "type": "array",
10438
+ "description": "The complete set of firewall rules that atomically replaces all existing rules in the group",
10439
+ "items": {
10440
+ "type": "string",
10441
+ "description": "rules parameter"
10442
+ }
10443
+ }
10444
+ },
10445
+ "required": [
10446
+ "firewallId",
10447
+ "rules"
10448
+ ]
10449
+ },
10450
+ "security": [
10451
+ {
10452
+ "apiToken": []
10453
+ }
10454
+ ],
10455
+ "group": "vps"
10456
+ },
10420
10457
  {
10421
10458
  "name": "VPS_createFirewallRuleV1",
10422
10459
  "description": "Create new firewall rule for a specified firewall.\n\nBy default, the firewall drops all incoming traffic,\nwhich means you must add accept rules for all ports you want to use.\n\nAny virtual machine that has this firewall activated will lose sync with the firewall\nand will have to be synced again manually.\n\nUse this endpoint to add new security rules to firewalls.",
@@ -560,6 +560,43 @@ export default [
560
560
  ],
561
561
  "group": "vps"
562
562
  },
563
+ {
564
+ "name": "VPS_replaceAllFirewallRulesInGroupV1",
565
+ "description": "Replaces all firewall rules within a specified firewall group with the provided set of rules\nin a single atomic operation, instead of creating or deleting rules one by one.\n\nAny virtual machine using this firewall group will need to be synchronized after replacing rules;\npass the \"sync\" query parameter to trigger synchronization immediately.",
566
+ "method": "PUT",
567
+ "path": "/api/vps/v1/firewall/{firewallId}/rules",
568
+ "inputSchema": {
569
+ "type": "object",
570
+ "properties": {
571
+ "firewallId": {
572
+ "type": "integer",
573
+ "description": "Firewall ID"
574
+ },
575
+ "sync": {
576
+ "type": "boolean",
577
+ "description": "Synchronize the firewall group to all its virtual machines after replacing the rules"
578
+ },
579
+ "rules": {
580
+ "type": "array",
581
+ "description": "The complete set of firewall rules that atomically replaces all existing rules in the group",
582
+ "items": {
583
+ "type": "string",
584
+ "description": "rules parameter"
585
+ }
586
+ }
587
+ },
588
+ "required": [
589
+ "firewallId",
590
+ "rules"
591
+ ]
592
+ },
593
+ "security": [
594
+ {
595
+ "apiToken": []
596
+ }
597
+ ],
598
+ "group": "vps"
599
+ },
563
600
  {
564
601
  "name": "VPS_createFirewallRuleV1",
565
602
  "description": "Create new firewall rule for a specified firewall.\n\nBy default, the firewall drops all incoming traffic,\nwhich means you must add accept rules for all ports you want to use.\n\nAny virtual machine that has this firewall activated will lose sync with the firewall\nand will have to be synced again manually.\n\nUse this endpoint to add new security rules to firewalls.",
@@ -574,6 +574,43 @@ const tools: OpenApiTool[] = [
574
574
  ],
575
575
  "group": "vps"
576
576
  },
577
+ {
578
+ "name": "VPS_replaceAllFirewallRulesInGroupV1",
579
+ "description": "Replaces all firewall rules within a specified firewall group with the provided set of rules\nin a single atomic operation, instead of creating or deleting rules one by one.\n\nAny virtual machine using this firewall group will need to be synchronized after replacing rules;\npass the \"sync\" query parameter to trigger synchronization immediately.",
580
+ "method": "PUT",
581
+ "path": "/api/vps/v1/firewall/{firewallId}/rules",
582
+ "inputSchema": {
583
+ "type": "object",
584
+ "properties": {
585
+ "firewallId": {
586
+ "type": "integer",
587
+ "description": "Firewall ID"
588
+ },
589
+ "sync": {
590
+ "type": "boolean",
591
+ "description": "Synchronize the firewall group to all its virtual machines after replacing the rules"
592
+ },
593
+ "rules": {
594
+ "type": "array",
595
+ "description": "The complete set of firewall rules that atomically replaces all existing rules in the group",
596
+ "items": {
597
+ "type": "string",
598
+ "description": "rules parameter"
599
+ }
600
+ }
601
+ },
602
+ "required": [
603
+ "firewallId",
604
+ "rules"
605
+ ]
606
+ },
607
+ "security": [
608
+ {
609
+ "apiToken": []
610
+ }
611
+ ],
612
+ "group": "vps"
613
+ },
577
614
  {
578
615
  "name": "VPS_createFirewallRuleV1",
579
616
  "description": "Create new firewall rule for a specified firewall.\n\nBy default, the firewall drops all incoming traffic,\nwhich means you must add accept rules for all ports you want to use.\n\nAny virtual machine that has this firewall activated will lose sync with the firewall\nand will have to be synced again manually.\n\nUse this endpoint to add new security rules to firewalls.",
@@ -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.48.0', tools });
6
+ startServer({ name: 'hostinger-agency-hosting-mcp', version: '1.50.0', 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.48.0', tools });
6
+ startServer({ name: 'hostinger-agency-hosting-mcp', version: '1.50.0', 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.48.0', tools });
6
+ startServer({ name: 'hostinger-api-mcp', version: '1.50.0', 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.48.0', tools });
6
+ startServer({ name: 'hostinger-api-mcp', version: '1.50.0', 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.48.0', tools });
6
+ startServer({ name: 'hostinger-billing-mcp', version: '1.50.0', 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.48.0', tools });
6
+ startServer({ name: 'hostinger-billing-mcp', version: '1.50.0', 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.48.0', tools });
6
+ startServer({ name: 'hostinger-dns-mcp', version: '1.50.0', 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.48.0', tools });
6
+ startServer({ name: 'hostinger-dns-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-domains-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-domains-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-ecommerce-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-ecommerce-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-horizons-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-horizons-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-hosting-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-hosting-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-mail-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-mail-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-reach-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-reach-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-vps-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-vps-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-wordpress-mcp', version: '1.50.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.48.0', tools });
6
+ startServer({ name: 'hostinger-wordpress-mcp', version: '1.50.0', tools });
package/types.d.ts CHANGED
@@ -6906,6 +6906,31 @@ Use this endpoint to remove specific firewall rules.
6906
6906
  response: any; // Response structure will depend on the API
6907
6907
  };
6908
6908
 
6909
+ /**
6910
+ * Replaces all firewall rules within a specified firewall group with the provided set of rules
6911
+ in a single atomic operation, instead of creating or deleting rules one by one.
6912
+
6913
+ Any virtual machine using this firewall group will need to be synchronized after replacing rules;
6914
+ pass the "sync" query parameter to trigger synchronization immediately.
6915
+ */
6916
+ "VPS_replaceAllFirewallRulesInGroupV1": {
6917
+ params: {
6918
+ /**
6919
+ * Firewall ID
6920
+ */
6921
+ firewallId: number;
6922
+ /**
6923
+ * Synchronize the firewall group to all its virtual machines after replacing the rules
6924
+ */
6925
+ sync?: boolean;
6926
+ /**
6927
+ * The complete set of firewall rules that atomically replaces all existing rules in the group
6928
+ */
6929
+ rules: array;
6930
+ };
6931
+ response: any; // Response structure will depend on the API
6932
+ };
6933
+
6909
6934
  /**
6910
6935
  * Create new firewall rule for a specified firewall.
6911
6936