MCP server for Hostinger API
Valid MCP server (1 strong, 1 medium validity signals). No known CVEs in dependencies. Package registry verified. Imported from the Official MCP Registry.
1 file analyzed · 1 issue found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Set these up before or after installing:
Environment variable: API_TOKEN
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-hostinger-hostinger-api-mcp": {
"env": {
"API_TOKEN": "your-api-token-here"
},
"args": [
"-y",
"hostinger-api-mcp"
],
"command": "npx"
}
}
}From the project's GitHub README.
Model Context Protocol (MCP) server for Hostinger API.
If you don't have Node.js installed, you can download it from the official website. Alternatively, you can use a package manager like Homebrew (for macOS) or Chocolatey (for Windows) to install Node.js.
We recommend using NVM (Node Version Manager) to install and manage installed Node.js versions. After installing NVM, you can install Node.js with the following command:
nvm install v24
nvm use v24
To install the MCP server, run one of the following command, depending on your package manager:
# Install globally from npm
npm install -g hostinger-api-mcp
# Or with yarn
yarn global add hostinger-api-mcp
# Or with pnpm
pnpm add -g hostinger-api-mcp
To update the MCP server to the latest version, use one of the following commands, depending on your package manager:
# Update globally from npm
npm update -g hostinger-api-mcp
# Or with yarn
yarn global upgrade hostinger-api-mcp
# Or with pnpm
pnpm update -g hostinger-api-mcp
The following environment variables can be configured when running the server:
DEBUG: Enable debug logging (true/false) (default: false)API_TOKEN: Your API token, which will be sent in the Authorization header.{
"mcpServers": {
"hostinger-api": {
"command": "hostinger-api-mcp",
"env": {
"DEBUG": "false",
"API_TOKEN": "YOUR API TOKEN"
}
}
}
}
The MCP server supports two transport modes:
The server can use standard input / output (stdio) transport (default). This provides local streaming:
The server can use HTTP streaming transport. This provides bidirectional streaming over HTTP:
# Default HTTP transport on localhost:8100
hostinger-api-mcp --http
# Specify custom host and port
hostinger-api-mcp --http --host 0.0.0.0 --port 8150
Options:
--http Use HTTP streaming transport
--stdio Use Server-Sent Events transport (default)
--host {host} Hostname or IP address to listen on (default: 127.0.0.1)
--port {port} Port to bind to (default: 8100)
--help Show help message
This server implements the Model Context Protocol (MCP) and can be used with any MCP-compatible consumer.
Example of connecting to this server using HTTP streaming transport:
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
// Create HTTP transport
const transport = new StreamableHTTPClientTransport({
url: "http://localhost:8100/",
headers: {
"Authorization": `Bearer ${process.env.API_TOKEN}`
}
});
// Connect to the MCP server
const client = new Client({
name: "my-client",
version: "1.0.0"
}, {
capabilities: {}
});
await client.connect(transport);
// List available tools
const { tools } = await client.listTools();
console.log("Available tools:", tools);
// Call a tool
const result = await client.callTool({
name: "billing_getCatalogItemListV1",
arguments: { category: "DOMAIN" }
});
console.log("Tool result:", result);
This MCP server provides the following tools:
Import 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.
Parameters:
domain: Domain name associated with the hosting account (e.g., example.com) (required)archivePath: Absolute or relative path to the website archive file. Supported formats: zip, tar, tar.gz, tgz, 7z, gz, gzip. If user provides directory path, create archive from it before proceeding using EXACTLY this naming pattern: directoryname_YYYYMMDD_HHMMSS.zip (e.g., mywebsite_20250115_143022.zip) (required)databaseDump: Absolute or relative path to a database dump file (.sql) (required)Deploy a WordPress plugin from a directory to a hosting server. This tool uploads all plugin files and triggers plugin deployment.
Parameters:
domain: Domain name associated with the hosting account (e.g., example.com) (required)slug: WordPress plugin slug (e.g., omnisend) (required)pluginPath: Absolute or relative path to the plugin directory containing all plugin files (required)Deploy 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.
Parameters:
domain: Domain name associated with the hosting account (e.g., example.com) (required)slug: WordPress theme slug (e.g., twentytwentyfive) (required)themePath: Absolute or relative path to the theme directory containing all theme files (required)activate: Whether to activate the theme after deployment (default: false)Deploy 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.
Parameters:
domain: Domain name associated with the hosting account (e.g., example.com) (required)archivePath: Absolute or relative path to the application archive file. Supported formats: zip, tar, tar.gz, tgz, 7z, gz, gzip. If user provides directory path, create archive from it before proceeding. IMPORTANT: the archive must ONLY contain application source files, not the build output, skip node_modules directory. (required)removeArchive: Whether to remove the archive file after successful deployment (default: false)Deploy 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.
Parameters:
domain: Domain name associated with the hosting account (e.g., example.com) (required)archivePath: Absolute or relative path to the static website archive file. Supported formats: zip, tar, tar.gz, tgz, 7z, gz, gzip. If user provides directory path, create archive from it before proceeding using EXACTLY this naming pattern: directoryname_YYYYMMDD_HHMMSS.zip (e.g., mystaticwebsite_20250115_143022.zip) (required)removeArchive: Whether to remove the archive file after successful deployment (default: false)List 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.
Parameters:
domain: Domain name associated with the hosting account (e.g., example.com) (required)page: Page number for pagination (optional)perPage: Number of items per page (optional)states: Filter by deployment states (optional). Valid values: pending, completed, running, failedRetrieve logs for a specified JavaScript application deployment for debugging purposes in case of failure.
Parameters:
domain: Domain name associated with the hosting account (e.g., example.com) (required)fromLine: Line from which to retrieve logs (optional, default 0)buildUuid: UUID of the JavaScript deployment build (required)Retrieve catalog items available for order.
Prices in catalog items is displayed as cents (without floating point),
e.g: float 17.99 is displayed as integer 1799.
Use this endpoint to view available services and pricing before placing orders.
GET/api/billing/v1/catalogParameters:
category: Filter catalog items by categoryname: Filter catalog items by name. Use * for wildcard search, e.g. .COM* to find .com domainSet the default payment method for your account.
Use this endpoint to configure the primary payment method for future orders.
POST/api/billing/v1/payment-methods/{paymentMethodId}Parameters:
paymentMethodId: Payment method ID (required)Delete a payment method from your account.
Use this endpoint to remove unused payment methods from user accounts.
DELETE/api/billing/v1/payment-methods/{paymentMethodId}Parameters:
paymentMethodId: Payment method ID (required)Retrieve available payment methods that can be used for placing new orders.
If you want to add new payment method, please use hPanel.
Use this endpoint to view available payment options before creating orders.
GET/api/billing/v1/payment-methodsRetrieve a list of all subscriptions associated with your account.
Use this endpoint to monitor active services and billing status.
GET/api/billing/v1/subscriptionsDisable auto-renewal for a subscription.
Use this endpoint when disable auto-renewal for a subscription.
DELETE/api/billing/v1/subscriptions/{subscriptionId}/auto-renewal/disableParameters:
subscriptionId: Subscription ID (required)Enable auto-renewal for a subscription.
Use this endpoint when enable auto-renewal for a subscription.
PATCH/api/billing/v1/subscriptions/{subscriptionId}/auto-renewal/enableParameters:
subscriptionId: Subscription ID (required)Retrieve particular DNS snapshot with contents of DNS zone records.
Use this endpoint to view historical DNS configurations for domains.
GET/api/dns/v1/snapshots/{domain}/{snapshotId}Parameters:
domain: Domain name (required)snapshotId: Snapshot ID (required)Retrieve DNS snapshots for a domain.
Use this endpoint to view available DNS backup points for restoration.
GET/api/dns/v1/snapshots/{domain}Parameters:
domain: Domain name (required)Restore DNS zone to the selected snapshot.
Use this endpoint to revert domain DNS to a previous configuration.
POST/api/dns/v1/snapshots/{domain}/{snapshotId}/restoreParameters:
domain: Domain name (required)snapshotId: Snapshot ID (required)Retrieve DNS zone records for a specific domain.
Use this endpoint to view current DNS configuration for domain management.
GET/api/dns/v1/zones/{domain}Parameters:
domain: Domain name (required)Update DNS records for the selected domain.
Using overwrite = true will replace existing records with the provided ones.
Otherwise existing records will be updated and new records will be added.
Use this endpoint to modify domain DNS configuration.
PUT/api/dns/v1/zones/{domain}Parameters:
domain: Domain name (required)overwrite: 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.zone: zone parameter (required)Delete DNS records for the selected domain.
To filter which records to delete, add the name of the record and type to the filter.
Multiple filters can be provided with single request.
If you have multiple records with the same name and type, and you want to delete only part of them,
refer to the Update zone records endpoint.
Use this endpoint to remove specific DNS records from domains.
DELETE/api/dns/v1/zones/{domain}Parameters:
domain: Domain name (required)Reset DNS zone to the default records.
Use this endpoint to restore domain DNS to original configuration.
POST/api/dns/v1/zones/{domain}/resetParameters:
domain: Domain name (required)sync: Determines if operation should be run synchronouslyreset_email_records: Determines if email records should be resetwhitelisted_record_types: Specifies which record types to not resetValidate DNS records prior to update for the selected domain.
If the validation is successful, the response will contain 200 Success code.
If there is validation error, the response will fail with 422 Validation error code.
Use this endpoint to verify DNS record validity before applying changes.
POST/api/dns/v1/zones/{domain}/validateParameters:
domain: Domain name (required)overwrite: 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.zone: zone parameter (required)Retrieve a list of pending and completed domain verifications.
GET/api/v2/direct/verifications/activeCheck availability of domain names across multiple TLDs.
Multiple TLDs can be checked at once.
If you want alternative domains with response, provide only one TLD and set with_alternatives to true.
TLDs should be provided without leading dot (e.g. com, net, org).
Endpoint has rate limit of 10 requests per minute.
Use this endpoint to verify domain availability before purchase.
POST/api/domains/v1/availabilityParameters:
domain: Domain name (without TLD) (required)tlds: TLDs list (required)with_alternatives: Should response include alternativesRetrieve domain forwarding data.
Use this endpoint to view current redirect configuration for domains.
GET/api/domains/v1/forwarding/{domain}Parameters:
domain: Domain name (required)Delete domain forwarding data.
Use this endpoint to remove redirect configuration from domains.
DELETE/api/domains/v1/forwarding/{domain}Parameters:
domain: Domain name (required)Create domain forwarding configuration.
Use this endpoint to set up domain redirects to other URLs.
POST/api/domains/v1/forwardingParameters:
domain: Domain name (required)redirect_type: Redirect type (required)redirect_url: URL to forward domain to (required)Enable domain lock for the domain.
When domain lock is enabled, the domain cannot be transferred to another registrar without first disabling the lock.
Use this endpoint to secure domains against unauthorized transfers.
PUT/api/domains/v1/portfolio/{domain}/domain-lockParameters:
domain: Domain name (required)Disable domain lock for the domain.
Domain lock needs to be disabled before transferring the domain to another registrar.
Use this endpoint to prepare domains for transfer to other registrars.
DELETE/api/domains/v1/portfolio/{domain}/domain-lockParameters:
domain: Domain name (required)Retrieve detailed information for specified domain.
Use this endpoint to view comprehensive domain configuration and status.
GET/api/domains/v1/portfolio/{domain}Parameters:
domain: Domain name (required)Retrieve all domains associated with your account.
Use this endpoint to view user's domain portfolio.
GET/api/domains/v1/portfolioPurchase and register a new domain name.
If registration fails, login to hPanel and check domain registration status.
If no payment method is provided, your default payment method will be used automatically.
If no WHOIS information is provided, default contact information for that TLD will be used. Before making request, ensure WHOIS information for desired TLD exists in your account.
Some TLDs require additional_details to be provided and these will be validated before completing purchase.
Use this endpoint to register new domains for users.
POST/api/domains/v1/portfolioParameters:
domain: Domain name (required)item_id: Catalog price item ID (required)payment_method_id: Payment method ID, default will be used if not provideddomain_contacts: Domain contact informationadditional_details: Additional registration data, possible values depends on TLDcoupons: Discount coupon codesEnable privacy protection for the domain.
When privacy protection is enabled, domain owner's personal information is hidden from public WHOIS database.
Use this endpoint to protect domain owner's personal information from public view.
PUT/api/domains/v1/portfolio/{domain}/privacy-protectionParameters:
domain: Domain name (required)Disable privacy protection for the domain.
When privacy protection is disabled, domain owner's personal information is visible in public WHOIS database.
Use this endpoint to make domain owner's information publicly visible.
DELETE/api/domains/v1/portfolio/{domain}/privacy-protectionParameters:
domain: Domain name (required)Set nameservers for a specified domain.
Be aware, that improper nameserver configuration can lead to the domain being unresolvable or unavailable.
Use this endpoint to configure custom DNS hosting for domains.
PUT/api/domains/v1/portfolio/{domain}/nameserversParameters:
domain: Domain name (required)ns1: First name server (required)ns2: Second name server (required)ns3: Third name serverns4: Fourth name serverRetrieve a WHOIS contact profile.
Use this endpoint to view domain registration contact information.
GET/api/domains/v1/whois/{whoisId}Parameters:
whoisId: WHOIS ID (required)Delete WHOIS contact profile.
Use this endpoint to remove unused contact profiles from account.
DELETE/api/domains/v1/whois/{whoisId}Parameters:
whoisId: WHOIS ID (required)Retrieve WHOIS contact profiles.
Use this endpoint to view available contact profiles for domain registration.
GET/api/domains/v1/whoisParameters:
tld: Filter by TLD (without leading dot)Create WHOIS contact profile.
Use this endpoint to add new contact information for domain registration.
POST/api/domains/v1/whoisParameters:
tld: TLD of the domain (without leading dot) (required)country: ISO 3166 2-letter country code (required)entity_type: Legal entity type (required)tld_details: TLD detailswhois_details: WHOIS details (required)Retrieve domain list where provided WHOIS contact profile is used.
Use this endpoint to view which domains use specific contact profiles.
GET/api/domains/v1/whois/{whoisId}/usageParameters:
whoisId: WHOIS ID (required)Retrieve a list of datacenters available for setting up hosting plans based on available datacenter capacity and hosting plan of your order. The first item in the list is the best match for your specific order requirements.
GET/api/hosting/v1/datacentersParameters:
order_id: Order ID (required)Generate a unique free subdomain that can be used for hosting services without purchasing custom domains. Free subdomains allow you to start using hosting services immediately and you can always connect a custom domain to your site later.
POST/api/hosting/v1/domains/free-subdomainsVerify ownership of a single domain and return the verification status.
Use this endpoint to check if a domain is accessible for you before using it for new websites.
If the domain is accessible, the response will have is_accessible: true.
If not, add the given TXT record to your domain's DNS records and try verifying again.
Keep in mind that it may take up to 10 minutes for new TXT DNS records to propagate.
Skip this verification when using Hostinger's free subdomains (*.hostingersite.com).
POST/api/hosting/v1/domains/verify-ownershipParameters:
domain: Domain to verify ownership for (required)Retrieve a paginated list of orders accessible to the authenticated client.
This endpoint returns orders of your hosting accounts as well as orders of other client hosting accounts that have shared access with you.
Use the available query parameters to filter results by order statuses or specific order IDs for more targeted results.
GET/api/hosting/v1/ordersParameters:
page: Page numberper_page: Number of items per pagestatuses: Filter by order statusesorder_ids: Filter by specific order IDsRetrieve a paginated list of websites (main and addon types) accessible to the authenticated client.
This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you.
Use the available query parameters to filter results by username, order ID, enabled status, or domain name for more targeted results.
GET/api/hosting/v1/websitesParameters:
page: Page numberper_page: Number of items per pageusername: Filter by specific usernameorder_id: Order IDis_enabled: Filter by enabled statusdomain: Filter by domain name (exact match)Create a new website for the authenticated client.
Provide 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.
Subsequent websites will be hosted on the same datacenter automatically.
Website creation takes up to a few minutes to complete. Check the websites list endpoint to see when your new website becomes available.
POST/api/hosting/v1/websitesParameters:
domain: Domain name for the website. Cannot start with "www." (required)order_id: ID of the associated order (required)datacenter_code: Datacenter code. This parameter is required when creating the first website on a new hosting plan.Delete a contact with the specified UUID.
This endpoint permanently removes a contact from the email marketing system.
DELETE/api/reach/v1/contacts/{uuid}Parameters:
uuid: UUID of the contact to delete (required)Get a list of all contact groups.
This endpoint returns a list of contact groups that can be used to organize contacts.
GET/api/reach/v1/contacts/groupsGet a list of contacts, optionally filtered by group and subscription status.
This endpoint returns a paginated list of contacts with their basic information. You can filter contacts by group UUID and subscription status.
GET/api/reach/v1/contactsParameters:
group_uuid: Filter contacts by group UUIDsubscription_status: Filter contacts by subscription statuspage: Page numberCreate a new contact in the email marketing system.
This endpoint allows you to create a new contact with basic information like name, email, and surname.
If double opt-in is enabled, the contact will be created with a pending status and a confirmation email will be sent.
POST/api/reach/v1/contactsParameters:
email: email parameter (required)name: name parametersurname: surname parameternote: note parameterGet a list of all contact segments.
This endpoint returns a list of contact segments that can be used to organize contacts.
GET/api/reach/v1/segmentation/segmentsCreate a new contact segment.
This endpoint allows creating a new contact segment that can be used to organize contacts. The segment can be configured with specific criteria like email, name, subscription status, etc.
POST/api/reach/v1/segmentation/segmentsParameters:
name: name parameter (required)conditions: conditions parameter (required)logic: logic parameter (required)Retrieve contacts associated with a specific segment.
This endpoint allows you to fetch and filter contacts that belong to a particular segment, identified by its UUID.
GET/api/reach/v1/segmentation/segments/{segmentUuid}/contactsParameters:
segmentUuid: Segment uuid parameter (required)page: Page numberper_page: Number of items per pageGet details of a specific segment.
This endpoint retrieves information about a single segment identified by UUID. Segments are used to organize and group contacts based on specific criteria.
GET/api/reach/v1/segmentation/segments/{segmentUuid}Parameters:
segmentUuid: Segment uuid parameter (required)Create a new contact in the email marketing system.
This endpoint allows you to create a new contact with basic information like name, email, and surname.
If double opt-in is enabled, the contact will be created with a pending status and a confirmation email will be sent.
POST/api/reach/v1/profiles/{profileUuid}/contactsParameters:
profileUuid: Profile uuid parameter (required)email: email parameter (required)name: name parametersurname: surname parameternote: note parameterThis endpoint returns all profiles available to the client, including their basic information.
GET/api/reach/v1/profilesRetrieve all available data centers.
Use this endpoint to view location options before deploying VPS instances.
GET/api/vps/v1/data-centersRetrieves a list of all containers belonging to a specific Docker Compose project on the virtual machine.
This endpoint returns detailed information about each container including their current status, port mappings, and runtime configuration.
Use this to monitor the health and state of all services within your Docker Compose project.
GET/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/containersParameters:
virtualMachineId: Virtual Machine ID (required)projectName: Docker Compose project name using alphanumeric characters, dashes, and underscores only (required)Retrieves the complete project information including the docker-compose.yml file contents, project metadata, and current deployment status.
This endpoint provides the full configuration and state details of a specific Docker Compose project.
Use this to inspect project settings, review the compose file, or check the overall project health.
GET/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}Parameters:
virtualMachineId: Virtual Machine ID (required)projectName: Docker Compose project name using alphanumeric characters, dashes, and underscores only (required)Completely removes a Docker Compose project from the virtual machine, stopping all containers and cleaning up associated resources including networks, volumes, and images.
This operation is irreversible and will delete all project data.
Use this when you want to permanently remove a project and free up system resources.
DELETE/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/downParameters:
virtualMachineId: Virtual Machine ID (required)projectName: Docker Compose project name using alphanumeric characters, dashes, and underscores only (required)Retrieves a list of all Docker Compose projects currently deployed on the virtual machine.
This endpoint returns basic information about each project including name,
status, file path and list of containers with details about their names,
image, status, health and ports. Container stats are omitted in this
endpoint. If you need to get detailed information about container with
stats included, use the Get project containers endpoint.
Use this to get an overview of all Docker projects on your VPS instance.
GET/api/vps/v1/virtual-machines/{virtualMachineId}/dockerParameters:
virtualMachineId: Virtual Machine ID (required)Deploy new project from docker-compose.yaml contents or download contents from URL.
URL can be Github repository url in format https://github.com/[user]/[repo] and it will be automatically resolved to docker-compose.yaml file in master branch. Any other URL provided must return docker-compose.yaml file contents.
If project with the same name already exists, existing project will be replaced.
POST/api/vps/v1/virtual-machines/{virtualMachineId}/dockerParameters:
virtualMachineId: Virtual Machine ID (required)project_name: Docker Compose project name using alphanumeric characters, dashes, and underscores only (required)content: URL pointing to docker-compose.yaml file, Github repository or raw YAML content of the compose file (required)environment: Project environment variablesRetrieves aggregated log entries from all services within a Docker Compose project.
This endpoint returns recent log output from each container, organized by service name with timestamps. The response contains the last 300 log entries across all services.
Use this for debugging, monitoring application behavior, and troubleshooting issues across your entire project stack.
GET/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/logsParameters:
virtualMachineId: Virtual Machine ID (required)projectName: Docker Compose project name using alphanumeric characters, dashes, and underscores only (required)Restarts all services in a Docker Compose project by stopping and starting containers in the correct dependency order.
This operation preserves data volumes and network configurations while refreshing the running containers.
Use this to apply configuration changes or recover from service failures.
POST/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/restartParameters:
virtualMachineId: Virtual Machine ID (required)projectName: Docker Compose project name using alphanumeric characters, dashes, and underscores only (required)Starts all services in a Docker Compose project that are currently stopped.
This operation brings up containers in the correct dependency order as defined in the compose file.
Use this to resume a project that was previously stopped or to start services after a system reboot.
POST/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/startParameters:
virtualMachineId: Virtual Machine ID (required)projectName: Docker Compose project name using alphanumeric characters, dashes, and underscores only (required)Stops all running services in a Docker Compose project while preserving container configurations and data volumes.
This operation gracefully shuts down containers in reverse dependency order.
Use this to temporarily halt a project without removing data or configurations.
POST/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/stopParameters:
virtualMachineId: Virtual Machine ID (required)projectName: Docker Compose project name using alphanumeric characters, dashes, and underscores only (required)Updates a Docker Compose project by pulling the latest image versions and recreating containers with new configurations.
This operation preserves data volumes while applying changes from the compose file.
Use this to deploy application updates, apply configuration changes, or refresh container images to their latest versions.
POST/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/updateParameters:
virtualMachineId: Virtual Machine ID (required)projectName: Docker Compose project name using alphanumeric characters, dashes, and underscores only (required)Activate a firewall for a specified virtual machine.
Only one firewall can be active for a virtual machine at a time.
Use this endpoint to apply firewall rules to VPS instances.
POST/api/vps/v1/firewall/{firewallId}/activate/{virtualMachineId}Parameters:
firewallId: Firewall ID (required)virtualMachineId: Virtual Machine ID (required)Deactivate a firewall for a specified virtual machine.
Use this endpoint to remove firewall protection from VPS instances.
POST/api/vps/v1/firewall/{firewallId}/deactivate/{virtualMachineId}Parameters:
firewallId: Firewall ID (required)virtualMachineId: Virtual Machine ID (required)Retrieve firewall by its ID and rules associated with it.
Use this endpoint to view specific firewall configuration and rules.
GET/api/vps/v1/firewall/{firewallId}Parameters:
firewallId: Firewall ID (required)Delete a specified firewall.
Any virtual machine that has this firewall activated will automatically have it deactivated.
Use this endpoint to remove unused firewall configurations.
DELETE/api/vps/v1/firewall/{firewallId}Parameters:
firewallId: Firewall ID (required)Retrieve all available firewalls.
Use this endpoint to view existing firewall configurations.
GET/api/vps/v1/firewallParameters:
page: Page numberCreate a new firewall.
Use this endpoint to set up new firewall configurations for VPS security.
POST/api/vps/v1/firewallParameters:
name: name parameter (required)Update a specific firewall rule from a specified firewall.
Any virtual machine that has this firewall activated will lose sync with the firewall and will have to be synced again manually.
Use this endpoint to modify existing firewall rules.
PUT/api/vps/v1/firewall/{firewallId}/rules/{ruleId}Parameters:
firewallId: Firewall ID (required)ruleId: Firewall Rule ID (required)protocol: protocol parameter (required)port: Port or port range, ex: 1024:2048 (required)source: source parameter (required)source_detail: IP range, CIDR, single IP or any (required)Delete a specific firewall rule from a specified firewall.
Any virtual machine that has this firewall activated will lose sync with the firewall and will have to be synced again manually.
Use this endpoint to remove specific firewall rules.
DELETE/api/vps/v1/firewall/{firewallId}/rules/{ruleId}Parameters:
firewallId: Firewall ID (required)ruleId: Firewall Rule ID (required)Create new firewall rule for a specified firewall.
By default, the firewall drops all incoming traffic, which means you must add accept rules for all ports you want to use.
Any virtual machine that has this firewall activated will lose sync with the firewall and will have to be synced again manually.
Use this endpoint to add new security rules to firewalls.
POST/api/vps/v1/firewall/{firewallId}/rulesParameters:
firewallId: Firewall ID (required)protocol: protocol parameter (required)port: Port or port range, ex: 1024:2048 (required)source: source parameter (required)source_detail: IP range, CIDR, single IP or any (required)Documentation truncated — see the full README on GitHub.
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.