hostinger-api-mcp 0.2.3 → 0.2.4

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,11 +49,11 @@ 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 (121 total)
52
+ - `hostinger-api-mcp` — unified server with every tool (127 total)
53
53
  - `hostinger-billing-mcp` — 7 tools for billing
54
54
  - `hostinger-dns-mcp` — 8 tools for dns
55
55
  - `hostinger-domains-mcp` — 18 tools for domains
56
- - `hostinger-hosting-mcp` — 16 tools for hosting
56
+ - `hostinger-hosting-mcp` — 22 tools for hosting
57
57
  - `hostinger-reach-mcp` — 10 tools for reach
58
58
  - `hostinger-vps-mcp` — 62 tools for vps
59
59
 
@@ -593,6 +593,33 @@ Retrieve logs for a specified JavaScript application deployment for debugging pu
593
593
  - **Method**: `custom`
594
594
  - **Path**: `custom`
595
595
 
596
+ #### hosting_listAccountDatabasesV1
597
+
598
+ Returns a paginated list of databases for the specified account.
599
+
600
+ Use the domain and is_assigned filters to find databases assigned to a specific domain.
601
+
602
+ - **Method**: `GET`
603
+ - **Path**: `/api/hosting/v1/accounts/{username}/databases`
604
+
605
+ #### hosting_createAccountDatabaseV1
606
+
607
+ Creates a database with a database user and password for the specified account.
608
+
609
+ The database name and user are automatically prefixed with the account username when needed.
610
+
611
+ - **Method**: `POST`
612
+ - **Path**: `/api/hosting/v1/accounts/{username}/databases`
613
+
614
+ #### hosting_deleteAccountDatabaseV1
615
+
616
+ Permanently deletes a database and its remote connections.
617
+
618
+ The database name must be the full name returned by the list databases endpoint.
619
+
620
+ - **Method**: `DELETE`
621
+ - **Path**: `/api/hosting/v1/accounts/{username}/databases/{name}`
622
+
596
623
  #### hosting_listAvailableDatacentersV1
597
624
 
598
625
  Retrieve a list of datacenters available for setting up hosting plans
@@ -612,6 +639,35 @@ and you can always connect a custom domain to your site later.
612
639
  - **Method**: `POST`
613
640
  - **Path**: `/api/hosting/v1/domains/free-subdomains`
614
641
 
642
+ #### hosting_listWebsiteParkedDomainsV1
643
+
644
+ Retrieve all parked or alias domains created under the selected website.
645
+
646
+ Use this endpoint to inspect parked domain configuration for a specific website,
647
+ including the parent domain and root directory assigned to each parked domain.
648
+
649
+ - **Method**: `GET`
650
+ - **Path**: `/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains`
651
+
652
+ #### hosting_createWebsiteParkedDomainV1
653
+
654
+ Create a parked or alias domain for the selected website.
655
+
656
+ Provide a domain name or IP address to park on the website so it serves the same content
657
+ as the parent domain.
658
+
659
+ - **Method**: `POST`
660
+ - **Path**: `/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains`
661
+
662
+ #### hosting_deleteWebsiteParkedDomainV1
663
+
664
+ Delete an existing parked or alias domain from the selected website.
665
+
666
+ Use this endpoint to remove parked domains that are no longer needed.
667
+
668
+ - **Method**: `DELETE`
669
+ - **Path**: `/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains/{parkedDomain}`
670
+
615
671
  #### hosting_listWebsiteSubdomainsV1
616
672
 
617
673
  Retrieve all subdomains created under the selected website.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hostinger-api-mcp",
3
- "version": "0.2.3",
3
+ "version": "0.2.4",
4
4
  "description": "MCP server for Hostinger API",
5
5
  "repository": {
6
6
  "type": "git",
@@ -29,7 +29,7 @@ const SECURITY_SCHEMES = {
29
29
 
30
30
  /**
31
31
  * MCP Server for Hostinger API
32
- * Generated from OpenAPI spec version 0.14.0
32
+ * Generated from OpenAPI spec version 0.16.1
33
33
  */
34
34
  class MCPServer {
35
35
  constructor({ name, version, tools }) {
@@ -47,7 +47,7 @@ const SECURITY_SCHEMES: Record<string, SecurityScheme> = {
47
47
 
48
48
  /**
49
49
  * MCP Server for Hostinger API
50
- * Generated from OpenAPI spec version 0.14.0
50
+ * Generated from OpenAPI spec version 0.16.1
51
51
  */
52
52
  class MCPServer {
53
53
  private readonly name: string;
@@ -1287,6 +1287,123 @@ export default [
1287
1287
  ],
1288
1288
  "group": "domains"
1289
1289
  },
1290
+ {
1291
+ "name": "hosting_listAccountDatabasesV1",
1292
+ "description": "Returns a paginated list of databases for the specified account.\n\nUse the domain and is_assigned filters to find databases assigned to a specific domain.",
1293
+ "method": "GET",
1294
+ "path": "/api/hosting/v1/accounts/{username}/databases",
1295
+ "inputSchema": {
1296
+ "type": "object",
1297
+ "properties": {
1298
+ "username": {
1299
+ "type": "string",
1300
+ "description": "username parameter"
1301
+ },
1302
+ "page": {
1303
+ "type": "integer",
1304
+ "description": "Page number"
1305
+ },
1306
+ "per_page": {
1307
+ "type": "integer",
1308
+ "description": "Number of items per page"
1309
+ },
1310
+ "domain": {
1311
+ "type": "string",
1312
+ "description": "Filter by domain name (exact match)"
1313
+ },
1314
+ "is_assigned": {
1315
+ "type": "boolean",
1316
+ "description": "When used with domain, return only databases assigned to that domain."
1317
+ },
1318
+ "search": {
1319
+ "type": "string",
1320
+ "description": "Search databases by name, user, or creation date."
1321
+ }
1322
+ },
1323
+ "required": [
1324
+ "username"
1325
+ ]
1326
+ },
1327
+ "security": [
1328
+ {
1329
+ "apiToken": []
1330
+ }
1331
+ ],
1332
+ "group": "hosting"
1333
+ },
1334
+ {
1335
+ "name": "hosting_createAccountDatabaseV1",
1336
+ "description": "Creates a database with a database user and password for the specified account.\n\nThe database name and user are automatically prefixed with the account username when needed.",
1337
+ "method": "POST",
1338
+ "path": "/api/hosting/v1/accounts/{username}/databases",
1339
+ "inputSchema": {
1340
+ "type": "object",
1341
+ "properties": {
1342
+ "username": {
1343
+ "type": "string",
1344
+ "description": "username parameter"
1345
+ },
1346
+ "name": {
1347
+ "type": "string",
1348
+ "description": "Database name. If the account username prefix is omitted, it is added automatically."
1349
+ },
1350
+ "user": {
1351
+ "type": "string",
1352
+ "description": "Database user. If the account username prefix is omitted, it is added automatically."
1353
+ },
1354
+ "password": {
1355
+ "type": "string",
1356
+ "description": "Database user password."
1357
+ },
1358
+ "website_domain": {
1359
+ "type": "string",
1360
+ "description": "Website domain assigned to the database."
1361
+ }
1362
+ },
1363
+ "required": [
1364
+ "username",
1365
+ "name",
1366
+ "user",
1367
+ "password",
1368
+ "website_domain"
1369
+ ]
1370
+ },
1371
+ "security": [
1372
+ {
1373
+ "apiToken": []
1374
+ }
1375
+ ],
1376
+ "group": "hosting"
1377
+ },
1378
+ {
1379
+ "name": "hosting_deleteAccountDatabaseV1",
1380
+ "description": "Permanently deletes a database and its remote connections.\n\nThe database name must be the full name returned by the list databases endpoint.",
1381
+ "method": "DELETE",
1382
+ "path": "/api/hosting/v1/accounts/{username}/databases/{name}",
1383
+ "inputSchema": {
1384
+ "type": "object",
1385
+ "properties": {
1386
+ "username": {
1387
+ "type": "string",
1388
+ "description": "username parameter"
1389
+ },
1390
+ "name": {
1391
+ "type": "string",
1392
+ "description": "Full database name as returned by the list databases endpoint."
1393
+ }
1394
+ },
1395
+ "required": [
1396
+ "username",
1397
+ "name"
1398
+ ]
1399
+ },
1400
+ "security": [
1401
+ {
1402
+ "apiToken": []
1403
+ }
1404
+ ],
1405
+ "group": "hosting"
1406
+ },
1290
1407
  {
1291
1408
  "name": "hosting_listAvailableDatacentersV1",
1292
1409
  "description": "Retrieve a list of datacenters available for setting up hosting plans\nbased on available datacenter capacity and hosting plan of your order.\nThe first item in the list is the best match for your specific order\nrequirements.",
@@ -1328,6 +1445,103 @@ export default [
1328
1445
  ],
1329
1446
  "group": "hosting"
1330
1447
  },
1448
+ {
1449
+ "name": "hosting_listWebsiteParkedDomainsV1",
1450
+ "description": "Retrieve all parked or alias domains created under the selected website.\n\nUse this endpoint to inspect parked domain configuration for a specific website,\nincluding the parent domain and root directory assigned to each parked domain.",
1451
+ "method": "GET",
1452
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains",
1453
+ "inputSchema": {
1454
+ "type": "object",
1455
+ "properties": {
1456
+ "username": {
1457
+ "type": "string",
1458
+ "description": "username parameter"
1459
+ },
1460
+ "domain": {
1461
+ "type": "string",
1462
+ "description": "Domain name"
1463
+ }
1464
+ },
1465
+ "required": [
1466
+ "username",
1467
+ "domain"
1468
+ ]
1469
+ },
1470
+ "security": [
1471
+ {
1472
+ "apiToken": []
1473
+ }
1474
+ ],
1475
+ "group": "hosting"
1476
+ },
1477
+ {
1478
+ "name": "hosting_createWebsiteParkedDomainV1",
1479
+ "description": "Create a parked or alias domain for the selected website.\n\nProvide a domain name or IP address to park on the website so it serves the same content\nas the parent domain.",
1480
+ "method": "POST",
1481
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains",
1482
+ "inputSchema": {
1483
+ "type": "object",
1484
+ "properties": {
1485
+ "username": {
1486
+ "type": "string",
1487
+ "description": "username parameter"
1488
+ },
1489
+ "domain": {
1490
+ "type": "string",
1491
+ "description": "Domain name"
1492
+ },
1493
+ "parked_domain": {
1494
+ "type": "string",
1495
+ "description": "Domain name or IP address to park on the selected website"
1496
+ }
1497
+ },
1498
+ "required": [
1499
+ "username",
1500
+ "domain",
1501
+ "parked_domain"
1502
+ ]
1503
+ },
1504
+ "security": [
1505
+ {
1506
+ "apiToken": []
1507
+ }
1508
+ ],
1509
+ "group": "hosting"
1510
+ },
1511
+ {
1512
+ "name": "hosting_deleteWebsiteParkedDomainV1",
1513
+ "description": "Delete an existing parked or alias domain from the selected website.\n\nUse this endpoint to remove parked domains that are no longer needed.",
1514
+ "method": "DELETE",
1515
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains/{parkedDomain}",
1516
+ "inputSchema": {
1517
+ "type": "object",
1518
+ "properties": {
1519
+ "username": {
1520
+ "type": "string",
1521
+ "description": "username parameter"
1522
+ },
1523
+ "domain": {
1524
+ "type": "string",
1525
+ "description": "Domain name"
1526
+ },
1527
+ "parkedDomain": {
1528
+ "type": "string",
1529
+ "description": "parkedDomain parameter"
1530
+ }
1531
+ },
1532
+ "required": [
1533
+ "username",
1534
+ "domain",
1535
+ "parkedDomain"
1536
+ ]
1537
+ },
1538
+ "security": [
1539
+ {
1540
+ "apiToken": []
1541
+ }
1542
+ ],
1543
+ "group": "hosting"
1544
+ },
1331
1545
  {
1332
1546
  "name": "hosting_listWebsiteSubdomainsV1",
1333
1547
  "description": "Retrieve all subdomains created under the selected website.\n\nUse this endpoint to inspect subdomain configuration for a specific website,\nincluding the parent domain and root directory assigned to each subdomain.",
@@ -1297,6 +1297,123 @@ const tools: OpenApiTool[] = [
1297
1297
  ],
1298
1298
  "group": "domains"
1299
1299
  },
1300
+ {
1301
+ "name": "hosting_listAccountDatabasesV1",
1302
+ "description": "Returns a paginated list of databases for the specified account.\n\nUse the domain and is_assigned filters to find databases assigned to a specific domain.",
1303
+ "method": "GET",
1304
+ "path": "/api/hosting/v1/accounts/{username}/databases",
1305
+ "inputSchema": {
1306
+ "type": "object",
1307
+ "properties": {
1308
+ "username": {
1309
+ "type": "string",
1310
+ "description": "username parameter"
1311
+ },
1312
+ "page": {
1313
+ "type": "integer",
1314
+ "description": "Page number"
1315
+ },
1316
+ "per_page": {
1317
+ "type": "integer",
1318
+ "description": "Number of items per page"
1319
+ },
1320
+ "domain": {
1321
+ "type": "string",
1322
+ "description": "Filter by domain name (exact match)"
1323
+ },
1324
+ "is_assigned": {
1325
+ "type": "boolean",
1326
+ "description": "When used with domain, return only databases assigned to that domain."
1327
+ },
1328
+ "search": {
1329
+ "type": "string",
1330
+ "description": "Search databases by name, user, or creation date."
1331
+ }
1332
+ },
1333
+ "required": [
1334
+ "username"
1335
+ ]
1336
+ },
1337
+ "security": [
1338
+ {
1339
+ "apiToken": []
1340
+ }
1341
+ ],
1342
+ "group": "hosting"
1343
+ },
1344
+ {
1345
+ "name": "hosting_createAccountDatabaseV1",
1346
+ "description": "Creates a database with a database user and password for the specified account.\n\nThe database name and user are automatically prefixed with the account username when needed.",
1347
+ "method": "POST",
1348
+ "path": "/api/hosting/v1/accounts/{username}/databases",
1349
+ "inputSchema": {
1350
+ "type": "object",
1351
+ "properties": {
1352
+ "username": {
1353
+ "type": "string",
1354
+ "description": "username parameter"
1355
+ },
1356
+ "name": {
1357
+ "type": "string",
1358
+ "description": "Database name. If the account username prefix is omitted, it is added automatically."
1359
+ },
1360
+ "user": {
1361
+ "type": "string",
1362
+ "description": "Database user. If the account username prefix is omitted, it is added automatically."
1363
+ },
1364
+ "password": {
1365
+ "type": "string",
1366
+ "description": "Database user password."
1367
+ },
1368
+ "website_domain": {
1369
+ "type": "string",
1370
+ "description": "Website domain assigned to the database."
1371
+ }
1372
+ },
1373
+ "required": [
1374
+ "username",
1375
+ "name",
1376
+ "user",
1377
+ "password",
1378
+ "website_domain"
1379
+ ]
1380
+ },
1381
+ "security": [
1382
+ {
1383
+ "apiToken": []
1384
+ }
1385
+ ],
1386
+ "group": "hosting"
1387
+ },
1388
+ {
1389
+ "name": "hosting_deleteAccountDatabaseV1",
1390
+ "description": "Permanently deletes a database and its remote connections.\n\nThe database name must be the full name returned by the list databases endpoint.",
1391
+ "method": "DELETE",
1392
+ "path": "/api/hosting/v1/accounts/{username}/databases/{name}",
1393
+ "inputSchema": {
1394
+ "type": "object",
1395
+ "properties": {
1396
+ "username": {
1397
+ "type": "string",
1398
+ "description": "username parameter"
1399
+ },
1400
+ "name": {
1401
+ "type": "string",
1402
+ "description": "Full database name as returned by the list databases endpoint."
1403
+ }
1404
+ },
1405
+ "required": [
1406
+ "username",
1407
+ "name"
1408
+ ]
1409
+ },
1410
+ "security": [
1411
+ {
1412
+ "apiToken": []
1413
+ }
1414
+ ],
1415
+ "group": "hosting"
1416
+ },
1300
1417
  {
1301
1418
  "name": "hosting_listAvailableDatacentersV1",
1302
1419
  "description": "Retrieve a list of datacenters available for setting up hosting plans\nbased on available datacenter capacity and hosting plan of your order.\nThe first item in the list is the best match for your specific order\nrequirements.",
@@ -1338,6 +1455,103 @@ const tools: OpenApiTool[] = [
1338
1455
  ],
1339
1456
  "group": "hosting"
1340
1457
  },
1458
+ {
1459
+ "name": "hosting_listWebsiteParkedDomainsV1",
1460
+ "description": "Retrieve all parked or alias domains created under the selected website.\n\nUse this endpoint to inspect parked domain configuration for a specific website,\nincluding the parent domain and root directory assigned to each parked domain.",
1461
+ "method": "GET",
1462
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains",
1463
+ "inputSchema": {
1464
+ "type": "object",
1465
+ "properties": {
1466
+ "username": {
1467
+ "type": "string",
1468
+ "description": "username parameter"
1469
+ },
1470
+ "domain": {
1471
+ "type": "string",
1472
+ "description": "Domain name"
1473
+ }
1474
+ },
1475
+ "required": [
1476
+ "username",
1477
+ "domain"
1478
+ ]
1479
+ },
1480
+ "security": [
1481
+ {
1482
+ "apiToken": []
1483
+ }
1484
+ ],
1485
+ "group": "hosting"
1486
+ },
1487
+ {
1488
+ "name": "hosting_createWebsiteParkedDomainV1",
1489
+ "description": "Create a parked or alias domain for the selected website.\n\nProvide a domain name or IP address to park on the website so it serves the same content\nas the parent domain.",
1490
+ "method": "POST",
1491
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains",
1492
+ "inputSchema": {
1493
+ "type": "object",
1494
+ "properties": {
1495
+ "username": {
1496
+ "type": "string",
1497
+ "description": "username parameter"
1498
+ },
1499
+ "domain": {
1500
+ "type": "string",
1501
+ "description": "Domain name"
1502
+ },
1503
+ "parked_domain": {
1504
+ "type": "string",
1505
+ "description": "Domain name or IP address to park on the selected website"
1506
+ }
1507
+ },
1508
+ "required": [
1509
+ "username",
1510
+ "domain",
1511
+ "parked_domain"
1512
+ ]
1513
+ },
1514
+ "security": [
1515
+ {
1516
+ "apiToken": []
1517
+ }
1518
+ ],
1519
+ "group": "hosting"
1520
+ },
1521
+ {
1522
+ "name": "hosting_deleteWebsiteParkedDomainV1",
1523
+ "description": "Delete an existing parked or alias domain from the selected website.\n\nUse this endpoint to remove parked domains that are no longer needed.",
1524
+ "method": "DELETE",
1525
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains/{parkedDomain}",
1526
+ "inputSchema": {
1527
+ "type": "object",
1528
+ "properties": {
1529
+ "username": {
1530
+ "type": "string",
1531
+ "description": "username parameter"
1532
+ },
1533
+ "domain": {
1534
+ "type": "string",
1535
+ "description": "Domain name"
1536
+ },
1537
+ "parkedDomain": {
1538
+ "type": "string",
1539
+ "description": "parkedDomain parameter"
1540
+ }
1541
+ },
1542
+ "required": [
1543
+ "username",
1544
+ "domain",
1545
+ "parkedDomain"
1546
+ ]
1547
+ },
1548
+ "security": [
1549
+ {
1550
+ "apiToken": []
1551
+ }
1552
+ ],
1553
+ "group": "hosting"
1554
+ },
1341
1555
  {
1342
1556
  "name": "hosting_listWebsiteSubdomainsV1",
1343
1557
  "description": "Retrieve all subdomains created under the selected website.\n\nUse this endpoint to inspect subdomain configuration for a specific website,\nincluding the parent domain and root directory assigned to each subdomain.",
@@ -257,6 +257,123 @@ export default [
257
257
  "handlerMethod": "handleShowJsDeploymentLogs",
258
258
  "group": "hosting"
259
259
  },
260
+ {
261
+ "name": "hosting_listAccountDatabasesV1",
262
+ "description": "Returns a paginated list of databases for the specified account.\n\nUse the domain and is_assigned filters to find databases assigned to a specific domain.",
263
+ "method": "GET",
264
+ "path": "/api/hosting/v1/accounts/{username}/databases",
265
+ "inputSchema": {
266
+ "type": "object",
267
+ "properties": {
268
+ "username": {
269
+ "type": "string",
270
+ "description": "username parameter"
271
+ },
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
+ "domain": {
281
+ "type": "string",
282
+ "description": "Filter by domain name (exact match)"
283
+ },
284
+ "is_assigned": {
285
+ "type": "boolean",
286
+ "description": "When used with domain, return only databases assigned to that domain."
287
+ },
288
+ "search": {
289
+ "type": "string",
290
+ "description": "Search databases by name, user, or creation date."
291
+ }
292
+ },
293
+ "required": [
294
+ "username"
295
+ ]
296
+ },
297
+ "security": [
298
+ {
299
+ "apiToken": []
300
+ }
301
+ ],
302
+ "group": "hosting"
303
+ },
304
+ {
305
+ "name": "hosting_createAccountDatabaseV1",
306
+ "description": "Creates a database with a database user and password for the specified account.\n\nThe database name and user are automatically prefixed with the account username when needed.",
307
+ "method": "POST",
308
+ "path": "/api/hosting/v1/accounts/{username}/databases",
309
+ "inputSchema": {
310
+ "type": "object",
311
+ "properties": {
312
+ "username": {
313
+ "type": "string",
314
+ "description": "username parameter"
315
+ },
316
+ "name": {
317
+ "type": "string",
318
+ "description": "Database name. If the account username prefix is omitted, it is added automatically."
319
+ },
320
+ "user": {
321
+ "type": "string",
322
+ "description": "Database user. If the account username prefix is omitted, it is added automatically."
323
+ },
324
+ "password": {
325
+ "type": "string",
326
+ "description": "Database user password."
327
+ },
328
+ "website_domain": {
329
+ "type": "string",
330
+ "description": "Website domain assigned to the database."
331
+ }
332
+ },
333
+ "required": [
334
+ "username",
335
+ "name",
336
+ "user",
337
+ "password",
338
+ "website_domain"
339
+ ]
340
+ },
341
+ "security": [
342
+ {
343
+ "apiToken": []
344
+ }
345
+ ],
346
+ "group": "hosting"
347
+ },
348
+ {
349
+ "name": "hosting_deleteAccountDatabaseV1",
350
+ "description": "Permanently deletes a database and its remote connections.\n\nThe database name must be the full name returned by the list databases endpoint.",
351
+ "method": "DELETE",
352
+ "path": "/api/hosting/v1/accounts/{username}/databases/{name}",
353
+ "inputSchema": {
354
+ "type": "object",
355
+ "properties": {
356
+ "username": {
357
+ "type": "string",
358
+ "description": "username parameter"
359
+ },
360
+ "name": {
361
+ "type": "string",
362
+ "description": "Full database name as returned by the list databases endpoint."
363
+ }
364
+ },
365
+ "required": [
366
+ "username",
367
+ "name"
368
+ ]
369
+ },
370
+ "security": [
371
+ {
372
+ "apiToken": []
373
+ }
374
+ ],
375
+ "group": "hosting"
376
+ },
260
377
  {
261
378
  "name": "hosting_listAvailableDatacentersV1",
262
379
  "description": "Retrieve a list of datacenters available for setting up hosting plans\nbased on available datacenter capacity and hosting plan of your order.\nThe first item in the list is the best match for your specific order\nrequirements.",
@@ -298,6 +415,103 @@ export default [
298
415
  ],
299
416
  "group": "hosting"
300
417
  },
418
+ {
419
+ "name": "hosting_listWebsiteParkedDomainsV1",
420
+ "description": "Retrieve all parked or alias domains created under the selected website.\n\nUse this endpoint to inspect parked domain configuration for a specific website,\nincluding the parent domain and root directory assigned to each parked domain.",
421
+ "method": "GET",
422
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains",
423
+ "inputSchema": {
424
+ "type": "object",
425
+ "properties": {
426
+ "username": {
427
+ "type": "string",
428
+ "description": "username parameter"
429
+ },
430
+ "domain": {
431
+ "type": "string",
432
+ "description": "Domain name"
433
+ }
434
+ },
435
+ "required": [
436
+ "username",
437
+ "domain"
438
+ ]
439
+ },
440
+ "security": [
441
+ {
442
+ "apiToken": []
443
+ }
444
+ ],
445
+ "group": "hosting"
446
+ },
447
+ {
448
+ "name": "hosting_createWebsiteParkedDomainV1",
449
+ "description": "Create a parked or alias domain for the selected website.\n\nProvide a domain name or IP address to park on the website so it serves the same content\nas the parent domain.",
450
+ "method": "POST",
451
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains",
452
+ "inputSchema": {
453
+ "type": "object",
454
+ "properties": {
455
+ "username": {
456
+ "type": "string",
457
+ "description": "username parameter"
458
+ },
459
+ "domain": {
460
+ "type": "string",
461
+ "description": "Domain name"
462
+ },
463
+ "parked_domain": {
464
+ "type": "string",
465
+ "description": "Domain name or IP address to park on the selected website"
466
+ }
467
+ },
468
+ "required": [
469
+ "username",
470
+ "domain",
471
+ "parked_domain"
472
+ ]
473
+ },
474
+ "security": [
475
+ {
476
+ "apiToken": []
477
+ }
478
+ ],
479
+ "group": "hosting"
480
+ },
481
+ {
482
+ "name": "hosting_deleteWebsiteParkedDomainV1",
483
+ "description": "Delete an existing parked or alias domain from the selected website.\n\nUse this endpoint to remove parked domains that are no longer needed.",
484
+ "method": "DELETE",
485
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains/{parkedDomain}",
486
+ "inputSchema": {
487
+ "type": "object",
488
+ "properties": {
489
+ "username": {
490
+ "type": "string",
491
+ "description": "username parameter"
492
+ },
493
+ "domain": {
494
+ "type": "string",
495
+ "description": "Domain name"
496
+ },
497
+ "parkedDomain": {
498
+ "type": "string",
499
+ "description": "parkedDomain parameter"
500
+ }
501
+ },
502
+ "required": [
503
+ "username",
504
+ "domain",
505
+ "parkedDomain"
506
+ ]
507
+ },
508
+ "security": [
509
+ {
510
+ "apiToken": []
511
+ }
512
+ ],
513
+ "group": "hosting"
514
+ },
301
515
  {
302
516
  "name": "hosting_listWebsiteSubdomainsV1",
303
517
  "description": "Retrieve all subdomains created under the selected website.\n\nUse this endpoint to inspect subdomain configuration for a specific website,\nincluding the parent domain and root directory assigned to each subdomain.",
@@ -267,6 +267,123 @@ const tools: OpenApiTool[] = [
267
267
  "handlerMethod": "handleShowJsDeploymentLogs",
268
268
  "group": "hosting"
269
269
  },
270
+ {
271
+ "name": "hosting_listAccountDatabasesV1",
272
+ "description": "Returns a paginated list of databases for the specified account.\n\nUse the domain and is_assigned filters to find databases assigned to a specific domain.",
273
+ "method": "GET",
274
+ "path": "/api/hosting/v1/accounts/{username}/databases",
275
+ "inputSchema": {
276
+ "type": "object",
277
+ "properties": {
278
+ "username": {
279
+ "type": "string",
280
+ "description": "username parameter"
281
+ },
282
+ "page": {
283
+ "type": "integer",
284
+ "description": "Page number"
285
+ },
286
+ "per_page": {
287
+ "type": "integer",
288
+ "description": "Number of items per page"
289
+ },
290
+ "domain": {
291
+ "type": "string",
292
+ "description": "Filter by domain name (exact match)"
293
+ },
294
+ "is_assigned": {
295
+ "type": "boolean",
296
+ "description": "When used with domain, return only databases assigned to that domain."
297
+ },
298
+ "search": {
299
+ "type": "string",
300
+ "description": "Search databases by name, user, or creation date."
301
+ }
302
+ },
303
+ "required": [
304
+ "username"
305
+ ]
306
+ },
307
+ "security": [
308
+ {
309
+ "apiToken": []
310
+ }
311
+ ],
312
+ "group": "hosting"
313
+ },
314
+ {
315
+ "name": "hosting_createAccountDatabaseV1",
316
+ "description": "Creates a database with a database user and password for the specified account.\n\nThe database name and user are automatically prefixed with the account username when needed.",
317
+ "method": "POST",
318
+ "path": "/api/hosting/v1/accounts/{username}/databases",
319
+ "inputSchema": {
320
+ "type": "object",
321
+ "properties": {
322
+ "username": {
323
+ "type": "string",
324
+ "description": "username parameter"
325
+ },
326
+ "name": {
327
+ "type": "string",
328
+ "description": "Database name. If the account username prefix is omitted, it is added automatically."
329
+ },
330
+ "user": {
331
+ "type": "string",
332
+ "description": "Database user. If the account username prefix is omitted, it is added automatically."
333
+ },
334
+ "password": {
335
+ "type": "string",
336
+ "description": "Database user password."
337
+ },
338
+ "website_domain": {
339
+ "type": "string",
340
+ "description": "Website domain assigned to the database."
341
+ }
342
+ },
343
+ "required": [
344
+ "username",
345
+ "name",
346
+ "user",
347
+ "password",
348
+ "website_domain"
349
+ ]
350
+ },
351
+ "security": [
352
+ {
353
+ "apiToken": []
354
+ }
355
+ ],
356
+ "group": "hosting"
357
+ },
358
+ {
359
+ "name": "hosting_deleteAccountDatabaseV1",
360
+ "description": "Permanently deletes a database and its remote connections.\n\nThe database name must be the full name returned by the list databases endpoint.",
361
+ "method": "DELETE",
362
+ "path": "/api/hosting/v1/accounts/{username}/databases/{name}",
363
+ "inputSchema": {
364
+ "type": "object",
365
+ "properties": {
366
+ "username": {
367
+ "type": "string",
368
+ "description": "username parameter"
369
+ },
370
+ "name": {
371
+ "type": "string",
372
+ "description": "Full database name as returned by the list databases endpoint."
373
+ }
374
+ },
375
+ "required": [
376
+ "username",
377
+ "name"
378
+ ]
379
+ },
380
+ "security": [
381
+ {
382
+ "apiToken": []
383
+ }
384
+ ],
385
+ "group": "hosting"
386
+ },
270
387
  {
271
388
  "name": "hosting_listAvailableDatacentersV1",
272
389
  "description": "Retrieve a list of datacenters available for setting up hosting plans\nbased on available datacenter capacity and hosting plan of your order.\nThe first item in the list is the best match for your specific order\nrequirements.",
@@ -308,6 +425,103 @@ const tools: OpenApiTool[] = [
308
425
  ],
309
426
  "group": "hosting"
310
427
  },
428
+ {
429
+ "name": "hosting_listWebsiteParkedDomainsV1",
430
+ "description": "Retrieve all parked or alias domains created under the selected website.\n\nUse this endpoint to inspect parked domain configuration for a specific website,\nincluding the parent domain and root directory assigned to each parked domain.",
431
+ "method": "GET",
432
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains",
433
+ "inputSchema": {
434
+ "type": "object",
435
+ "properties": {
436
+ "username": {
437
+ "type": "string",
438
+ "description": "username parameter"
439
+ },
440
+ "domain": {
441
+ "type": "string",
442
+ "description": "Domain name"
443
+ }
444
+ },
445
+ "required": [
446
+ "username",
447
+ "domain"
448
+ ]
449
+ },
450
+ "security": [
451
+ {
452
+ "apiToken": []
453
+ }
454
+ ],
455
+ "group": "hosting"
456
+ },
457
+ {
458
+ "name": "hosting_createWebsiteParkedDomainV1",
459
+ "description": "Create a parked or alias domain for the selected website.\n\nProvide a domain name or IP address to park on the website so it serves the same content\nas the parent domain.",
460
+ "method": "POST",
461
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains",
462
+ "inputSchema": {
463
+ "type": "object",
464
+ "properties": {
465
+ "username": {
466
+ "type": "string",
467
+ "description": "username parameter"
468
+ },
469
+ "domain": {
470
+ "type": "string",
471
+ "description": "Domain name"
472
+ },
473
+ "parked_domain": {
474
+ "type": "string",
475
+ "description": "Domain name or IP address to park on the selected website"
476
+ }
477
+ },
478
+ "required": [
479
+ "username",
480
+ "domain",
481
+ "parked_domain"
482
+ ]
483
+ },
484
+ "security": [
485
+ {
486
+ "apiToken": []
487
+ }
488
+ ],
489
+ "group": "hosting"
490
+ },
491
+ {
492
+ "name": "hosting_deleteWebsiteParkedDomainV1",
493
+ "description": "Delete an existing parked or alias domain from the selected website.\n\nUse this endpoint to remove parked domains that are no longer needed.",
494
+ "method": "DELETE",
495
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains/{parkedDomain}",
496
+ "inputSchema": {
497
+ "type": "object",
498
+ "properties": {
499
+ "username": {
500
+ "type": "string",
501
+ "description": "username parameter"
502
+ },
503
+ "domain": {
504
+ "type": "string",
505
+ "description": "Domain name"
506
+ },
507
+ "parkedDomain": {
508
+ "type": "string",
509
+ "description": "parkedDomain parameter"
510
+ }
511
+ },
512
+ "required": [
513
+ "username",
514
+ "domain",
515
+ "parkedDomain"
516
+ ]
517
+ },
518
+ "security": [
519
+ {
520
+ "apiToken": []
521
+ }
522
+ ],
523
+ "group": "hosting"
524
+ },
311
525
  {
312
526
  "name": "hosting_listWebsiteSubdomainsV1",
313
527
  "description": "Retrieve all subdomains created under the selected website.\n\nUse this endpoint to inspect subdomain configuration for a specific website,\nincluding the parent domain and root directory assigned to each subdomain.",
@@ -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: '0.2.3', tools });
6
+ startServer({ name: 'hostinger-api-mcp', version: '0.2.4', 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: '0.2.3', tools });
6
+ startServer({ name: 'hostinger-api-mcp', version: '0.2.4', 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: '0.2.3', tools });
6
+ startServer({ name: 'hostinger-billing-mcp', version: '0.2.4', 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: '0.2.3', tools });
6
+ startServer({ name: 'hostinger-billing-mcp', version: '0.2.4', 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: '0.2.3', tools });
6
+ startServer({ name: 'hostinger-dns-mcp', version: '0.2.4', 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: '0.2.3', tools });
6
+ startServer({ name: 'hostinger-dns-mcp', version: '0.2.4', 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: '0.2.3', tools });
6
+ startServer({ name: 'hostinger-domains-mcp', version: '0.2.4', 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: '0.2.3', tools });
6
+ startServer({ name: 'hostinger-domains-mcp', version: '0.2.4', 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: '0.2.3', tools });
6
+ startServer({ name: 'hostinger-hosting-mcp', version: '0.2.4', 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: '0.2.3', tools });
6
+ startServer({ name: 'hostinger-hosting-mcp', version: '0.2.4', 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: '0.2.3', tools });
6
+ startServer({ name: 'hostinger-reach-mcp', version: '0.2.4', 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: '0.2.3', tools });
6
+ startServer({ name: 'hostinger-reach-mcp', version: '0.2.4', 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: '0.2.3', tools });
6
+ startServer({ name: 'hostinger-vps-mcp', version: '0.2.4', 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: '0.2.3', tools });
6
+ startServer({ name: 'hostinger-vps-mcp', version: '0.2.4', tools });
package/types.d.ts CHANGED
@@ -796,6 +796,91 @@ Use this endpoint to view which domains use specific contact profiles.
796
796
  response: any; // Response structure will depend on the API
797
797
  };
798
798
 
799
+ /**
800
+ * Returns a paginated list of databases for the specified account.
801
+
802
+ Use the domain and is_assigned filters to find databases assigned to a specific domain.
803
+ */
804
+ "hosting_listAccountDatabasesV1": {
805
+ params: {
806
+ /**
807
+ * username parameter
808
+ */
809
+ username: string;
810
+ /**
811
+ * Page number
812
+ */
813
+ page?: number;
814
+ /**
815
+ * Number of items per page
816
+ */
817
+ per_page?: number;
818
+ /**
819
+ * Filter by domain name (exact match)
820
+ */
821
+ domain?: string;
822
+ /**
823
+ * When used with domain, return only databases assigned to that domain.
824
+ */
825
+ is_assigned?: boolean;
826
+ /**
827
+ * Search databases by name, user, or creation date.
828
+ */
829
+ search?: string;
830
+ };
831
+ response: any; // Response structure will depend on the API
832
+ };
833
+
834
+ /**
835
+ * Creates a database with a database user and password for the specified account.
836
+
837
+ The database name and user are automatically prefixed with the account username when needed.
838
+ */
839
+ "hosting_createAccountDatabaseV1": {
840
+ params: {
841
+ /**
842
+ * username parameter
843
+ */
844
+ username: string;
845
+ /**
846
+ * Database name. If the account username prefix is omitted, it is added automatically.
847
+ */
848
+ name: string;
849
+ /**
850
+ * Database user. If the account username prefix is omitted, it is added automatically.
851
+ */
852
+ user: string;
853
+ /**
854
+ * Database user password.
855
+ */
856
+ password: string;
857
+ /**
858
+ * Website domain assigned to the database.
859
+ */
860
+ website_domain: string;
861
+ };
862
+ response: any; // Response structure will depend on the API
863
+ };
864
+
865
+ /**
866
+ * Permanently deletes a database and its remote connections.
867
+
868
+ The database name must be the full name returned by the list databases endpoint.
869
+ */
870
+ "hosting_deleteAccountDatabaseV1": {
871
+ params: {
872
+ /**
873
+ * username parameter
874
+ */
875
+ username: string;
876
+ /**
877
+ * Full database name as returned by the list databases endpoint.
878
+ */
879
+ name: string;
880
+ };
881
+ response: any; // Response structure will depend on the API
882
+ };
883
+
799
884
  /**
800
885
  * Retrieve a list of datacenters available for setting up hosting plans
801
886
  based on available datacenter capacity and hosting plan of your order.
@@ -824,6 +909,73 @@ and you can always connect a custom domain to your site later.
824
909
  response: any; // Response structure will depend on the API
825
910
  };
826
911
 
912
+ /**
913
+ * Retrieve all parked or alias domains created under the selected website.
914
+
915
+ Use this endpoint to inspect parked domain configuration for a specific website,
916
+ including the parent domain and root directory assigned to each parked domain.
917
+ */
918
+ "hosting_listWebsiteParkedDomainsV1": {
919
+ params: {
920
+ /**
921
+ * username parameter
922
+ */
923
+ username: string;
924
+ /**
925
+ * Domain name
926
+ */
927
+ domain: string;
928
+ };
929
+ response: any; // Response structure will depend on the API
930
+ };
931
+
932
+ /**
933
+ * Create a parked or alias domain for the selected website.
934
+
935
+ Provide a domain name or IP address to park on the website so it serves the same content
936
+ as the parent domain.
937
+ */
938
+ "hosting_createWebsiteParkedDomainV1": {
939
+ params: {
940
+ /**
941
+ * username parameter
942
+ */
943
+ username: string;
944
+ /**
945
+ * Domain name
946
+ */
947
+ domain: string;
948
+ /**
949
+ * Domain name or IP address to park on the selected website
950
+ */
951
+ parked_domain: string;
952
+ };
953
+ response: any; // Response structure will depend on the API
954
+ };
955
+
956
+ /**
957
+ * Delete an existing parked or alias domain from the selected website.
958
+
959
+ Use this endpoint to remove parked domains that are no longer needed.
960
+ */
961
+ "hosting_deleteWebsiteParkedDomainV1": {
962
+ params: {
963
+ /**
964
+ * username parameter
965
+ */
966
+ username: string;
967
+ /**
968
+ * Domain name
969
+ */
970
+ domain: string;
971
+ /**
972
+ * parkedDomain parameter
973
+ */
974
+ parkedDomain: string;
975
+ };
976
+ response: any; // Response structure will depend on the API
977
+ };
978
+
827
979
  /**
828
980
  * Retrieve all subdomains created under the selected website.
829
981