hostinger-api-mcp 0.1.28 → 0.1.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (5) hide show
  1. package/README.md +107 -82
  2. package/package.json +1 -1
  3. package/server.js +42 -96
  4. package/server.ts +42 -96
  5. package/types.d.ts +107 -90
package/server.ts CHANGED
@@ -291,7 +291,7 @@ const TOOLS: OpenApiTool[] = [
291
291
  },
292
292
  {
293
293
  "name": "billing_getCatalogItemListV1",
294
- "description": "Retrieve catalog items available for order.\n\nPrices in catalog items is displayed as cents (without floating point), e.g: float `17.99` is displayed as integer `1799`.\n\nUse this endpoint to view available services and pricing before placing orders.",
294
+ "description": "Retrieve catalog items available for order.\n\nPrices in catalog items is displayed as cents (without floating point),\ne.g: float `17.99` is displayed as integer `1799`.\n\nUse this endpoint to view available services and pricing before placing orders.",
295
295
  "method": "GET",
296
296
  "path": "/api/billing/v1/catalog",
297
297
  "inputSchema": {
@@ -318,60 +318,6 @@ const TOOLS: OpenApiTool[] = [
318
318
  }
319
319
  ]
320
320
  },
321
- {
322
- "name": "billing_createServiceOrderV1",
323
- "description": "Create a new service order. \n\n**DEPRECATED**\n\nTo purchase a domain, use [`POST /api/domains/v1/portfolio`](/#tag/domains-portfolio/POST/api/domains/v1/portfolio) instead.\n\nTo purchase a VPS, use [`POST /api/vps/v1/virtual-machines`](/#tag/vps-virtual-machine/POST/api/vps/v1/virtual-machines) instead.\n\n\nTo place order, you need to provide payment method ID and list of price items from the catalog endpoint together with quantity.\nCoupons also can be provided during order creation.\n\nOrders created using this endpoint will be set for automatic renewal.\n\nSome `credit_card` payments might need additional verification, rendering purchase unprocessed.\nWe recommend use other payment methods than `credit_card` if you encounter this issue.",
324
- "method": "POST",
325
- "path": "/api/billing/v1/orders",
326
- "inputSchema": {
327
- "type": "object",
328
- "properties": {
329
- "payment_method_id": {
330
- "type": "integer",
331
- "description": "Payment method ID"
332
- },
333
- "items": {
334
- "type": "array",
335
- "description": "items parameter",
336
- "items": {
337
- "type": "object",
338
- "description": "items parameter",
339
- "properties": {
340
- "item_id": {
341
- "type": "string",
342
- "description": "Price Item ID"
343
- },
344
- "quantity": {
345
- "type": "integer",
346
- "description": "quantity parameter"
347
- }
348
- },
349
- "required": [
350
- "item_id",
351
- "quantity"
352
- ]
353
- }
354
- },
355
- "coupons": {
356
- "type": "array",
357
- "description": "Discount coupon codes",
358
- "items": {
359
- "type": "string",
360
- "description": "coupons parameter"
361
- }
362
- }
363
- },
364
- "required": [
365
- "payment_method_id",
366
- "items"
367
- ]
368
- },
369
- "security": [
370
- {
371
- "apiToken": []
372
- }
373
- ]
374
- },
375
321
  {
376
322
  "name": "billing_setDefaultPaymentMethodV1",
377
323
  "description": "Set the default payment method for your account.\n\nUse this endpoint to configure the primary payment method for future orders.",
@@ -420,7 +366,7 @@ const TOOLS: OpenApiTool[] = [
420
366
  },
421
367
  {
422
368
  "name": "billing_getPaymentMethodListV1",
423
- "description": "Retrieve available payment methods that can be used for placing new orders.\n\nIf you want to add new payment method, please use [hPanel](https://hpanel.hostinger.com/billing/payment-methods).\n\nUse this endpoint to view available payment options before creating orders.",
369
+ "description": "Retrieve available payment methods that can be used for placing new orders.\n\nIf you want to add new payment method,\nplease use [hPanel](https://hpanel.hostinger.com/billing/payment-methods).\n\nUse this endpoint to view available payment options before creating orders.",
424
370
  "method": "GET",
425
371
  "path": "/api/billing/v1/payment-methods",
426
372
  "inputSchema": {
@@ -612,7 +558,7 @@ const TOOLS: OpenApiTool[] = [
612
558
  },
613
559
  "overwrite": {
614
560
  "type": "boolean",
615
- "description": "If `true`, resource records (RRs) matching name and type will be deleted and new RRs will be created, otherwise resource records' ttl's are updated and new records are appended. If no matching RRs are found, they are created."
561
+ "description": "If `true`, resource records (RRs) matching name and type will be deleted and new RRs will be created,\notherwise resource records' ttl's are updated and new records are appended.\nIf no matching RRs are found, they are created."
616
562
  },
617
563
  "zone": {
618
564
  "type": "array",
@@ -758,7 +704,7 @@ const TOOLS: OpenApiTool[] = [
758
704
  },
759
705
  "overwrite": {
760
706
  "type": "boolean",
761
- "description": "If `true`, resource records (RRs) matching name and type will be deleted and new RRs will be created, otherwise resource records' ttl's are updated and new records are appended. If no matching RRs are found, they are created."
707
+ "description": "If `true`, resource records (RRs) matching name and type will be deleted and new RRs will be created,\notherwise resource records' ttl's are updated and new records are appended.\nIf no matching RRs are found, they are created."
762
708
  },
763
709
  "zone": {
764
710
  "type": "array",
@@ -965,7 +911,7 @@ const TOOLS: OpenApiTool[] = [
965
911
  },
966
912
  {
967
913
  "name": "domains_enableDomainLockV1",
968
- "description": "Enable domain lock for the domain.\n\nWhen domain lock is enabled, the domain cannot be transferred to another registrar without first disabling the lock.\n\nUse this endpoint to secure domains against unauthorized transfers.",
914
+ "description": "Enable domain lock for the domain.\n\nWhen domain lock is enabled,\nthe domain cannot be transferred to another registrar without first disabling the lock.\n\nUse this endpoint to secure domains against unauthorized transfers.",
969
915
  "method": "PUT",
970
916
  "path": "/api/domains/v1/portfolio/{domain}/domain-lock",
971
917
  "inputSchema": {
@@ -1050,7 +996,7 @@ const TOOLS: OpenApiTool[] = [
1050
996
  },
1051
997
  {
1052
998
  "name": "domains_purchaseNewDomainV1",
1053
- "description": "Purchase and register a new domain name.\n\nIf registration fails, login to [hPanel](https://hpanel.hostinger.com/) and check domain registration status.\n\nIf no payment method is provided, your default payment method will be used automatically.\n\nIf no WHOIS information is provided, default contact information for that TLD will be used. \nBefore making request, ensure WHOIS information for desired TLD exists in your account.\n\nSome TLDs require `additional_details` to be provided and these will be validated before completing purchase.\n\nUse this endpoint to register new domains for users.",
999
+ "description": "Purchase and register a new domain name.\n\nIf registration fails, login to [hPanel](https://hpanel.hostinger.com/) and check domain registration status.\n\nIf no payment method is provided, your default payment method will be used automatically.\n\nIf no WHOIS information is provided, default contact information for that TLD will be used.\nBefore making request, ensure WHOIS information for desired TLD exists in your account.\n\nSome TLDs require `additional_details` to be provided and these will be validated before completing purchase.\n\nUse this endpoint to register new domains for users.",
1054
1000
  "method": "POST",
1055
1001
  "path": "/api/domains/v1/portfolio",
1056
1002
  "inputSchema": {
@@ -1342,7 +1288,7 @@ const TOOLS: OpenApiTool[] = [
1342
1288
  },
1343
1289
  {
1344
1290
  "name": "hosting_listAvailableDatacentersV1",
1345
- "description": "Retrieve a list of datacenters available for setting up hosting plans based on available datacenter capacity and hosting plan of your order.\nThe first item in the list is the best match for your specific order requirements.",
1291
+ "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.",
1346
1292
  "method": "GET",
1347
1293
  "path": "/api/hosting/v1/datacenters",
1348
1294
  "inputSchema": {
@@ -1365,7 +1311,7 @@ const TOOLS: OpenApiTool[] = [
1365
1311
  },
1366
1312
  {
1367
1313
  "name": "hosting_generateAFreeSubdomainV1",
1368
- "description": "Generate a unique free subdomain that can be used for hosting services without purchasing custom domains.\nFree subdomains allow you to start using hosting services immediately and you can always connect a custom domain to your site later.",
1314
+ "description": "Generate a unique free subdomain that can be used for hosting services without purchasing custom domains.\nFree subdomains allow you to start using hosting services immediately\nand you can always connect a custom domain to your site later.",
1369
1315
  "method": "POST",
1370
1316
  "path": "/api/hosting/v1/domains/free-subdomains",
1371
1317
  "inputSchema": {
@@ -1404,7 +1350,7 @@ const TOOLS: OpenApiTool[] = [
1404
1350
  },
1405
1351
  {
1406
1352
  "name": "hosting_listOrdersV1",
1407
- "description": "Retrieve a paginated list of orders accessible to the authenticated client.\n\nThis endpoint returns orders of your hosting accounts as well as orders of other client hosting accounts that have shared access with you.\n\nUse the available query parameters to filter results by order statuses or specific order IDs for more targeted results.",
1353
+ "description": "Retrieve a paginated list of orders accessible to the authenticated client.\n\nThis endpoint returns orders of your hosting accounts as well as orders\nof other client hosting accounts that have shared access with you.\n\nUse the available query parameters to filter results by order statuses\nor specific order IDs for more targeted results.",
1408
1354
  "method": "GET",
1409
1355
  "path": "/api/hosting/v1/orders",
1410
1356
  "inputSchema": {
@@ -1451,7 +1397,7 @@ const TOOLS: OpenApiTool[] = [
1451
1397
  },
1452
1398
  {
1453
1399
  "name": "hosting_listWebsitesV1",
1454
- "description": "Retrieve a paginated list of websites (main and addon types) accessible to the authenticated client.\n\nThis endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you.\n\nUse the available query parameters to filter results by username, order ID, enabled status, or domain name for more targeted results.",
1400
+ "description": "Retrieve a paginated list of websites (main and addon types) accessible to the authenticated client.\n\nThis endpoint returns websites from your hosting accounts as well as\nwebsites from other client hosting accounts that have shared access\nwith you.\n\nUse the available query parameters to filter results by username,\norder ID, enabled status, or domain name for more targeted results.",
1455
1401
  "method": "GET",
1456
1402
  "path": "/api/hosting/v1/websites",
1457
1403
  "inputSchema": {
@@ -1492,7 +1438,7 @@ const TOOLS: OpenApiTool[] = [
1492
1438
  },
1493
1439
  {
1494
1440
  "name": "hosting_createWebsiteV1",
1495
- "description": "Create a new website for the authenticated client.\n\nProvide the domain name and associated order ID to create a new website. The datacenter_code parameter is required when creating the first website on a new hosting plan - this will set up and configure new hosting account in the selected datacenter.\n\nSubsequent websites will be hosted on the same datacenter automatically.\n\nWebsite creation takes up to a few minutes to complete. Check the websites list endpoint to see when your new website becomes available.",
1441
+ "description": "Create a new website for the authenticated client.\n\nProvide the domain name and associated order ID to create a new website.\nThe datacenter_code parameter is required when creating the first website\non a new hosting plan - this will set up and configure new hosting account\nin the selected datacenter.\n\nSubsequent websites will be hosted on the same datacenter automatically.\n\nWebsite creation takes up to a few minutes to complete. Check the\nwebsites list endpoint to see when your new website becomes available.",
1496
1442
  "method": "POST",
1497
1443
  "path": "/api/hosting/v1/websites",
1498
1444
  "inputSchema": {
@@ -1596,7 +1542,7 @@ const TOOLS: OpenApiTool[] = [
1596
1542
  },
1597
1543
  {
1598
1544
  "name": "reach_createANewContactV1",
1599
- "description": "Create a new contact in the email marketing system.\n\nThis endpoint allows you to create a new contact with basic information like name, email, and surname.\n\nIf double opt-in is enabled, the contact will be created with a pending status and a confirmation email will be sent.",
1545
+ "description": "Create a new contact in the email marketing system.\n\nThis endpoint allows you to create a new contact with basic information like name, email, and surname.\n\nIf double opt-in is enabled,\nthe contact will be created with a pending status and a confirmation email will be sent.",
1600
1546
  "method": "POST",
1601
1547
  "path": "/api/reach/v1/contacts",
1602
1548
  "inputSchema": {
@@ -1803,8 +1749,8 @@ const TOOLS: OpenApiTool[] = [
1803
1749
  ]
1804
1750
  },
1805
1751
  {
1806
- "name": "reach_createANewProfileContactV1",
1807
- "description": "Create a new contact in the email marketing system.\n\nThis endpoint allows you to create a new contact with basic information like name, email, and surname.\n\nIf double opt-in is enabled, the contact will be created with a pending status and a confirmation email will be sent.",
1752
+ "name": "reach_createNewContactsV1",
1753
+ "description": "Create a new contact in the email marketing system.\n\nThis endpoint allows you to create a new contact with basic information like name, email, and surname.\n\nIf double opt-in is enabled, the contact will be created with a pending status\nand a confirmation email will be sent.",
1808
1754
  "method": "POST",
1809
1755
  "path": "/api/reach/v1/profiles/{profileUuid}/contacts",
1810
1756
  "inputSchema": {
@@ -1876,7 +1822,7 @@ const TOOLS: OpenApiTool[] = [
1876
1822
  },
1877
1823
  {
1878
1824
  "name": "VPS_getProjectContainersV1",
1879
- "description": "Retrieves a list of all containers belonging to a specific Docker Compose project on the virtual machine. \n\nThis endpoint returns detailed information about each container including their current status, port mappings, and runtime configuration. \n\nUse this to monitor the health and state of all services within your Docker Compose project.",
1825
+ "description": "Retrieves a list of all containers belonging to a specific Docker Compose project on the virtual machine. \n\nThis endpoint returns detailed information about each container including\ntheir current status, port mappings, and runtime configuration.\n\nUse this to monitor the health and state of all services within your Docker Compose project.",
1880
1826
  "method": "GET",
1881
1827
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/containers",
1882
1828
  "inputSchema": {
@@ -1904,7 +1850,7 @@ const TOOLS: OpenApiTool[] = [
1904
1850
  },
1905
1851
  {
1906
1852
  "name": "VPS_getProjectContentsV1",
1907
- "description": "Retrieves the complete project information including the docker-compose.yml file contents, project metadata, and current deployment status. \n\nThis endpoint provides the full configuration and state details of a specific Docker Compose project. \n\nUse this to inspect project settings, review the compose file, or check the overall project health.",
1853
+ "description": "Retrieves the complete project information including the docker-compose.yml\nfile contents, project metadata, and current deployment status.\n\nThis endpoint provides the full configuration and state details of a specific Docker Compose project. \n\nUse this to inspect project settings, review the compose file, or check the overall project health.",
1908
1854
  "method": "GET",
1909
1855
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}",
1910
1856
  "inputSchema": {
@@ -1960,7 +1906,7 @@ const TOOLS: OpenApiTool[] = [
1960
1906
  },
1961
1907
  {
1962
1908
  "name": "VPS_getProjectListV1",
1963
- "description": "Retrieves a list of all Docker Compose projects currently deployed on the virtual machine. \n\nThis endpoint returns basic information about each project including name, status, file path and list of containers with \ndetails about their names, image, status, health and ports. Container stats are omitted in this endpoint.\nIf you need to get detailed information about container with stats included, use the `Get project containers` endpoint. \n\nUse this to get an overview of all Docker projects on your VPS instance.",
1909
+ "description": "Retrieves a list of all Docker Compose projects currently deployed on the virtual machine. \n\nThis endpoint returns basic information about each project including name,\nstatus, file path and list of containers with details about their names,\nimage, status, health and ports. Container stats are omitted in this\nendpoint. If you need to get detailed information about container with\nstats included, use the `Get project containers` endpoint.\n\nUse this to get an overview of all Docker projects on your VPS instance.",
1964
1910
  "method": "GET",
1965
1911
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/docker",
1966
1912
  "inputSchema": {
@@ -1983,7 +1929,7 @@ const TOOLS: OpenApiTool[] = [
1983
1929
  },
1984
1930
  {
1985
1931
  "name": "VPS_createNewProjectV1",
1986
- "description": "Deploy new project from docker-compose.yaml contents or download contents from URL. \n\nURL can be Github repository url in format https://github.com/[user]/[repo] and it will be automatically resolved to \ndocker-compose.yaml file in master branch. Any other URL provided must return docker-compose.yaml file contents.\n\nIf project with the same name already exists, existing project will be replaced.",
1932
+ "description": "Deploy new project from docker-compose.yaml contents or download contents from URL. \n\nURL can be Github repository url in format https://github.com/[user]/[repo]\nand it will be automatically resolved to docker-compose.yaml file in\nmaster branch. Any other URL provided must return docker-compose.yaml\nfile contents.\n\nIf project with the same name already exists, existing project will be replaced.",
1987
1933
  "method": "POST",
1988
1934
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/docker",
1989
1935
  "inputSchema": {
@@ -2020,7 +1966,7 @@ const TOOLS: OpenApiTool[] = [
2020
1966
  },
2021
1967
  {
2022
1968
  "name": "VPS_getProjectLogsV1",
2023
- "description": "Retrieves aggregated log entries from all services within a Docker Compose project. \n\nThis endpoint returns recent log output from each container, organized by service name with timestamps. \nThe response contains the last 300 log entries across all services. \n\nUse this for debugging, monitoring application behavior, and troubleshooting issues across your entire project stack.",
1969
+ "description": "Retrieves aggregated log entries from all services within a Docker Compose project. \n\nThis endpoint returns recent log output from each container, organized by service name with timestamps. \nThe response contains the last 300 log entries across all services. \n\nUse this for debugging, monitoring application behavior, and\ntroubleshooting issues across your entire project stack.",
2024
1970
  "method": "GET",
2025
1971
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/logs",
2026
1972
  "inputSchema": {
@@ -2048,7 +1994,7 @@ const TOOLS: OpenApiTool[] = [
2048
1994
  },
2049
1995
  {
2050
1996
  "name": "VPS_restartProjectV1",
2051
- "description": "Restarts all services in a Docker Compose project by stopping and starting containers in the correct dependency order. \n\nThis operation preserves data volumes and network configurations while refreshing the running containers. \n\nUse this to apply configuration changes or recover from service failures.",
1997
+ "description": "Restarts all services in a Docker Compose project by stopping and starting\ncontainers in the correct dependency order.\n\nThis operation preserves data volumes and network configurations while refreshing the running containers. \n\nUse this to apply configuration changes or recover from service failures.",
2052
1998
  "method": "POST",
2053
1999
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/restart",
2054
2000
  "inputSchema": {
@@ -2104,7 +2050,7 @@ const TOOLS: OpenApiTool[] = [
2104
2050
  },
2105
2051
  {
2106
2052
  "name": "VPS_stopProjectV1",
2107
- "description": "Stops all running services in a Docker Compose project while preserving container configurations and data volumes. \n\nThis operation gracefully shuts down containers in reverse dependency order. \n\nUse this to temporarily halt a project without removing data or configurations.",
2053
+ "description": "Stops all running services in a Docker Compose project while preserving\ncontainer configurations and data volumes.\n\nThis operation gracefully shuts down containers in reverse dependency order. \n\nUse this to temporarily halt a project without removing data or configurations.",
2108
2054
  "method": "POST",
2109
2055
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/stop",
2110
2056
  "inputSchema": {
@@ -2132,7 +2078,7 @@ const TOOLS: OpenApiTool[] = [
2132
2078
  },
2133
2079
  {
2134
2080
  "name": "VPS_updateProjectV1",
2135
- "description": "Updates a Docker Compose project by pulling the latest image versions and recreating containers with new configurations. \n\nThis operation preserves data volumes while applying changes from the compose file. \n\nUse this to deploy application updates, apply configuration changes, or refresh container images to their latest versions.",
2081
+ "description": "Updates a Docker Compose project by pulling the latest image versions and\nrecreating containers with new configurations.\n\nThis operation preserves data volumes while applying changes from the compose file. \n\nUse this to deploy application updates, apply configuration changes, or\nrefresh container images to their latest versions.",
2136
2082
  "method": "POST",
2137
2083
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/update",
2138
2084
  "inputSchema": {
@@ -2306,7 +2252,7 @@ const TOOLS: OpenApiTool[] = [
2306
2252
  },
2307
2253
  {
2308
2254
  "name": "VPS_updateFirewallRuleV1",
2309
- "description": "Update a specific firewall rule from a specified firewall.\n\nAny virtual machine that has this firewall activated will lose sync with the firewall and will have to be synced again manually.\n\nUse this endpoint to modify existing firewall rules.",
2255
+ "description": "Update a specific firewall rule from a specified firewall.\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 modify existing firewall rules.",
2310
2256
  "method": "PUT",
2311
2257
  "path": "/api/vps/v1/firewall/{firewallId}/rules/{ruleId}",
2312
2258
  "inputSchema": {
@@ -2373,7 +2319,7 @@ const TOOLS: OpenApiTool[] = [
2373
2319
  },
2374
2320
  {
2375
2321
  "name": "VPS_deleteFirewallRuleV1",
2376
- "description": "Delete a specific firewall rule from a specified firewall.\n\nAny virtual machine that has this firewall activated will lose sync with the firewall and will have to be synced again manually.\n \nUse this endpoint to remove specific firewall rules.",
2322
+ "description": "Delete a specific firewall rule from a specified firewall.\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 remove specific firewall rules.",
2377
2323
  "method": "DELETE",
2378
2324
  "path": "/api/vps/v1/firewall/{firewallId}/rules/{ruleId}",
2379
2325
  "inputSchema": {
@@ -2401,7 +2347,7 @@ const TOOLS: OpenApiTool[] = [
2401
2347
  },
2402
2348
  {
2403
2349
  "name": "VPS_createFirewallRuleV1",
2404
- "description": "Create new firewall rule for a specified firewall.\n\nBy default, the firewall drops all incoming traffic, which 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 and will have to be synced again manually.\n\nUse this endpoint to add new security rules to firewalls.",
2350
+ "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.",
2405
2351
  "method": "POST",
2406
2352
  "path": "/api/vps/v1/firewall/{firewallId}/rules",
2407
2353
  "inputSchema": {
@@ -2591,7 +2537,7 @@ const TOOLS: OpenApiTool[] = [
2591
2537
  },
2592
2538
  {
2593
2539
  "name": "VPS_createPostInstallScriptV1",
2594
- "description": "Add a new post-install script to your account, which can then be used after virtual machine installation.\n\nThe script contents will be saved to the file `/post_install` with executable attribute set and will be executed once virtual machine is installed.\nThe output of the script will be redirected to `/post_install.log`. Maximum script size is 48KB.\n\nUse this endpoint to create automation scripts for VPS setup tasks.",
2540
+ "description": "Add a new post-install script to your account, which can then be used after virtual machine installation.\n\nThe script contents will be saved to the file `/post_install` with executable attribute set\nand will be executed once virtual machine is installed.\nThe output of the script will be redirected to `/post_install.log`. Maximum script size is 48KB.\n\nUse this endpoint to create automation scripts for VPS setup tasks.",
2595
2541
  "method": "POST",
2596
2542
  "path": "/api/vps/v1/post-install-scripts",
2597
2543
  "inputSchema": {
@@ -2790,7 +2736,7 @@ const TOOLS: OpenApiTool[] = [
2790
2736
  },
2791
2737
  {
2792
2738
  "name": "VPS_getActionsV1",
2793
- "description": "Retrieve actions performed on a specified virtual machine.\n\nActions are operations or events that have been executed on the virtual machine, such as starting, stopping, or modifying \nthe machine. This endpoint allows you to view the history of these actions, providing details about each action, \nsuch as the action name, timestamp, and status.\n\nUse this endpoint to view VPS operation history and troubleshoot issues.",
2739
+ "description": "Retrieve actions performed on a specified virtual machine.\n\nActions are operations or events that have been executed on the virtual\nmachine, such as starting, stopping, or modifying the machine. This endpoint\nallows you to view the history of these actions, providing details about\neach action, such as the action name, timestamp, and status.\n\nUse this endpoint to view VPS operation history and troubleshoot issues.",
2794
2740
  "method": "GET",
2795
2741
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/actions",
2796
2742
  "inputSchema": {
@@ -2989,7 +2935,7 @@ const TOOLS: OpenApiTool[] = [
2989
2935
  },
2990
2936
  {
2991
2937
  "name": "VPS_purchaseNewVirtualMachineV1",
2992
- "description": "Purchase and setup a new virtual machine.\n\nIf virtual machine setup fails for any reason, login to [hPanel](https://hpanel.hostinger.com/) and complete the setup manually.\n\nIf no payment method is provided, your default payment method will be used automatically.\n\nUse this endpoint to create new VPS instances.",
2938
+ "description": "Purchase and setup a new virtual machine.\n\nIf virtual machine setup fails for any reason, login to\n[hPanel](https://hpanel.hostinger.com/) and complete the setup manually.\n\nIf no payment method is provided, your default payment method will be used automatically.\n\nUse this endpoint to create new VPS instances.",
2993
2939
  "method": "POST",
2994
2940
  "path": "/api/vps/v1/virtual-machines",
2995
2941
  "inputSchema": {
@@ -3029,7 +2975,7 @@ const TOOLS: OpenApiTool[] = [
3029
2975
  },
3030
2976
  {
3031
2977
  "name": "VPS_getScanMetricsV1",
3032
- "description": "Retrieve scan metrics for the [Monarx](https://www.monarx.com/) malware scanner installed on a specified virtual machine.\n\nThe scan metrics provide detailed information about malware scans performed by Monarx, including number of scans, \ndetected threats, and other relevant statistics. This information is useful for monitoring security status of the \nvirtual machine and assessing effectiveness of the malware scanner.\n\nUse this endpoint to monitor VPS security scan results and threat detection.",
2978
+ "description": "Retrieve scan metrics for the [Monarx](https://www.monarx.com/) malware scanner\ninstalled on a specified virtual machine.\n\nThe scan metrics provide detailed information about malware scans performed\nby Monarx, including number of scans, detected threats, and other relevant\nstatistics. This information is useful for monitoring security status of the\nvirtual machine and assessing effectiveness of the malware scanner.\n\nUse this endpoint to monitor VPS security scan results and threat detection.",
3033
2979
  "method": "GET",
3034
2980
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/monarx",
3035
2981
  "inputSchema": {
@@ -3052,7 +2998,7 @@ const TOOLS: OpenApiTool[] = [
3052
2998
  },
3053
2999
  {
3054
3000
  "name": "VPS_installMonarxV1",
3055
- "description": "Install the Monarx malware scanner on a specified virtual machine.\n\n[Monarx](https://www.monarx.com/) is a security tool designed to detect and prevent malware infections on virtual machines. \nBy installing Monarx, users can enhance the security of their virtual machines, ensuring that they are protected against malicious software.\n\nUse this endpoint to enable malware protection on VPS instances.",
3001
+ "description": "Install the Monarx malware scanner on a specified virtual machine.\n\n[Monarx](https://www.monarx.com/) is a security tool designed to detect and\nprevent malware infections on virtual machines. By installing Monarx, users\ncan enhance the security of their virtual machines, ensuring that they are\nprotected against malicious software.\n\nUse this endpoint to enable malware protection on VPS instances.",
3056
3002
  "method": "POST",
3057
3003
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/monarx",
3058
3004
  "inputSchema": {
@@ -3131,7 +3077,7 @@ const TOOLS: OpenApiTool[] = [
3131
3077
  },
3132
3078
  {
3133
3079
  "name": "VPS_setNameserversV1",
3134
- "description": "Set nameservers for a specified virtual machine.\n\nBe aware, that improper nameserver configuration can lead to the virtual machine being unable to resolve domain names.\n\nUse this endpoint to configure custom DNS resolvers for VPS instances.",
3080
+ "description": "Set nameservers for a specified virtual machine.\n\nBe aware, that improper nameserver configuration can lead to the virtual\nmachine being unable to resolve domain names.\n\nUse this endpoint to configure custom DNS resolvers for VPS instances.",
3135
3081
  "method": "PUT",
3136
3082
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/nameservers",
3137
3083
  "inputSchema": {
@@ -3200,7 +3146,7 @@ const TOOLS: OpenApiTool[] = [
3200
3146
  },
3201
3147
  {
3202
3148
  "name": "VPS_deletePTRRecordV1",
3203
- "description": "Delete a PTR (Pointer) record for a specified virtual machine.\n\nOnce deleted, reverse DNS lookups to the virtual machine's IP address will no longer return the previously configured hostname.\n\nUse this endpoint to remove reverse DNS configuration from VPS instances.",
3149
+ "description": "Delete a PTR (Pointer) record for a specified virtual machine.\n\nOnce deleted, reverse DNS lookups to the virtual machine's IP address will\nno longer return the previously configured hostname.\n\nUse this endpoint to remove reverse DNS configuration from VPS instances.",
3204
3150
  "method": "DELETE",
3205
3151
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/ptr/{ipAddressId}",
3206
3152
  "inputSchema": {
@@ -3228,7 +3174,7 @@ const TOOLS: OpenApiTool[] = [
3228
3174
  },
3229
3175
  {
3230
3176
  "name": "VPS_setPanelPasswordV1",
3231
- "description": "Set panel password for a specified virtual machine.\n\nIf virtual machine does not use panel OS, the request will still be processed without any effect.\nRequirements for password are same as in the [recreate virtual machine endpoint](/#tag/vps-virtual-machine/POST/api/vps/v1/virtual-machines/{virtualMachineId}/recreate).\n\nUse this endpoint to configure control panel access credentials for VPS instances.",
3177
+ "description": "Set panel password for a specified virtual machine.\n\nIf virtual machine does not use panel OS, the request will still be processed without any effect.\nRequirements for password are same as in the [recreate virtual machine\nendpoint](/#tag/vps-virtual-machine/POST/api/vps/v1/virtual-machines/{virtualMachineId}/recreate).\n\nUse this endpoint to configure control panel access credentials for VPS instances.",
3232
3178
  "method": "PUT",
3233
3179
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/panel-password",
3234
3180
  "inputSchema": {
@@ -3307,7 +3253,7 @@ const TOOLS: OpenApiTool[] = [
3307
3253
  },
3308
3254
  {
3309
3255
  "name": "VPS_recreateVirtualMachineV1",
3310
- "description": "Recreate a virtual machine from scratch.\n\nThe recreation process involves reinstalling the operating system and resetting the virtual machine to its initial state.\nSnapshots, if there are any, will be deleted.\n\n## Password Requirements\nPassword will be checked against leaked password databases. \nRequirements for the password are:\n- At least 12 characters long\n- At least one uppercase letter\n- At least one lowercase letter\n- At least one number\n- Is not leaked publicly\n\n**This operation is irreversible and will result in the loss of all data stored on the virtual machine!**\n\nUse this endpoint to completely rebuild VPS instances with fresh OS installation.",
3256
+ "description": "Recreate a virtual machine from scratch.\n\nThe recreation process involves reinstalling the operating system and\nresetting the virtual machine to its initial state.\nSnapshots, if there are any, will be deleted.\n\n## Password Requirements\nPassword will be checked against leaked password databases. \nRequirements for the password are:\n- At least 12 characters long\n- At least one uppercase letter\n- At least one lowercase letter\n- At least one number\n- Is not leaked publicly\n\n**This operation is irreversible and will result in the loss of all data stored on the virtual machine!**\n\nUse this endpoint to completely rebuild VPS instances with fresh OS installation.",
3311
3257
  "method": "POST",
3312
3258
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/recreate",
3313
3259
  "inputSchema": {
@@ -3323,11 +3269,11 @@ const TOOLS: OpenApiTool[] = [
3323
3269
  },
3324
3270
  "password": {
3325
3271
  "type": "string",
3326
- "description": "Root password for the virtual machine. If not provided, random password will be generated. Password will not be shown in the response."
3272
+ "description": "Root password for the virtual machine. If not provided, random password will be generated.\nPassword will not be shown in the response."
3327
3273
  },
3328
3274
  "panel_password": {
3329
3275
  "type": "string",
3330
- "description": "Panel password for the panel-based OS template. If not provided, random password will be generated. If OS does not support panel_password this field will be ignored. Password will not be shown in the response."
3276
+ "description": "Panel password for the panel-based OS template. If not provided, random password will be generated.\nIf OS does not support panel_password this field will be ignored.\nPassword will not be shown in the response."
3331
3277
  },
3332
3278
  "post_install_script_id": {
3333
3279
  "type": "integer",
@@ -3370,7 +3316,7 @@ const TOOLS: OpenApiTool[] = [
3370
3316
  },
3371
3317
  {
3372
3318
  "name": "VPS_setRootPasswordV1",
3373
- "description": "Set root password for a specified virtual machine.\n\nRequirements for password are same as in the [recreate virtual machine endpoint](/#tag/vps-virtual-machine/POST/api/vps/v1/virtual-machines/{virtualMachineId}/recreate).\n\nUse this endpoint to update administrator credentials for VPS instances.",
3319
+ "description": "Set root password for a specified virtual machine.\n\nRequirements for password are same as in the [recreate virtual machine\nendpoint](/#tag/vps-virtual-machine/POST/api/vps/v1/virtual-machines/{virtualMachineId}/recreate).\n\nUse this endpoint to update administrator credentials for VPS instances.",
3374
3320
  "method": "PUT",
3375
3321
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/root-password",
3376
3322
  "inputSchema": {
@@ -3422,7 +3368,7 @@ const TOOLS: OpenApiTool[] = [
3422
3368
  },
3423
3369
  "password": {
3424
3370
  "type": "string",
3425
- "description": "Password for the virtual machine. If not provided, random password will be generated. Password will not be shown in the response."
3371
+ "description": "Password for the virtual machine. If not provided, random password will be generated.\nPassword will not be shown in the response."
3426
3372
  },
3427
3373
  "hostname": {
3428
3374
  "type": "string",
@@ -3542,7 +3488,7 @@ const TOOLS: OpenApiTool[] = [
3542
3488
  },
3543
3489
  {
3544
3490
  "name": "VPS_restoreSnapshotV1",
3545
- "description": "Restore a specified virtual machine to a previous state using a snapshot.\n\nRestoring from a snapshot allows users to revert the virtual machine to that state, which is useful for system recovery, undoing changes, or testing.\n\nUse this endpoint to revert VPS instances to previous saved states.",
3491
+ "description": "Restore a specified virtual machine to a previous state using a snapshot.\n\nRestoring from a snapshot allows users to revert the virtual machine to that state,\nwhich is useful for system recovery, undoing changes, or testing.\n\nUse this endpoint to revert VPS instances to previous saved states.",
3546
3492
  "method": "POST",
3547
3493
  "path": "/api/vps/v1/virtual-machines/{virtualMachineId}/snapshot/restore",
3548
3494
  "inputSchema": {
@@ -3620,7 +3566,7 @@ const SECURITY_SCHEMES: Record<string, SecurityScheme> = {
3620
3566
 
3621
3567
  /**
3622
3568
  * MCP Server for Hostinger API
3623
- * Generated from OpenAPI spec version 0.11.4
3569
+ * Generated from OpenAPI spec version 0.11.7
3624
3570
  */
3625
3571
  class MCPServer {
3626
3572
  private server: Server;
@@ -3642,7 +3588,7 @@ class MCPServer {
3642
3588
  this.server = new Server(
3643
3589
  {
3644
3590
  name: "hostinger-api-mcp",
3645
- version: "0.1.28",
3591
+ version: "0.1.36",
3646
3592
  },
3647
3593
  {
3648
3594
  capabilities: {
@@ -3667,7 +3613,7 @@ class MCPServer {
3667
3613
  });
3668
3614
  }
3669
3615
 
3670
- headers['User-Agent'] = 'hostinger-mcp-server/0.1.28';
3616
+ headers['User-Agent'] = 'hostinger-mcp-server/0.1.36';
3671
3617
 
3672
3618
  return headers;
3673
3619
  }