hostinger-api-mcp 1.20.1 → 1.21.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
@@ -49,15 +49,15 @@ 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 (258 total)
53
- - `hostinger-agency-hosting-mcp` — 26 tools for agency-hosting
52
+ - `hostinger-api-mcp` — unified server with every tool (263 total)
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
56
56
  - `hostinger-domains-mcp` — 23 tools for domains
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` — 22 tools for mail
60
+ - `hostinger-mail-mcp` — 26 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
@@ -280,6 +280,13 @@ archive types: .zip, .tar, .tar.gz, .tgz.
280
280
  - **Method**: `POST`
281
281
  - **Path**: `/api/agency-hosting/v1/websites/{website_uid}/files/import-archive`
282
282
 
283
+ #### agency-hosting_listAgencyPlanOrdersV1
284
+
285
+ Returns a paginated list of Agency Plan orders accessible to the authenticated client.
286
+
287
+ - **Method**: `GET`
288
+ - **Path**: `/api/agency-hosting/v1/orders`
289
+
283
290
  #### agency-hosting_provisionANewAgencyPlanWebsiteV1
284
291
 
285
292
  Provisions a new website on one of your Agency Plan hosting orders.
@@ -1580,6 +1587,41 @@ are never included; they are returned only when a token is created.
1580
1587
  - **Method**: `GET`
1581
1588
  - **Path**: `/api/mail/v1/api-tokens`
1582
1589
 
1590
+ #### mail_createAutoreplyV1
1591
+
1592
+ Create an automatic reply for the given mailbox. A mailbox can have
1593
+ only one autoreply. Omit `starts_at` to activate the autoreply
1594
+ immediately and omit `ends_at` to keep it active indefinitely.
1595
+
1596
+ - **Method**: `POST`
1597
+ - **Path**: `/api/mail/v1/mailboxes/{mailboxId}/autoreplies`
1598
+
1599
+ #### mail_updateAutoreplyV1
1600
+
1601
+ Replace the autoreply with the given content and schedule. Omitted
1602
+ optional fields are cleared: omit `starts_at` to activate the
1603
+ autoreply immediately and omit `ends_at` to keep it active
1604
+ indefinitely.
1605
+
1606
+ - **Method**: `PUT`
1607
+ - **Path**: `/api/mail/v1/autoreplies/{autoreplyId}`
1608
+
1609
+ #### mail_deleteAutoreplyV1
1610
+
1611
+ Delete the autoreply of a mailbox. The mailbox stops sending
1612
+ automatic replies immediately.
1613
+
1614
+ - **Method**: `DELETE`
1615
+ - **Path**: `/api/mail/v1/autoreplies/{autoreplyId}`
1616
+
1617
+ #### mail_listAutorepliesV1
1618
+
1619
+ Retrieve a paginated list of autoreplies across all mailboxes of a
1620
+ mail order.
1621
+
1622
+ - **Method**: `GET`
1623
+ - **Path**: `/api/mail/v1/orders/{orderId}/autoreplies`
1624
+
1583
1625
  #### mail_listAccessLogsV1
1584
1626
 
1585
1627
  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.20.1",
3
+ "version": "1.21.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.20.1",
3
+ "version": "1.21.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.20.1",
9
+ "version": "1.21.0",
10
10
  "packages": [
11
11
  {
12
12
  "registryType": "npm",
13
13
  "identifier": "hostinger-api-mcp",
14
- "version": "1.20.1",
14
+ "version": "1.21.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.18.1
32
+ * Generated from OpenAPI spec version 1.19.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.18.1
55
+ * Generated from OpenAPI spec version 1.19.0
56
56
  */
57
57
  class MCPServer {
58
58
  private readonly name: string;
@@ -247,6 +247,32 @@ export default [
247
247
  ],
248
248
  "group": "agency-hosting"
249
249
  },
250
+ {
251
+ "name": "agency-hosting_listAgencyPlanOrdersV1",
252
+ "description": "Returns a paginated list of Agency Plan orders accessible to the authenticated client.",
253
+ "method": "GET",
254
+ "path": "/api/agency-hosting/v1/orders",
255
+ "inputSchema": {
256
+ "type": "object",
257
+ "properties": {
258
+ "page": {
259
+ "type": "integer",
260
+ "description": "Page number"
261
+ },
262
+ "per_page": {
263
+ "type": "integer",
264
+ "description": "Number of items per page"
265
+ }
266
+ },
267
+ "required": []
268
+ },
269
+ "security": [
270
+ {
271
+ "apiToken": []
272
+ }
273
+ ],
274
+ "group": "agency-hosting"
275
+ },
250
276
  {
251
277
  "name": "agency-hosting_provisionANewAgencyPlanWebsiteV1",
252
278
  "description": "Provisions a new website on one of your Agency Plan hosting orders.\n\nChoose the datacenter, stack (`flavor`), and PHP version for the site. Optionally attach\nyour own `domain` — omit it, set it to `null`, or leave it unavailable and a free\n`*.hostingersite.com` subdomain is generated instead — and/or install WordPress by\nsupplying the `wordpress` details (admin account, site title, and language).\n\nCommon setups:\n- **Plain PHP site**: `flavor` set to `php-fpm`, with `settings.php.version`; omit\n `wordpress` and `type`.\n- **WordPress site**: `flavor` set to the desired WordPress version (e.g. `wp-7.0`), plus\n the `wordpress` block (admin account, title, language).\n- **Static/Node.js frontend app**: `flavor` set to `php-fpm` and `type` set to\n `node-static`.\n\nProvisioning runs in the background, so the response returns immediately with a setup UUID\nthat identifies the job. The new website becomes reachable once provisioning finishes.",
@@ -261,6 +261,32 @@ const tools: OpenApiTool[] = [
261
261
  ],
262
262
  "group": "agency-hosting"
263
263
  },
264
+ {
265
+ "name": "agency-hosting_listAgencyPlanOrdersV1",
266
+ "description": "Returns a paginated list of Agency Plan orders accessible to the authenticated client.",
267
+ "method": "GET",
268
+ "path": "/api/agency-hosting/v1/orders",
269
+ "inputSchema": {
270
+ "type": "object",
271
+ "properties": {
272
+ "page": {
273
+ "type": "integer",
274
+ "description": "Page number"
275
+ },
276
+ "per_page": {
277
+ "type": "integer",
278
+ "description": "Number of items per page"
279
+ }
280
+ },
281
+ "required": []
282
+ },
283
+ "security": [
284
+ {
285
+ "apiToken": []
286
+ }
287
+ ],
288
+ "group": "agency-hosting"
289
+ },
264
290
  {
265
291
  "name": "agency-hosting_provisionANewAgencyPlanWebsiteV1",
266
292
  "description": "Provisions a new website on one of your Agency Plan hosting orders.\n\nChoose the datacenter, stack (`flavor`), and PHP version for the site. Optionally attach\nyour own `domain` — omit it, set it to `null`, or leave it unavailable and a free\n`*.hostingersite.com` subdomain is generated instead — and/or install WordPress by\nsupplying the `wordpress` details (admin account, site title, and language).\n\nCommon setups:\n- **Plain PHP site**: `flavor` set to `php-fpm`, with `settings.php.version`; omit\n `wordpress` and `type`.\n- **WordPress site**: `flavor` set to the desired WordPress version (e.g. `wp-7.0`), plus\n the `wordpress` block (admin account, title, language).\n- **Static/Node.js frontend app**: `flavor` set to `php-fpm` and `type` set to\n `node-static`.\n\nProvisioning runs in the background, so the response returns immediately with a setup UUID\nthat identifies the job. The new website becomes reachable once provisioning finishes.",
@@ -504,6 +504,32 @@ export default [
504
504
  ],
505
505
  "group": "agency-hosting"
506
506
  },
507
+ {
508
+ "name": "agency-hosting_listAgencyPlanOrdersV1",
509
+ "description": "Returns a paginated list of Agency Plan orders accessible to the authenticated client.",
510
+ "method": "GET",
511
+ "path": "/api/agency-hosting/v1/orders",
512
+ "inputSchema": {
513
+ "type": "object",
514
+ "properties": {
515
+ "page": {
516
+ "type": "integer",
517
+ "description": "Page number"
518
+ },
519
+ "per_page": {
520
+ "type": "integer",
521
+ "description": "Number of items per page"
522
+ }
523
+ },
524
+ "required": []
525
+ },
526
+ "security": [
527
+ {
528
+ "apiToken": []
529
+ }
530
+ ],
531
+ "group": "agency-hosting"
532
+ },
507
533
  {
508
534
  "name": "agency-hosting_provisionANewAgencyPlanWebsiteV1",
509
535
  "description": "Provisions a new website on one of your Agency Plan hosting orders.\n\nChoose the datacenter, stack (`flavor`), and PHP version for the site. Optionally attach\nyour own `domain` — omit it, set it to `null`, or leave it unavailable and a free\n`*.hostingersite.com` subdomain is generated instead — and/or install WordPress by\nsupplying the `wordpress` details (admin account, site title, and language).\n\nCommon setups:\n- **Plain PHP site**: `flavor` set to `php-fpm`, with `settings.php.version`; omit\n `wordpress` and `type`.\n- **WordPress site**: `flavor` set to the desired WordPress version (e.g. `wp-7.0`), plus\n the `wordpress` block (admin account, title, language).\n- **Static/Node.js frontend app**: `flavor` set to `php-fpm` and `type` set to\n `node-static`.\n\nProvisioning runs in the background, so the response returns immediately with a setup UUID\nthat identifies the job. The new website becomes reachable once provisioning finishes.",
@@ -4352,6 +4378,154 @@ export default [
4352
4378
  ],
4353
4379
  "group": "mail"
4354
4380
  },
4381
+ {
4382
+ "name": "mail_createAutoreplyV1",
4383
+ "description": "Create an automatic reply for the given mailbox. A mailbox can have\nonly one autoreply. Omit `starts_at` to activate the autoreply\nimmediately and omit `ends_at` to keep it active indefinitely.",
4384
+ "method": "POST",
4385
+ "path": "/api/mail/v1/mailboxes/{mailboxId}/autoreplies",
4386
+ "inputSchema": {
4387
+ "type": "object",
4388
+ "properties": {
4389
+ "mailboxId": {
4390
+ "type": "string",
4391
+ "description": "Mailbox resource ID"
4392
+ },
4393
+ "subject": {
4394
+ "type": "string",
4395
+ "description": "Subject of the automatic reply"
4396
+ },
4397
+ "body": {
4398
+ "type": "string",
4399
+ "description": "Body of the automatic reply"
4400
+ },
4401
+ "display_name": {
4402
+ "type": "string",
4403
+ "description": "Sender display name used for the reply"
4404
+ },
4405
+ "starts_at": {
4406
+ "type": "string",
4407
+ "description": "When the autoreply becomes active. Defaults to now."
4408
+ },
4409
+ "ends_at": {
4410
+ "type": "string",
4411
+ "description": "When the autoreply stops. Omit for an indefinite autoreply."
4412
+ }
4413
+ },
4414
+ "required": [
4415
+ "mailboxId",
4416
+ "subject",
4417
+ "body"
4418
+ ]
4419
+ },
4420
+ "security": [
4421
+ {
4422
+ "apiToken": []
4423
+ }
4424
+ ],
4425
+ "group": "mail"
4426
+ },
4427
+ {
4428
+ "name": "mail_updateAutoreplyV1",
4429
+ "description": "Replace the autoreply with the given content and schedule. Omitted\noptional fields are cleared: omit `starts_at` to activate the\nautoreply immediately and omit `ends_at` to keep it active\nindefinitely.",
4430
+ "method": "PUT",
4431
+ "path": "/api/mail/v1/autoreplies/{autoreplyId}",
4432
+ "inputSchema": {
4433
+ "type": "object",
4434
+ "properties": {
4435
+ "autoreplyId": {
4436
+ "type": "string",
4437
+ "description": "Autoreply resource ID"
4438
+ },
4439
+ "subject": {
4440
+ "type": "string",
4441
+ "description": "Subject of the automatic reply"
4442
+ },
4443
+ "body": {
4444
+ "type": "string",
4445
+ "description": "Body of the automatic reply"
4446
+ },
4447
+ "display_name": {
4448
+ "type": "string",
4449
+ "description": "Sender display name used for the reply"
4450
+ },
4451
+ "starts_at": {
4452
+ "type": "string",
4453
+ "description": "When the autoreply becomes active. Defaults to now."
4454
+ },
4455
+ "ends_at": {
4456
+ "type": "string",
4457
+ "description": "When the autoreply stops. Omit for an indefinite autoreply."
4458
+ }
4459
+ },
4460
+ "required": [
4461
+ "autoreplyId",
4462
+ "subject",
4463
+ "body"
4464
+ ]
4465
+ },
4466
+ "security": [
4467
+ {
4468
+ "apiToken": []
4469
+ }
4470
+ ],
4471
+ "group": "mail"
4472
+ },
4473
+ {
4474
+ "name": "mail_deleteAutoreplyV1",
4475
+ "description": "Delete the autoreply of a mailbox. The mailbox stops sending\nautomatic replies immediately.",
4476
+ "method": "DELETE",
4477
+ "path": "/api/mail/v1/autoreplies/{autoreplyId}",
4478
+ "inputSchema": {
4479
+ "type": "object",
4480
+ "properties": {
4481
+ "autoreplyId": {
4482
+ "type": "string",
4483
+ "description": "Autoreply resource ID"
4484
+ }
4485
+ },
4486
+ "required": [
4487
+ "autoreplyId"
4488
+ ]
4489
+ },
4490
+ "security": [
4491
+ {
4492
+ "apiToken": []
4493
+ }
4494
+ ],
4495
+ "group": "mail"
4496
+ },
4497
+ {
4498
+ "name": "mail_listAutorepliesV1",
4499
+ "description": "Retrieve a paginated list of autoreplies across all mailboxes of a\nmail order.",
4500
+ "method": "GET",
4501
+ "path": "/api/mail/v1/orders/{orderId}/autoreplies",
4502
+ "inputSchema": {
4503
+ "type": "object",
4504
+ "properties": {
4505
+ "orderId": {
4506
+ "type": "string",
4507
+ "description": "Order resource ID"
4508
+ },
4509
+ "page": {
4510
+ "type": "integer",
4511
+ "description": "Page number"
4512
+ },
4513
+ "per_page": {
4514
+ "type": "integer",
4515
+ "description": "Number of items per page"
4516
+ }
4517
+ },
4518
+ "required": [
4519
+ "orderId"
4520
+ ]
4521
+ },
4522
+ "security": [
4523
+ {
4524
+ "apiToken": []
4525
+ }
4526
+ ],
4527
+ "group": "mail"
4528
+ },
4355
4529
  {
4356
4530
  "name": "mail_listAccessLogsV1",
4357
4531
  "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.",
@@ -518,6 +518,32 @@ const tools: OpenApiTool[] = [
518
518
  ],
519
519
  "group": "agency-hosting"
520
520
  },
521
+ {
522
+ "name": "agency-hosting_listAgencyPlanOrdersV1",
523
+ "description": "Returns a paginated list of Agency Plan orders accessible to the authenticated client.",
524
+ "method": "GET",
525
+ "path": "/api/agency-hosting/v1/orders",
526
+ "inputSchema": {
527
+ "type": "object",
528
+ "properties": {
529
+ "page": {
530
+ "type": "integer",
531
+ "description": "Page number"
532
+ },
533
+ "per_page": {
534
+ "type": "integer",
535
+ "description": "Number of items per page"
536
+ }
537
+ },
538
+ "required": []
539
+ },
540
+ "security": [
541
+ {
542
+ "apiToken": []
543
+ }
544
+ ],
545
+ "group": "agency-hosting"
546
+ },
521
547
  {
522
548
  "name": "agency-hosting_provisionANewAgencyPlanWebsiteV1",
523
549
  "description": "Provisions a new website on one of your Agency Plan hosting orders.\n\nChoose the datacenter, stack (`flavor`), and PHP version for the site. Optionally attach\nyour own `domain` — omit it, set it to `null`, or leave it unavailable and a free\n`*.hostingersite.com` subdomain is generated instead — and/or install WordPress by\nsupplying the `wordpress` details (admin account, site title, and language).\n\nCommon setups:\n- **Plain PHP site**: `flavor` set to `php-fpm`, with `settings.php.version`; omit\n `wordpress` and `type`.\n- **WordPress site**: `flavor` set to the desired WordPress version (e.g. `wp-7.0`), plus\n the `wordpress` block (admin account, title, language).\n- **Static/Node.js frontend app**: `flavor` set to `php-fpm` and `type` set to\n `node-static`.\n\nProvisioning runs in the background, so the response returns immediately with a setup UUID\nthat identifies the job. The new website becomes reachable once provisioning finishes.",
@@ -4366,6 +4392,154 @@ const tools: OpenApiTool[] = [
4366
4392
  ],
4367
4393
  "group": "mail"
4368
4394
  },
4395
+ {
4396
+ "name": "mail_createAutoreplyV1",
4397
+ "description": "Create an automatic reply for the given mailbox. A mailbox can have\nonly one autoreply. Omit `starts_at` to activate the autoreply\nimmediately and omit `ends_at` to keep it active indefinitely.",
4398
+ "method": "POST",
4399
+ "path": "/api/mail/v1/mailboxes/{mailboxId}/autoreplies",
4400
+ "inputSchema": {
4401
+ "type": "object",
4402
+ "properties": {
4403
+ "mailboxId": {
4404
+ "type": "string",
4405
+ "description": "Mailbox resource ID"
4406
+ },
4407
+ "subject": {
4408
+ "type": "string",
4409
+ "description": "Subject of the automatic reply"
4410
+ },
4411
+ "body": {
4412
+ "type": "string",
4413
+ "description": "Body of the automatic reply"
4414
+ },
4415
+ "display_name": {
4416
+ "type": "string",
4417
+ "description": "Sender display name used for the reply"
4418
+ },
4419
+ "starts_at": {
4420
+ "type": "string",
4421
+ "description": "When the autoreply becomes active. Defaults to now."
4422
+ },
4423
+ "ends_at": {
4424
+ "type": "string",
4425
+ "description": "When the autoreply stops. Omit for an indefinite autoreply."
4426
+ }
4427
+ },
4428
+ "required": [
4429
+ "mailboxId",
4430
+ "subject",
4431
+ "body"
4432
+ ]
4433
+ },
4434
+ "security": [
4435
+ {
4436
+ "apiToken": []
4437
+ }
4438
+ ],
4439
+ "group": "mail"
4440
+ },
4441
+ {
4442
+ "name": "mail_updateAutoreplyV1",
4443
+ "description": "Replace the autoreply with the given content and schedule. Omitted\noptional fields are cleared: omit `starts_at` to activate the\nautoreply immediately and omit `ends_at` to keep it active\nindefinitely.",
4444
+ "method": "PUT",
4445
+ "path": "/api/mail/v1/autoreplies/{autoreplyId}",
4446
+ "inputSchema": {
4447
+ "type": "object",
4448
+ "properties": {
4449
+ "autoreplyId": {
4450
+ "type": "string",
4451
+ "description": "Autoreply resource ID"
4452
+ },
4453
+ "subject": {
4454
+ "type": "string",
4455
+ "description": "Subject of the automatic reply"
4456
+ },
4457
+ "body": {
4458
+ "type": "string",
4459
+ "description": "Body of the automatic reply"
4460
+ },
4461
+ "display_name": {
4462
+ "type": "string",
4463
+ "description": "Sender display name used for the reply"
4464
+ },
4465
+ "starts_at": {
4466
+ "type": "string",
4467
+ "description": "When the autoreply becomes active. Defaults to now."
4468
+ },
4469
+ "ends_at": {
4470
+ "type": "string",
4471
+ "description": "When the autoreply stops. Omit for an indefinite autoreply."
4472
+ }
4473
+ },
4474
+ "required": [
4475
+ "autoreplyId",
4476
+ "subject",
4477
+ "body"
4478
+ ]
4479
+ },
4480
+ "security": [
4481
+ {
4482
+ "apiToken": []
4483
+ }
4484
+ ],
4485
+ "group": "mail"
4486
+ },
4487
+ {
4488
+ "name": "mail_deleteAutoreplyV1",
4489
+ "description": "Delete the autoreply of a mailbox. The mailbox stops sending\nautomatic replies immediately.",
4490
+ "method": "DELETE",
4491
+ "path": "/api/mail/v1/autoreplies/{autoreplyId}",
4492
+ "inputSchema": {
4493
+ "type": "object",
4494
+ "properties": {
4495
+ "autoreplyId": {
4496
+ "type": "string",
4497
+ "description": "Autoreply resource ID"
4498
+ }
4499
+ },
4500
+ "required": [
4501
+ "autoreplyId"
4502
+ ]
4503
+ },
4504
+ "security": [
4505
+ {
4506
+ "apiToken": []
4507
+ }
4508
+ ],
4509
+ "group": "mail"
4510
+ },
4511
+ {
4512
+ "name": "mail_listAutorepliesV1",
4513
+ "description": "Retrieve a paginated list of autoreplies across all mailboxes of a\nmail order.",
4514
+ "method": "GET",
4515
+ "path": "/api/mail/v1/orders/{orderId}/autoreplies",
4516
+ "inputSchema": {
4517
+ "type": "object",
4518
+ "properties": {
4519
+ "orderId": {
4520
+ "type": "string",
4521
+ "description": "Order resource ID"
4522
+ },
4523
+ "page": {
4524
+ "type": "integer",
4525
+ "description": "Page number"
4526
+ },
4527
+ "per_page": {
4528
+ "type": "integer",
4529
+ "description": "Number of items per page"
4530
+ }
4531
+ },
4532
+ "required": [
4533
+ "orderId"
4534
+ ]
4535
+ },
4536
+ "security": [
4537
+ {
4538
+ "apiToken": []
4539
+ }
4540
+ ],
4541
+ "group": "mail"
4542
+ },
4369
4543
  {
4370
4544
  "name": "mail_listAccessLogsV1",
4371
4545
  "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.",
@@ -105,6 +105,154 @@ export default [
105
105
  ],
106
106
  "group": "mail"
107
107
  },
108
+ {
109
+ "name": "mail_createAutoreplyV1",
110
+ "description": "Create an automatic reply for the given mailbox. A mailbox can have\nonly one autoreply. Omit `starts_at` to activate the autoreply\nimmediately and omit `ends_at` to keep it active indefinitely.",
111
+ "method": "POST",
112
+ "path": "/api/mail/v1/mailboxes/{mailboxId}/autoreplies",
113
+ "inputSchema": {
114
+ "type": "object",
115
+ "properties": {
116
+ "mailboxId": {
117
+ "type": "string",
118
+ "description": "Mailbox resource ID"
119
+ },
120
+ "subject": {
121
+ "type": "string",
122
+ "description": "Subject of the automatic reply"
123
+ },
124
+ "body": {
125
+ "type": "string",
126
+ "description": "Body of the automatic reply"
127
+ },
128
+ "display_name": {
129
+ "type": "string",
130
+ "description": "Sender display name used for the reply"
131
+ },
132
+ "starts_at": {
133
+ "type": "string",
134
+ "description": "When the autoreply becomes active. Defaults to now."
135
+ },
136
+ "ends_at": {
137
+ "type": "string",
138
+ "description": "When the autoreply stops. Omit for an indefinite autoreply."
139
+ }
140
+ },
141
+ "required": [
142
+ "mailboxId",
143
+ "subject",
144
+ "body"
145
+ ]
146
+ },
147
+ "security": [
148
+ {
149
+ "apiToken": []
150
+ }
151
+ ],
152
+ "group": "mail"
153
+ },
154
+ {
155
+ "name": "mail_updateAutoreplyV1",
156
+ "description": "Replace the autoreply with the given content and schedule. Omitted\noptional fields are cleared: omit `starts_at` to activate the\nautoreply immediately and omit `ends_at` to keep it active\nindefinitely.",
157
+ "method": "PUT",
158
+ "path": "/api/mail/v1/autoreplies/{autoreplyId}",
159
+ "inputSchema": {
160
+ "type": "object",
161
+ "properties": {
162
+ "autoreplyId": {
163
+ "type": "string",
164
+ "description": "Autoreply resource ID"
165
+ },
166
+ "subject": {
167
+ "type": "string",
168
+ "description": "Subject of the automatic reply"
169
+ },
170
+ "body": {
171
+ "type": "string",
172
+ "description": "Body of the automatic reply"
173
+ },
174
+ "display_name": {
175
+ "type": "string",
176
+ "description": "Sender display name used for the reply"
177
+ },
178
+ "starts_at": {
179
+ "type": "string",
180
+ "description": "When the autoreply becomes active. Defaults to now."
181
+ },
182
+ "ends_at": {
183
+ "type": "string",
184
+ "description": "When the autoreply stops. Omit for an indefinite autoreply."
185
+ }
186
+ },
187
+ "required": [
188
+ "autoreplyId",
189
+ "subject",
190
+ "body"
191
+ ]
192
+ },
193
+ "security": [
194
+ {
195
+ "apiToken": []
196
+ }
197
+ ],
198
+ "group": "mail"
199
+ },
200
+ {
201
+ "name": "mail_deleteAutoreplyV1",
202
+ "description": "Delete the autoreply of a mailbox. The mailbox stops sending\nautomatic replies immediately.",
203
+ "method": "DELETE",
204
+ "path": "/api/mail/v1/autoreplies/{autoreplyId}",
205
+ "inputSchema": {
206
+ "type": "object",
207
+ "properties": {
208
+ "autoreplyId": {
209
+ "type": "string",
210
+ "description": "Autoreply resource ID"
211
+ }
212
+ },
213
+ "required": [
214
+ "autoreplyId"
215
+ ]
216
+ },
217
+ "security": [
218
+ {
219
+ "apiToken": []
220
+ }
221
+ ],
222
+ "group": "mail"
223
+ },
224
+ {
225
+ "name": "mail_listAutorepliesV1",
226
+ "description": "Retrieve a paginated list of autoreplies across all mailboxes of a\nmail order.",
227
+ "method": "GET",
228
+ "path": "/api/mail/v1/orders/{orderId}/autoreplies",
229
+ "inputSchema": {
230
+ "type": "object",
231
+ "properties": {
232
+ "orderId": {
233
+ "type": "string",
234
+ "description": "Order resource ID"
235
+ },
236
+ "page": {
237
+ "type": "integer",
238
+ "description": "Page number"
239
+ },
240
+ "per_page": {
241
+ "type": "integer",
242
+ "description": "Number of items per page"
243
+ }
244
+ },
245
+ "required": [
246
+ "orderId"
247
+ ]
248
+ },
249
+ "security": [
250
+ {
251
+ "apiToken": []
252
+ }
253
+ ],
254
+ "group": "mail"
255
+ },
108
256
  {
109
257
  "name": "mail_listAccessLogsV1",
110
258
  "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.",
@@ -119,6 +119,154 @@ const tools: OpenApiTool[] = [
119
119
  ],
120
120
  "group": "mail"
121
121
  },
122
+ {
123
+ "name": "mail_createAutoreplyV1",
124
+ "description": "Create an automatic reply for the given mailbox. A mailbox can have\nonly one autoreply. Omit `starts_at` to activate the autoreply\nimmediately and omit `ends_at` to keep it active indefinitely.",
125
+ "method": "POST",
126
+ "path": "/api/mail/v1/mailboxes/{mailboxId}/autoreplies",
127
+ "inputSchema": {
128
+ "type": "object",
129
+ "properties": {
130
+ "mailboxId": {
131
+ "type": "string",
132
+ "description": "Mailbox resource ID"
133
+ },
134
+ "subject": {
135
+ "type": "string",
136
+ "description": "Subject of the automatic reply"
137
+ },
138
+ "body": {
139
+ "type": "string",
140
+ "description": "Body of the automatic reply"
141
+ },
142
+ "display_name": {
143
+ "type": "string",
144
+ "description": "Sender display name used for the reply"
145
+ },
146
+ "starts_at": {
147
+ "type": "string",
148
+ "description": "When the autoreply becomes active. Defaults to now."
149
+ },
150
+ "ends_at": {
151
+ "type": "string",
152
+ "description": "When the autoreply stops. Omit for an indefinite autoreply."
153
+ }
154
+ },
155
+ "required": [
156
+ "mailboxId",
157
+ "subject",
158
+ "body"
159
+ ]
160
+ },
161
+ "security": [
162
+ {
163
+ "apiToken": []
164
+ }
165
+ ],
166
+ "group": "mail"
167
+ },
168
+ {
169
+ "name": "mail_updateAutoreplyV1",
170
+ "description": "Replace the autoreply with the given content and schedule. Omitted\noptional fields are cleared: omit `starts_at` to activate the\nautoreply immediately and omit `ends_at` to keep it active\nindefinitely.",
171
+ "method": "PUT",
172
+ "path": "/api/mail/v1/autoreplies/{autoreplyId}",
173
+ "inputSchema": {
174
+ "type": "object",
175
+ "properties": {
176
+ "autoreplyId": {
177
+ "type": "string",
178
+ "description": "Autoreply resource ID"
179
+ },
180
+ "subject": {
181
+ "type": "string",
182
+ "description": "Subject of the automatic reply"
183
+ },
184
+ "body": {
185
+ "type": "string",
186
+ "description": "Body of the automatic reply"
187
+ },
188
+ "display_name": {
189
+ "type": "string",
190
+ "description": "Sender display name used for the reply"
191
+ },
192
+ "starts_at": {
193
+ "type": "string",
194
+ "description": "When the autoreply becomes active. Defaults to now."
195
+ },
196
+ "ends_at": {
197
+ "type": "string",
198
+ "description": "When the autoreply stops. Omit for an indefinite autoreply."
199
+ }
200
+ },
201
+ "required": [
202
+ "autoreplyId",
203
+ "subject",
204
+ "body"
205
+ ]
206
+ },
207
+ "security": [
208
+ {
209
+ "apiToken": []
210
+ }
211
+ ],
212
+ "group": "mail"
213
+ },
214
+ {
215
+ "name": "mail_deleteAutoreplyV1",
216
+ "description": "Delete the autoreply of a mailbox. The mailbox stops sending\nautomatic replies immediately.",
217
+ "method": "DELETE",
218
+ "path": "/api/mail/v1/autoreplies/{autoreplyId}",
219
+ "inputSchema": {
220
+ "type": "object",
221
+ "properties": {
222
+ "autoreplyId": {
223
+ "type": "string",
224
+ "description": "Autoreply resource ID"
225
+ }
226
+ },
227
+ "required": [
228
+ "autoreplyId"
229
+ ]
230
+ },
231
+ "security": [
232
+ {
233
+ "apiToken": []
234
+ }
235
+ ],
236
+ "group": "mail"
237
+ },
238
+ {
239
+ "name": "mail_listAutorepliesV1",
240
+ "description": "Retrieve a paginated list of autoreplies across all mailboxes of a\nmail order.",
241
+ "method": "GET",
242
+ "path": "/api/mail/v1/orders/{orderId}/autoreplies",
243
+ "inputSchema": {
244
+ "type": "object",
245
+ "properties": {
246
+ "orderId": {
247
+ "type": "string",
248
+ "description": "Order resource ID"
249
+ },
250
+ "page": {
251
+ "type": "integer",
252
+ "description": "Page number"
253
+ },
254
+ "per_page": {
255
+ "type": "integer",
256
+ "description": "Number of items per page"
257
+ }
258
+ },
259
+ "required": [
260
+ "orderId"
261
+ ]
262
+ },
263
+ "security": [
264
+ {
265
+ "apiToken": []
266
+ }
267
+ ],
268
+ "group": "mail"
269
+ },
122
270
  {
123
271
  "name": "mail_listAccessLogsV1",
124
272
  "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.20.1', tools });
6
+ startServer({ name: 'hostinger-agency-hosting-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-agency-hosting-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-api-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-api-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-billing-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-billing-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-dns-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-dns-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-domains-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-domains-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-ecommerce-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-ecommerce-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-horizons-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-horizons-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-hosting-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-hosting-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-mail-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-mail-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-reach-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-reach-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-vps-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-vps-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-wordpress-mcp', version: '1.21.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.20.1', tools });
6
+ startServer({ name: 'hostinger-wordpress-mcp', version: '1.21.0', tools });
package/types.d.ts CHANGED
@@ -327,6 +327,23 @@ archive types: .zip, .tar, .tar.gz, .tgz.
327
327
  response: any; // Response structure will depend on the API
328
328
  };
329
329
 
330
+ /**
331
+ * Returns a paginated list of Agency Plan orders accessible to the authenticated client.
332
+ */
333
+ "agency-hosting_listAgencyPlanOrdersV1": {
334
+ params: {
335
+ /**
336
+ * Page number
337
+ */
338
+ page?: number;
339
+ /**
340
+ * Number of items per page
341
+ */
342
+ per_page?: number;
343
+ };
344
+ response: any; // Response structure will depend on the API
345
+ };
346
+
330
347
  /**
331
348
  * Provisions a new website on one of your Agency Plan hosting orders.
332
349
 
@@ -2908,6 +2925,113 @@ are never included; they are returned only when a token is created.
2908
2925
  response: any; // Response structure will depend on the API
2909
2926
  };
2910
2927
 
2928
+ /**
2929
+ * Create an automatic reply for the given mailbox. A mailbox can have
2930
+ only one autoreply. Omit `starts_at` to activate the autoreply
2931
+ immediately and omit `ends_at` to keep it active indefinitely.
2932
+ */
2933
+ "mail_createAutoreplyV1": {
2934
+ params: {
2935
+ /**
2936
+ * Mailbox resource ID
2937
+ */
2938
+ mailboxId: string;
2939
+ /**
2940
+ * Subject of the automatic reply
2941
+ */
2942
+ subject: string;
2943
+ /**
2944
+ * Body of the automatic reply
2945
+ */
2946
+ body: string;
2947
+ /**
2948
+ * Sender display name used for the reply
2949
+ */
2950
+ display_name?: string;
2951
+ /**
2952
+ * When the autoreply becomes active. Defaults to now.
2953
+ */
2954
+ starts_at?: string;
2955
+ /**
2956
+ * When the autoreply stops. Omit for an indefinite autoreply.
2957
+ */
2958
+ ends_at?: string;
2959
+ };
2960
+ response: any; // Response structure will depend on the API
2961
+ };
2962
+
2963
+ /**
2964
+ * Replace the autoreply with the given content and schedule. Omitted
2965
+ optional fields are cleared: omit `starts_at` to activate the
2966
+ autoreply immediately and omit `ends_at` to keep it active
2967
+ indefinitely.
2968
+ */
2969
+ "mail_updateAutoreplyV1": {
2970
+ params: {
2971
+ /**
2972
+ * Autoreply resource ID
2973
+ */
2974
+ autoreplyId: string;
2975
+ /**
2976
+ * Subject of the automatic reply
2977
+ */
2978
+ subject: string;
2979
+ /**
2980
+ * Body of the automatic reply
2981
+ */
2982
+ body: string;
2983
+ /**
2984
+ * Sender display name used for the reply
2985
+ */
2986
+ display_name?: string;
2987
+ /**
2988
+ * When the autoreply becomes active. Defaults to now.
2989
+ */
2990
+ starts_at?: string;
2991
+ /**
2992
+ * When the autoreply stops. Omit for an indefinite autoreply.
2993
+ */
2994
+ ends_at?: string;
2995
+ };
2996
+ response: any; // Response structure will depend on the API
2997
+ };
2998
+
2999
+ /**
3000
+ * Delete the autoreply of a mailbox. The mailbox stops sending
3001
+ automatic replies immediately.
3002
+ */
3003
+ "mail_deleteAutoreplyV1": {
3004
+ params: {
3005
+ /**
3006
+ * Autoreply resource ID
3007
+ */
3008
+ autoreplyId: string;
3009
+ };
3010
+ response: any; // Response structure will depend on the API
3011
+ };
3012
+
3013
+ /**
3014
+ * Retrieve a paginated list of autoreplies across all mailboxes of a
3015
+ mail order.
3016
+ */
3017
+ "mail_listAutorepliesV1": {
3018
+ params: {
3019
+ /**
3020
+ * Order resource ID
3021
+ */
3022
+ orderId: string;
3023
+ /**
3024
+ * Page number
3025
+ */
3026
+ page?: number;
3027
+ /**
3028
+ * Number of items per page
3029
+ */
3030
+ per_page?: number;
3031
+ };
3032
+ response: any; // Response structure will depend on the API
3033
+ };
3034
+
2911
3035
  /**
2912
3036
  * Retrieve paginated access logs for the domain attached to the given
2913
3037
  mail order. Supports filtering by account, date range, protocol,