{"id":27316923,"url":"https://github.com/hostinger/api-mcp-server","last_synced_at":"2026-05-07T09:02:25.870Z","repository":{"id":287378090,"uuid":"964517869","full_name":"hostinger/api-mcp-server","owner":"hostinger","description":null,"archived":false,"fork":false,"pushed_at":"2026-04-16T07:01:44.000Z","size":403,"stargazers_count":83,"open_issues_count":2,"forks_count":41,"subscribers_count":7,"default_branch":"main","last_synced_at":"2026-04-16T09:02:52.026Z","etag":null,"topics":["ai","api","claude","cursor","hostinger","mcp"],"latest_commit_sha":null,"homepage":"https://developers.hostinger.com","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hostinger.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-04-11T10:40:50.000Z","updated_at":"2026-04-16T07:01:35.000Z","dependencies_parsed_at":"2025-04-11T12:55:42.593Z","dependency_job_id":"42330ab1-780a-46a6-903d-ed9e154c0d8f","html_url":"https://github.com/hostinger/api-mcp-server","commit_stats":null,"previous_names":["hostinger/api-mcp-server"],"tags_count":69,"template":false,"template_full_name":null,"purl":"pkg:github/hostinger/api-mcp-server","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hostinger%2Fapi-mcp-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hostinger%2Fapi-mcp-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hostinger%2Fapi-mcp-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hostinger%2Fapi-mcp-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hostinger","download_url":"https://codeload.github.com/hostinger/api-mcp-server/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hostinger%2Fapi-mcp-server/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32599419,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T22:12:39.696Z","status":"online","status_checked_at":"2026-05-04T02:00:06.625Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","api","claude","cursor","hostinger","mcp"],"created_at":"2025-04-12T08:38:59.715Z","updated_at":"2026-05-04T08:06:35.078Z","avatar_url":"https://github.com/hostinger.png","language":"JavaScript","funding_links":[],"categories":["Developer Tools","📦 Other","Official Servers","Cloud Services","MCP Servers Directory","MCP Servers \u0026 Protocol"],"sub_categories":["API Tools","Quick Submission"],"readme":"# hostinger-api-mcp\n\nModel Context Protocol (MCP) server for Hostinger API.\n\n## Prerequisites\n- Node.js version 24 or higher\n\nIf you don't have Node.js installed, you can download it from the [official website](https://nodejs.org/en/download/).\nAlternatively, you can use a package manager like [Homebrew](https://brew.sh/) (for macOS) or [Chocolatey](https://chocolatey.org/) (for Windows) to install Node.js.\n\nWe recommend using [NVM (Node Version Manager)](https://github.com/nvm-sh/nvm) to install and manage installed Node.js versions.\nAfter installing NVM, you can install Node.js with the following command:\n```bash\nnvm install v24\nnvm use v24\n```\n\n## Installation\n\nTo install the MCP server, run one of the following command, depending on your package manager:\n\n```bash\n# Install globally from npm\nnpm install -g hostinger-api-mcp\n\n# Or with yarn\nyarn global add hostinger-api-mcp\n\n# Or with pnpm\npnpm add -g hostinger-api-mcp\n```\n\n## Update\n\nTo update the MCP server to the latest version, use one of the following commands, depending on your package manager:\n\n```bash\n# Update globally from npm\nnpm update -g hostinger-api-mcp\n\n# Or with yarn\nyarn global upgrade hostinger-api-mcp\n\n# Or with pnpm\npnpm update -g hostinger-api-mcp\n```\n\n## Binaries\n\nThis package installs the following MCP server commands:\n\n- `hostinger-api-mcp` — unified server with every tool (118 total)\n- `hostinger-billing-mcp` — 7 tools for billing\n- `hostinger-dns-mcp` — 8 tools for dns\n- `hostinger-domains-mcp` — 18 tools for domains\n- `hostinger-hosting-mcp` — 13 tools for hosting\n- `hostinger-reach-mcp` — 10 tools for reach\n- `hostinger-vps-mcp` — 62 tools for vps\n\nPick the binary that matches your agent's scope. `hostinger-api-mcp` remains the backwards-compatible default.\n\n## Configuration\n\nThe following environment variables can be configured when running the server:\n- `DEBUG`: Enable debug logging (true/false) (default: false)\n- `API_TOKEN`: Your API token, which will be sent in the `Authorization` header.\n\n## Usage\n\n### JSON configuration for Claude, Cursor, etc.\n\n```json\n{\n    \"mcpServers\": {\n        \"hostinger-api\": {\n            \"command\": \"hostinger-api-mcp\",\n            \"env\": {\n                \"DEBUG\": \"false\",\n                \"API_TOKEN\": \"YOUR API TOKEN\"\n            }\n        }\n    }\n}\n```\n\n### Transport Options\n\nThe MCP server supports two transport modes:\n\n#### Standard I/O Transport\n\nThe server can use standard input / output (stdio) transport (default). This provides local streaming:\n\n#### Streamable HTTP Transport\n\nThe server can use HTTP streaming transport. This provides bidirectional streaming over HTTP:\n\n```bash\n# Default HTTP transport on localhost:8100\nhostinger-api-mcp --http\n\n# Specify custom host and port\nhostinger-api-mcp --http --host 0.0.0.0 --port 8150\n```\n\n#### Command Line Options\n\n```\nOptions:\n  --http           Use HTTP streaming transport\n  --stdio          Use Server-Sent Events transport (default)\n  --host {host}    Hostname or IP address to listen on (default: 127.0.0.1)\n  --port {port}    Port to bind to (default: 8100)\n  --help           Show help message\n```\n\n### Using as an MCP Tool Provider\n\nThis server implements the Model Context Protocol (MCP) and can be used with any MCP-compatible consumer.\n\nExample of connecting to this server using HTTP streaming transport:\n\n```javascript\nimport { Client } from \"@modelcontextprotocol/sdk/client/index.js\";\nimport { StreamableHTTPClientTransport } from \"@modelcontextprotocol/sdk/client/streamableHttp.js\";\n\n// Create HTTP transport\nconst transport = new StreamableHTTPClientTransport({\n  url: \"http://localhost:8100/\",\n  headers: {\n    \"Authorization\": `Bearer ${process.env.API_TOKEN}`\n  }\n});\n\n// Connect to the MCP server\nconst client = new Client({\n  name: \"my-client\",\n  version: \"1.0.0\"\n}, {\n  capabilities: {}\n});\n\nawait client.connect(transport);\n\n// List available tools\nconst { tools } = await client.listTools();\nconsole.log(\"Available tools:\", tools);\n\n// Call a tool\nconst result = await client.callTool({\n  name: \"billing_getCatalogItemListV1\",\n  arguments: { category: \"DOMAIN\" }\n});\nconsole.log(\"Tool result:\", result);\n```\n\n## Available Tools\n\nThis MCP server provides the following tools:\n\n### `hostinger-billing-mcp`\n\n#### billing_getCatalogItemListV1\n\nRetrieve 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.\n\n- **Method**: `GET`\n- **Path**: `/api/billing/v1/catalog`\n\n#### billing_setDefaultPaymentMethodV1\n\nSet the default payment method for your account.\n\nUse this endpoint to configure the primary payment method for future orders.\n\n- **Method**: `POST`\n- **Path**: `/api/billing/v1/payment-methods/{paymentMethodId}`\n\n#### billing_deletePaymentMethodV1\n\nDelete a payment method from your account.\n\nUse this endpoint to remove unused payment methods from user accounts.\n\n- **Method**: `DELETE`\n- **Path**: `/api/billing/v1/payment-methods/{paymentMethodId}`\n\n#### billing_getPaymentMethodListV1\n\nRetrieve 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.\n\n- **Method**: `GET`\n- **Path**: `/api/billing/v1/payment-methods`\n\n#### billing_getSubscriptionListV1\n\nRetrieve a list of all subscriptions associated with your account.\n\nUse this endpoint to monitor active services and billing status.\n\n- **Method**: `GET`\n- **Path**: `/api/billing/v1/subscriptions`\n\n#### billing_disableAutoRenewalV1\n\nDisable auto-renewal for a subscription.\n\nUse this endpoint when disable auto-renewal for a subscription.\n\n- **Method**: `DELETE`\n- **Path**: `/api/billing/v1/subscriptions/{subscriptionId}/auto-renewal/disable`\n\n#### billing_enableAutoRenewalV1\n\nEnable auto-renewal for a subscription.\n\nUse this endpoint when enable auto-renewal for a subscription.\n\n- **Method**: `PATCH`\n- **Path**: `/api/billing/v1/subscriptions/{subscriptionId}/auto-renewal/enable`\n\n### `hostinger-dns-mcp`\n\n#### DNS_getDNSSnapshotV1\n\nRetrieve particular DNS snapshot with contents of DNS zone records.\n\nUse this endpoint to view historical DNS configurations for domains.\n\n- **Method**: `GET`\n- **Path**: `/api/dns/v1/snapshots/{domain}/{snapshotId}`\n\n#### DNS_getDNSSnapshotListV1\n\nRetrieve DNS snapshots for a domain.\n\nUse this endpoint to view available DNS backup points for restoration.\n\n- **Method**: `GET`\n- **Path**: `/api/dns/v1/snapshots/{domain}`\n\n#### DNS_restoreDNSSnapshotV1\n\nRestore DNS zone to the selected snapshot.\n\nUse this endpoint to revert domain DNS to a previous configuration.\n\n- **Method**: `POST`\n- **Path**: `/api/dns/v1/snapshots/{domain}/{snapshotId}/restore`\n\n#### DNS_getDNSRecordsV1\n\nRetrieve DNS zone records for a specific domain.\n\nUse this endpoint to view current DNS configuration for domain management.\n\n- **Method**: `GET`\n- **Path**: `/api/dns/v1/zones/{domain}`\n\n#### DNS_updateDNSRecordsV1\n\nUpdate DNS records for the selected domain.\n\nUsing `overwrite = true` will replace existing records with the provided ones. \nOtherwise existing records will be updated and new records will be added.\n\nUse this endpoint to modify domain DNS configuration.\n\n- **Method**: `PUT`\n- **Path**: `/api/dns/v1/zones/{domain}`\n\n#### DNS_deleteDNSRecordsV1\n\nDelete DNS records for the selected domain.\n\nTo filter which records to delete, add the `name` of the record and `type` to the filter. \nMultiple filters can be provided with single request.\n\nIf you have multiple records with the same name and type, and you want to delete only part of them,\nrefer to the `Update zone records` endpoint.\n\nUse this endpoint to remove specific DNS records from domains.\n\n- **Method**: `DELETE`\n- **Path**: `/api/dns/v1/zones/{domain}`\n\n#### DNS_resetDNSRecordsV1\n\nReset DNS zone to the default records.\n\nUse this endpoint to restore domain DNS to original configuration.\n\n- **Method**: `POST`\n- **Path**: `/api/dns/v1/zones/{domain}/reset`\n\n#### DNS_validateDNSRecordsV1\n\nValidate DNS records prior to update for the selected domain.\n\nIf the validation is successful, the response will contain `200 Success` code.\nIf there is validation error, the response will fail with `422 Validation error` code.\n\nUse this endpoint to verify DNS record validity before applying changes.\n\n- **Method**: `POST`\n- **Path**: `/api/dns/v1/zones/{domain}/validate`\n\n### `hostinger-domains-mcp`\n\n#### v2_getDomainVerificationsDIRECT\n\nRetrieve a list of pending and completed domain verifications.\n\n- **Method**: `GET`\n- **Path**: `/api/v2/direct/verifications/active`\n\n#### domains_checkDomainAvailabilityV1\n\nCheck availability of domain names across multiple TLDs.\n\nMultiple TLDs can be checked at once.\nIf you want alternative domains with response, provide only one TLD and set `with_alternatives` to `true`.\nTLDs should be provided without leading dot (e.g. `com`, `net`, `org`).\n\nEndpoint has rate limit of 10 requests per minute.\n\nUse this endpoint to verify domain availability before purchase.\n\n- **Method**: `POST`\n- **Path**: `/api/domains/v1/availability`\n\n#### domains_getDomainForwardingV1\n\nRetrieve domain forwarding data.\n\nUse this endpoint to view current redirect configuration for domains.\n\n- **Method**: `GET`\n- **Path**: `/api/domains/v1/forwarding/{domain}`\n\n#### domains_deleteDomainForwardingV1\n\nDelete domain forwarding data.\n\nUse this endpoint to remove redirect configuration from domains.\n\n- **Method**: `DELETE`\n- **Path**: `/api/domains/v1/forwarding/{domain}`\n\n#### domains_createDomainForwardingV1\n\nCreate domain forwarding configuration.\n\nUse this endpoint to set up domain redirects to other URLs.\n\n- **Method**: `POST`\n- **Path**: `/api/domains/v1/forwarding`\n\n#### domains_enableDomainLockV1\n\nEnable 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.\n\n- **Method**: `PUT`\n- **Path**: `/api/domains/v1/portfolio/{domain}/domain-lock`\n\n#### domains_disableDomainLockV1\n\nDisable domain lock for the domain.\n\nDomain lock needs to be disabled before transferring the domain to another registrar.\n\nUse this endpoint to prepare domains for transfer to other registrars.\n\n- **Method**: `DELETE`\n- **Path**: `/api/domains/v1/portfolio/{domain}/domain-lock`\n\n#### domains_getDomainDetailsV1\n\nRetrieve detailed information for specified domain.\n\nUse this endpoint to view comprehensive domain configuration and status.\n\n- **Method**: `GET`\n- **Path**: `/api/domains/v1/portfolio/{domain}`\n\n#### domains_getDomainListV1\n\nRetrieve all domains associated with your account.\n\nUse this endpoint to view user's domain portfolio.\n\n- **Method**: `GET`\n- **Path**: `/api/domains/v1/portfolio`\n\n#### domains_purchaseNewDomainV1\n\nPurchase 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.\n\n- **Method**: `POST`\n- **Path**: `/api/domains/v1/portfolio`\n\n#### domains_enablePrivacyProtectionV1\n\nEnable privacy protection for the domain.\n\nWhen privacy protection is enabled, domain owner's personal information is hidden from public WHOIS database.\n\nUse this endpoint to protect domain owner's personal information from public view.\n\n- **Method**: `PUT`\n- **Path**: `/api/domains/v1/portfolio/{domain}/privacy-protection`\n\n#### domains_disablePrivacyProtectionV1\n\nDisable privacy protection for the domain.\n\nWhen privacy protection is disabled, domain owner's personal information is visible in public WHOIS database.\n\nUse this endpoint to make domain owner's information publicly visible.\n\n- **Method**: `DELETE`\n- **Path**: `/api/domains/v1/portfolio/{domain}/privacy-protection`\n\n#### domains_updateDomainNameserversV1\n\nSet nameservers for a specified domain.\n\nBe aware, that improper nameserver configuration can lead to the domain being unresolvable or unavailable.\n\nUse this endpoint to configure custom DNS hosting for domains.\n\n- **Method**: `PUT`\n- **Path**: `/api/domains/v1/portfolio/{domain}/nameservers`\n\n#### domains_getWHOISProfileV1\n\nRetrieve a WHOIS contact profile.\n\nUse this endpoint to view domain registration contact information.\n\n- **Method**: `GET`\n- **Path**: `/api/domains/v1/whois/{whoisId}`\n\n#### domains_deleteWHOISProfileV1\n\nDelete WHOIS contact profile.\n\nUse this endpoint to remove unused contact profiles from account.\n\n- **Method**: `DELETE`\n- **Path**: `/api/domains/v1/whois/{whoisId}`\n\n#### domains_getWHOISProfileListV1\n\nRetrieve WHOIS contact profiles.\n\nUse this endpoint to view available contact profiles for domain registration.\n\n- **Method**: `GET`\n- **Path**: `/api/domains/v1/whois`\n\n#### domains_createWHOISProfileV1\n\nCreate WHOIS contact profile.\n\nUse this endpoint to add new contact information for domain registration.\n\n- **Method**: `POST`\n- **Path**: `/api/domains/v1/whois`\n\n#### domains_getWHOISProfileUsageV1\n\nRetrieve domain list where provided WHOIS contact profile is used.\n\nUse this endpoint to view which domains use specific contact profiles.\n\n- **Method**: `GET`\n- **Path**: `/api/domains/v1/whois/{whoisId}/usage`\n\n### `hostinger-hosting-mcp`\n\n#### hosting_importWordpressWebsite\n\nImport a WordPress website from an archive file to a hosting server. This tool uploads a website archive (zip, tar, tar.gz, etc.) and a database dump (.sql file) to deploy a complete WordPress website. The archive will be extracted on the server automatically. Note: This process may take a while for larger sites. After upload completion, files are being extracted and the site will be available in a few minutes. The username will be automatically resolved from the domain.\n\n- **Method**: `custom`\n- **Path**: `custom`\n\n#### hosting_deployWordpressPlugin\n\nDeploy a WordPress plugin from a directory to a hosting server. This tool uploads all plugin files and triggers plugin deployment.\n\n- **Method**: `custom`\n- **Path**: `custom`\n\n#### hosting_deployWordpressTheme\n\nDeploy a WordPress theme from a directory to a hosting server. This tool uploads all theme files and triggers theme deployment. The uploaded theme can optionally be activated after deployment.\n\n- **Method**: `custom`\n- **Path**: `custom`\n\n#### hosting_deployJsApplication\n\nDeploy a JavaScript application from an archive file to a hosting server. IMPORTANT: the archive must ONLY contain application source files, not the build output, skip node_modules directory; also exclude all files matched by .gitignore if the ignore file exists. The build process will be triggered automatically on the server after the archive is uploaded. After deployment, use the hosting_listJsDeployments tool to check deployment status and track build progress.\n\n- **Method**: `custom`\n- **Path**: `custom`\n\n#### hosting_deployStaticWebsite\n\nDeploy a static website from an archive file to a hosting server. IMPORTANT: This tool only works for static websites with no build process. The archive must contain pre-built static files (HTML, CSS, JavaScript, images, etc.) ready to be served. If the website has a package.json file or requires a build command, use hosting_deployJsApplication instead. The archive will be extracted and deployed directly without any build steps. The username will be automatically resolved from the domain.\n\n- **Method**: `custom`\n- **Path**: `custom`\n\n#### hosting_listJsDeployments\n\nList javascript application deployments for checking their status. Use this tool when customer asks for the status of the deployment. This tool retrieves a paginated list of Node.js application deployments for a domain with optional filtering by deployment states.\n\n- **Method**: `custom`\n- **Path**: `custom`\n\n#### hosting_showJsDeploymentLogs\n\nRetrieve logs for a specified JavaScript application deployment for debugging purposes in case of failure.\n\n- **Method**: `custom`\n- **Path**: `custom`\n\n#### hosting_listAvailableDatacentersV1\n\nRetrieve 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.\n\n- **Method**: `GET`\n- **Path**: `/api/hosting/v1/datacenters`\n\n#### hosting_generateAFreeSubdomainV1\n\nGenerate 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.\n\n- **Method**: `POST`\n- **Path**: `/api/hosting/v1/domains/free-subdomains`\n\n#### hosting_verifyDomainOwnershipV1\n\nVerify ownership of a single domain and return the verification status.\n\nUse this endpoint to check if a domain is accessible for you before using it for new websites.\nIf the domain is accessible, the response will have `is_accessible: true`.\nIf not, add the given TXT record to your domain's DNS records and try verifying again.\nKeep in mind that it may take up to 10 minutes for new TXT DNS records to propagate.\n\nSkip this verification when using Hostinger's free subdomains (*.hostingersite.com).\n\n- **Method**: `POST`\n- **Path**: `/api/hosting/v1/domains/verify-ownership`\n\n#### hosting_listOrdersV1\n\nRetrieve 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.\n\n- **Method**: `GET`\n- **Path**: `/api/hosting/v1/orders`\n\n#### hosting_listWebsitesV1\n\nRetrieve 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.\n\n- **Method**: `GET`\n- **Path**: `/api/hosting/v1/websites`\n\n#### hosting_createWebsiteV1\n\nCreate 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.\n\n- **Method**: `POST`\n- **Path**: `/api/hosting/v1/websites`\n\n### `hostinger-reach-mcp`\n\n#### reach_deleteAContactV1\n\nDelete a contact with the specified UUID.\n\nThis endpoint permanently removes a contact from the email marketing system.\n\n- **Method**: `DELETE`\n- **Path**: `/api/reach/v1/contacts/{uuid}`\n\n#### reach_listContactGroupsV1\n\nGet a list of all contact groups.\n\nThis endpoint returns a list of contact groups that can be used to organize contacts.\n\n- **Method**: `GET`\n- **Path**: `/api/reach/v1/contacts/groups`\n\n#### reach_listContactsV1\n\nGet a list of contacts, optionally filtered by group and subscription status.\n\nThis endpoint returns a paginated list of contacts with their basic information.\nYou can filter contacts by group UUID and subscription status.\n\n- **Method**: `GET`\n- **Path**: `/api/reach/v1/contacts`\n\n#### reach_createANewContactV1\n\nCreate 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.\n\n- **Method**: `POST`\n- **Path**: `/api/reach/v1/contacts`\n\n#### reach_listSegmentsV1\n\nGet a list of all contact segments.\n\nThis endpoint returns a list of contact segments that can be used to organize contacts.\n\n- **Method**: `GET`\n- **Path**: `/api/reach/v1/segmentation/segments`\n\n#### reach_createANewContactSegmentV1\n\nCreate a new contact segment.\n\nThis endpoint allows creating a new contact segment that can be used to organize contacts.\nThe segment can be configured with specific criteria like email, name, subscription status, etc.\n\n- **Method**: `POST`\n- **Path**: `/api/reach/v1/segmentation/segments`\n\n#### reach_listSegmentContactsV1\n\nRetrieve contacts associated with a specific segment.\n\nThis endpoint allows you to fetch and filter contacts that belong to a particular segment,\nidentified by its UUID.\n\n- **Method**: `GET`\n- **Path**: `/api/reach/v1/segmentation/segments/{segmentUuid}/contacts`\n\n#### reach_getSegmentDetailsV1\n\nGet details of a specific segment.\n\nThis endpoint retrieves information about a single segment identified by UUID.\nSegments are used to organize and group contacts based on specific criteria.\n\n- **Method**: `GET`\n- **Path**: `/api/reach/v1/segmentation/segments/{segmentUuid}`\n\n#### reach_createNewContactsV1\n\nCreate 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.\n\n- **Method**: `POST`\n- **Path**: `/api/reach/v1/profiles/{profileUuid}/contacts`\n\n#### reach_listProfilesV1\n\nThis endpoint returns all profiles available to the client, including their basic information.\n\n- **Method**: `GET`\n- **Path**: `/api/reach/v1/profiles`\n\n### `hostinger-vps-mcp`\n\n#### VPS_getDataCenterListV1\n\nRetrieve all available data centers.\n\nUse this endpoint to view location options before deploying VPS instances.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/data-centers`\n\n#### VPS_getProjectContainersV1\n\nRetrieves 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.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/containers`\n\n#### VPS_getProjectContentsV1\n\nRetrieves 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.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}`\n\n#### VPS_deleteProjectV1\n\nCompletely removes a Docker Compose project from the virtual machine, stopping all containers and cleaning up \nassociated resources including networks, volumes, and images. \n\nThis operation is irreversible and will delete all project data. \n\nUse this when you want to permanently remove a project and free up system resources.\n\n- **Method**: `DELETE`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/down`\n\n#### VPS_getProjectListV1\n\nRetrieves 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.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/docker`\n\n#### VPS_createNewProjectV1\n\nDeploy 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.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/docker`\n\n#### VPS_getProjectLogsV1\n\nRetrieves 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.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/logs`\n\n#### VPS_restartProjectV1\n\nRestarts 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.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/restart`\n\n#### VPS_startProjectV1\n\nStarts all services in a Docker Compose project that are currently stopped. \n\nThis operation brings up containers in the correct dependency order as defined in the compose file. \n\nUse this to resume a project that was previously stopped or to start services after a system reboot.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/start`\n\n#### VPS_stopProjectV1\n\nStops 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.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/stop`\n\n#### VPS_updateProjectV1\n\nUpdates 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.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/update`\n\n#### VPS_activateFirewallV1\n\nActivate a firewall for a specified virtual machine.\n\nOnly one firewall can be active for a virtual machine at a time.\n\nUse this endpoint to apply firewall rules to VPS instances.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/firewall/{firewallId}/activate/{virtualMachineId}`\n\n#### VPS_deactivateFirewallV1\n\nDeactivate a firewall for a specified virtual machine.\n\nUse this endpoint to remove firewall protection from VPS instances.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/firewall/{firewallId}/deactivate/{virtualMachineId}`\n\n#### VPS_getFirewallDetailsV1\n\nRetrieve firewall by its ID and rules associated with it.\n\nUse this endpoint to view specific firewall configuration and rules.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/firewall/{firewallId}`\n\n#### VPS_deleteFirewallV1\n\nDelete a specified firewall.\n\nAny virtual machine that has this firewall activated will automatically have it deactivated.\n\nUse this endpoint to remove unused firewall configurations.\n\n- **Method**: `DELETE`\n- **Path**: `/api/vps/v1/firewall/{firewallId}`\n\n#### VPS_getFirewallListV1\n\nRetrieve all available firewalls.\n\nUse this endpoint to view existing firewall configurations.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/firewall`\n\n#### VPS_createNewFirewallV1\n\nCreate a new firewall.\n\nUse this endpoint to set up new firewall configurations for VPS security.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/firewall`\n\n#### VPS_updateFirewallRuleV1\n\nUpdate 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.\n\n- **Method**: `PUT`\n- **Path**: `/api/vps/v1/firewall/{firewallId}/rules/{ruleId}`\n\n#### VPS_deleteFirewallRuleV1\n\nDelete 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.\n\n- **Method**: `DELETE`\n- **Path**: `/api/vps/v1/firewall/{firewallId}/rules/{ruleId}`\n\n#### VPS_createFirewallRuleV1\n\nCreate 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.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/firewall/{firewallId}/rules`\n\n#### VPS_syncFirewallV1\n\nSync a firewall for a specified virtual machine.\n\nFirewall can lose sync with virtual machine if the firewall has new rules added, removed or updated.\n\nUse this endpoint to apply updated firewall rules to VPS instances.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/firewall/{firewallId}/sync/{virtualMachineId}`\n\n#### VPS_getPostInstallScriptV1\n\nRetrieve post-install script by its ID.\n\nUse this endpoint to view specific automation script details.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/post-install-scripts/{postInstallScriptId}`\n\n#### VPS_updatePostInstallScriptV1\n\nUpdate a specific post-install script.\n\nUse this endpoint to modify existing automation scripts.\n\n- **Method**: `PUT`\n- **Path**: `/api/vps/v1/post-install-scripts/{postInstallScriptId}`\n\n#### VPS_deletePostInstallScriptV1\n\nDelete a post-install script from your account.\n       \nUse this endpoint to remove unused automation scripts.\n\n- **Method**: `DELETE`\n- **Path**: `/api/vps/v1/post-install-scripts/{postInstallScriptId}`\n\n#### VPS_getPostInstallScriptsV1\n\nRetrieve post-install scripts associated with your account.\n\nUse this endpoint to view available automation scripts for VPS deployment.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/post-install-scripts`\n\n#### VPS_createPostInstallScriptV1\n\nAdd 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.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/post-install-scripts`\n\n#### VPS_attachPublicKeyV1\n\nAttach existing public keys from your account to a specified virtual machine.\n\nMultiple keys can be attached to a single virtual machine.\n\nUse this endpoint to enable SSH key authentication for VPS instances.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/public-keys/attach/{virtualMachineId}`\n\n#### VPS_deletePublicKeyV1\n\nDelete a public key from your account. \n\n**Deleting public key from account does not remove it from virtual machine** \n       \nUse this endpoint to remove unused SSH keys from account.\n\n- **Method**: `DELETE`\n- **Path**: `/api/vps/v1/public-keys/{publicKeyId}`\n\n#### VPS_getPublicKeysV1\n\nRetrieve public keys associated with your account.\n\nUse this endpoint to view available SSH keys for VPS authentication.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/public-keys`\n\n#### VPS_createPublicKeyV1\n\nAdd a new public key to your account.\n\nUse this endpoint to register SSH keys for VPS authentication.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/public-keys`\n\n#### VPS_getTemplateDetailsV1\n\nRetrieve detailed information about a specific OS template for virtual machines.\n\nUse this endpoint to view specific template specifications before deployment.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/templates/{templateId}`\n\n#### VPS_getTemplatesV1\n\nRetrieve available OS templates for virtual machines.\n\nUse this endpoint to view operating system options before creating or recreating VPS instances.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/templates`\n\n#### VPS_getActionDetailsV1\n\nRetrieve detailed information about a specific action performed on a specified virtual machine.\n\nUse this endpoint to monitor specific VPS operation status and details.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/actions/{actionId}`\n\n#### VPS_getActionsV1\n\nRetrieve 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.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/actions`\n\n#### VPS_getAttachedPublicKeysV1\n\nRetrieve public keys attached to a specified virtual machine.\n\nUse this endpoint to view SSH keys configured for specific VPS instances.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/public-keys`\n\n#### VPS_getBackupsV1\n\nRetrieve backups for a specified virtual machine.\n\nUse this endpoint to view available backup points for VPS data recovery.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/backups`\n\n#### VPS_restoreBackupV1\n\nRestore a backup for a specified virtual machine.\n\nThe system will then initiate the restore process, which may take some time depending on the size of the backup.\n\n**All data on the virtual machine will be overwritten with the data from the backup.**\n\nUse this endpoint to recover VPS data from backup points.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/backups/{backupId}/restore`\n\n#### VPS_setHostnameV1\n\nSet hostname for a specified virtual machine.\n\nChanging hostname does not update PTR record automatically.\nIf you want your virtual machine to be reachable by a hostname, \nyou need to point your domain A/AAAA records to virtual machine IP as well.\n\nUse this endpoint to configure custom hostnames for VPS instances.\n\n- **Method**: `PUT`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/hostname`\n\n#### VPS_resetHostnameV1\n\nReset hostname and PTR record of a specified virtual machine to default value.\n\nUse this endpoint to restore default hostname configuration for VPS instances.\n\n- **Method**: `DELETE`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/hostname`\n\n#### VPS_getVirtualMachineDetailsV1\n\nRetrieve detailed information about a specified virtual machine.\n\nUse this endpoint to view comprehensive VPS configuration and status.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}`\n\n#### VPS_getVirtualMachinesV1\n\nRetrieve all available virtual machines.\n\nUse this endpoint to view available VPS instances.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/virtual-machines`\n\n#### VPS_purchaseNewVirtualMachineV1\n\nPurchase 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.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines`\n\n#### VPS_getScanMetricsV1\n\nRetrieve 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.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/monarx`\n\n#### VPS_installMonarxV1\n\nInstall 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.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/monarx`\n\n#### VPS_uninstallMonarxV1\n\nUninstall the Monarx malware scanner on a specified virtual machine.\n\nIf Monarx is not installed, the request will still be processed without any effect.\n\nUse this endpoint to remove malware scanner from VPS instances.\n\n- **Method**: `DELETE`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/monarx`\n\n#### VPS_getMetricsV1\n\nRetrieve historical metrics for a specified virtual machine.\n\nIt includes the following metrics: \n- CPU usage\n- Memory usage\n- Disk usage\n- Network usage\n- Uptime\n\nUse this endpoint to monitor VPS performance and resource utilization over time.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/metrics`\n\n#### VPS_setNameserversV1\n\nSet 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.\n\n- **Method**: `PUT`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/nameservers`\n\n#### VPS_createPTRRecordV1\n\nCreate or update a PTR (Pointer) record for a specified virtual machine.\n\nUse this endpoint to configure reverse DNS lookup for VPS IP addresses.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/ptr/{ipAddressId}`\n\n#### VPS_deletePTRRecordV1\n\nDelete 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.\n\n- **Method**: `DELETE`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/ptr/{ipAddressId}`\n\n#### VPS_setPanelPasswordV1\n\nSet 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.\n\n- **Method**: `PUT`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/panel-password`\n\n#### VPS_startRecoveryModeV1\n\nInitiate recovery mode for a specified virtual machine.\n\nRecovery mode is a special state that allows users to perform system rescue operations, \nsuch as repairing file systems, recovering data, or troubleshooting issues that prevent the virtual machine \nfrom booting normally. \n\nVirtual machine will boot recovery disk image and original disk image will be mounted in `/mnt` directory.\n\nUse this endpoint to enable system rescue operations on VPS instances.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/recovery`\n\n#### VPS_stopRecoveryModeV1\n\nStop recovery mode for a specified virtual machine.\n\nIf virtual machine is not in recovery mode, this operation will fail.\n\nUse this endpoint to exit system rescue mode and return VPS to normal operation.\n\n- **Method**: `DELETE`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/recovery`\n\n#### VPS_recreateVirtualMachineV1\n\nRecreate 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.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/recreate`\n\n#### VPS_restartVirtualMachineV1\n\nRestart a specified virtual machine by fully stopping and starting it.\n\nIf the virtual machine was stopped, it will be started.\n\nUse this endpoint to reboot VPS instances.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/restart`\n\n#### VPS_setRootPasswordV1\n\nSet 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.\n\n- **Method**: `PUT`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/root-password`\n\n#### VPS_setupPurchasedVirtualMachineV1\n\nSetup newly purchased virtual machine with `initial` state.\n\nUse this endpoint to configure and initialize purchased VPS instances.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/setup`\n\n#### VPS_getSnapshotV1\n\nRetrieve snapshot for a specified virtual machine.\n\nUse this endpoint to view current VPS snapshot information.\n\n- **Method**: `GET`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/snapshot`\n\n#### VPS_createSnapshotV1\n\nCreate a snapshot of a specified virtual machine.\n\nA snapshot captures the state and data of the virtual machine at a specific point in time, \nallowing users to restore the virtual machine to that state if needed. \nThis operation is useful for backup purposes, system recovery, \nand testing changes without affecting the current state of the virtual machine.\n\n**Creating new snapshot will overwrite the existing snapshot!**\n\nUse this endpoint to capture VPS state for backup and recovery purposes.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/snapshot`\n\n#### VPS_deleteSnapshotV1\n\nDelete a snapshot of a specified virtual machine.\n\nUse this endpoint to remove VPS snapshots.\n\n- **Method**: `DELETE`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/snapshot`\n\n#### VPS_restoreSnapshotV1\n\nRestore 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.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/snapshot/restore`\n\n#### VPS_startVirtualMachineV1\n\nStart a specified virtual machine.\n\nIf the virtual machine is already running, the request will still be processed without any effect.\n\nUse this endpoint to power on stopped VPS instances.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/start`\n\n#### VPS_stopVirtualMachineV1\n\nStop a specified virtual machine.\n\nIf the virtual machine is already stopped, the request will still be processed without any effect.\n\nUse this endpoint to power off running VPS instances.\n\n- **Method**: `POST`\n- **Path**: `/api/vps/v1/virtual-machines/{virtualMachineId}/stop`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhostinger%2Fapi-mcp-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhostinger%2Fapi-mcp-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhostinger%2Fapi-mcp-server/lists"}