Skip to main content

How to Use Cloudways MCP Server for AI-Based Server Management

Learn how to use Cloudways MCP Server to manage your servers using AI assistants. Connect MCP-compatible tools, run commands in natural language, and perform server operations without manual navigation.

Written by Syed Abuzar Mehdi

Cloudways MCP (Model Context Protocol) Server is a feature that allows AI assistants to interact directly with your Cloudways platform using simple, natural language.

Instead of manually navigating the platform, you can ask an AI tool to perform actions for you. The MCP server connects your AI assistant with Cloudways and converts your requests into actual operations on your servers and applications.

It works by providing structured tools that MCP-compatible clients such as Claude, Cursor, Visual Studio Code Copilot, ChatGPT, and others can use to perform tasks automatically.


How Cloudways MCP Works?

Cloudways MCP works with any tool that supports the Model Context Protocol (MCP), which is an open standard designed to connect AI systems with external platforms.

Below is a simple step-by-step overview of how it works:

  1. Connect your MCP-compatible client to the Cloudways MCP server by following the setup instructions.

  2. Enter your request in the client interface (for example: “List all my servers”).

  3. The client sends your request to the Cloudways MCP server.

  4. The MCP server identifies the required action, verifies your account using your credentials, and performs the task.

  5. The results are returned to your client in a clear and structured format.

This process allows you to manage your Cloudways platform without switching between different tools or dashboards.

Recommended LLM for Cloudways MCP

Cloudways MCP is designed to work with any Large Language Model (LLM). This means you can use it with different AI models depending on your preference.

However, the quality and accuracy of responses may vary based on the model you choose. For better results, we recommend using the following models:

  • Claude Opus 4

  • Claude Sonnet 4

  • GPT-5

  • ChatGPT o3

  • Gemini 2.5 Pro

  • Claude Sonnet 3.5

  • GPT-4.1

  • GPT o4-mini

  • GPT-4o

  • Gemini 2.5 Flash

Why Should You Use Cloudways MCP?

The main benefit of Cloudways MCP is that it removes the need to switch between multiple tools or dashboards.

Cloudways MCP acts as a bridge between your AI assistant and the Cloudways platform. This allows you to stay in your preferred environment while the AI handles infrastructure-related tasks.

With MCP, Cloudways provides a set of tools through a standard interface. Your AI client uses these tools to perform actions such as managing servers, handling applications, or retrieving information.

As a result, you can:

  • Manage your infrastructure using simple, conversational commands

  • Perform tasks faster without manual navigation

  • Get clear and structured responses from your AI tool

All operations are executed using Cloudways-native capabilities, ensuring accuracy and reliability.

For security, authentication is handled using your email and API key. These credentials are securely transmitted as encrypted data over HTTPS, ensuring safe communication between your client and the Cloudways platform.

What You Can Do With Cloudways MCP?

Cloudways MCP provides a set of tools that are directly connected to actions available on the Cloudways platform.

Each tool performs a specific task behind the scenes using Cloudways APIs. Instead of manually making API calls or navigating the platform, you can simply describe what you want to do in plain language, and the MCP client will handle the rest.

For example, when you request an action, the MCP client automatically selects the correct tool, performs the operation, and returns the result in a structured format.

Server Management

Cloudways MCP allows you to manage your servers easily through AI-assisted commands.

With server management tools, you can:

  • Create and set up new servers

  • Start, stop, or restart servers

  • Scale server resources as needed

  • Manage backups and restore points

  • Track the status of ongoing operations (such as server creation or scaling)

These tools help you handle all key server-related tasks without needing to manually interact with the Cloudways platform interface.

Tool

Description

server_list

List all servers with their status, cloud provider, region, IP, and app count.

server_get

Get detailed info about a specific server including all hosted apps and configuration.

server_create

Create a new server on DigitalOcean, AWS, GCE, Vultr, or Linode with an initial application.

server_start

Start a stopped server.

server_stop

Stop a running server.

server_restart

Restart a server to apply configuration changes.

server_delete

Permanently delete a server and all its data.

server_backup

Create a full backup of a server.

server_scale

Upgrade or downgrade server size (CPU/RAM).

server_update_label

Rename a server.

operation_status

Check the status of an async operation.

server_clone

Clone an existing server to a new server with the same applications and, optionally, settings, app domains, cron jobs, and SSL certificates.

server_scale_volume

Change the data volume size on a server (available for Amazon and GCE servers only).

server_disk_usage_fetch

Initiate a disk usage fetch operation for a server.

server_snapshot_frequency_update

Configure the snapshot backup frequency (in hours) for AWS and GCE servers. Send an empty or null value to disable.

server_backup_settings_update

Update the backup settings for a server, including frequency of automatic backups, retention period, off-server storage, local backups, and more.

server_local_backup_delete

Delete the local backups stored on the server itself.

server_package_update

Install, uninstall, or upgrade packages on a server (PHP, MySQL/MariaDB versions, etc.). Use server_packages to discover available packages.

server_maintenance_window_get

Retrieve the configured maintenance window settings for a server (days of the week and time slot) during which Cloudways may apply updates.

server_maintenance_window_update

Update the maintenance window settings for a server by setting the days of the week and preferred time slot.

server_master_username_update

Update the master username for a server (used for SSH/SFTP access).

server_master_password_update

Update the master password for a server (used for SSH/SFTP access).

server_storage_attach

Attach a Block Storage volume to a server (DigitalOcean servers only).

server_storage_scale

Resize the Block Storage volume attached to a server (DigitalOcean servers only).

Application Management

Tools for managing applications hosted on Cloudways servers, including creation, cloning, deletion, backups, and security insights.

Tool

Description

app_list

List all applications on a specific server.

app_get

Get detailed information about a specific application.

app_create

Create a new application (WordPress, Laravel, Magento, etc.).

app_delete

Permanently delete an application and its data.

app_clone

Clone an application on the same server.

app_clone_to_server

Clone an application to a different server.

app_backup

Create a backup of an application.

app_credentials

Get SSH/SFTP credentials for an application.

app_purge_cache

Clear all cache layers for an application.

app_update_label

Rename an application.

app_vulnerabilities_list

List WordPress vulnerabilities with severity scores.

app_vulnerabilities_refresh

Trigger a new vulnerability scan.

staging_app_clone

Clone a staging application to the same server.

staging_app_clone_to_server

Clone a staging application to a different existing server.

app_cname_update

Update an application's primary domain (CNAME).

app_cname_delete

Delete an application's primary domain (CNAME), reverting to the default Cloudways URL.

app_restore

Restore an application to a previous backup version (local or remote).

app_restore_rollback

Roll back the last backup restore action, returning the application to its pre-restore state.

app_backup_status_get

Get the status of an in-progress application backup operation.

app_local_backup_delete

Delete the local backup created as part of a restore operation.

app_aliases_update

Update application aliases (secondary domains pointing to the same application).

app_cron_list_get

Retrieve the list of cron jobs scheduled for an application on a server.

app_cron_list_update

Update the list of cron jobs scheduled for an application on a server.

app_db_password_update

Update the database password used by the application to connect to its MySQL/MariaDB database.

app_symlink_update

Update the symlink target for an application by changing where public_html points.

app_webroot_update

Update the webroot of an application (e.g., point Nginx to /public_html/public for Laravel).

app_cors_headers_update

Update CORS (cross-origin resource sharing) headers for an application

app_webp_redirection_update

Enable or disable WebP redirection and automatically serve WebP versions of images to supported browsers.

app_enforce_https_update

Enable or disable HTTPS redirection for an application (forces HTTP traffic to HTTPS).

app_reset_permissions

Reset file and folder permissions for an application, fixing ownership and modes after manual changes.

app_fpm_settings_update

Configure PHP-FPM settings for an application (workers, max children, request memory, etc.).

app_fpm_settings_get

Retrieve the current PHP-FPM configuration for an application.

app_varnish_settings_get

Retrieve the Varnish configuration (TTL, cacheable paths, exclusions) for an application.

app_varnish_settings_update

Update the Varnish configuration (TTL, cacheable paths, exclusions) for an application

app_credentials_create

Create a new SSH/SFTP access credential for an application (in addition to the master credential).

app_credentials_delete

Delete a specific application access credential.

app_credentials_update

Update a specific application access credential ( rename it, change its password, or both).

app_ssh_access_get

Retrieve the current SSH access status for an application (enabled or disabled).

app_ssh_access_update

Enable or disable SSH access for an application.

app_access_state_get

Retrieve the access state of an application ( publicly accessible or in maintenance mode).

app_settings_get

Retrieve current values of application setting flags (XML-RPC, GEO-IP header, device detection, etc.).

app_access_state_update

Update the access state of an application (public or maintenance mode).

app_geo_ip_header_update

Enable or disable the GEO-IP header. Note that Cloudways injects the visitor's country into the request.

app_xmlrpc_update

Enable or disable WordPress XML-RPC for an application (recommended off for security).

app_device_detection_update

Enable or disable Device Detection for an application (separates desktop and mobile cache buckets).

app_ignore_query_string_update

Enable or disable the Ignore Query String cache rule for an application.

app_php_direct_execution_update

Enable or disable direct PHP file execution from wp-content/uploads (WordPress security setting).

app_cron_optimizer_update

Enable or disable the Cron Optimizer. This replaces WP-Cron with system cron for improved reliability.

app_admin_password_update

Update the admin password of the installed application (e.g., the WordPress admin user's password).

app_password_protection_get

Retrieve the current password protection (htpasswd / HTTP Basic Auth) configuration for an application.

app_password_protection_update

Enable or update password protection (HTTP Basic Auth) for an application.

app_wp_multisite_update

Enable or update the WordPress Multisite configuration (subdomain or subdirectory network).

app_stack_update

Update the application stack version (v1 Hybrid/Apache or v2 Lightning/NGINX).

app_object_cache_update

Enable or disable the WordPress Object Cache (OCP) feature for an application.

Service Management

Tools for managing infrastructure-level services such as web servers, databases, and caching layers. These operations directly impact application availability and performance.

Tool

Description

service_status

Check the status of all services on a server.

service_restart

Restart a specific service (nginx, mysql, php-fpm, etc.).

service_start

Start a stopped service.

service_stop

Stop a running service.

varnish_manage

Enable, disable, or purge Varnish cache at server level.

varnish_app_manage

Enable or disable Varnish cache per application.

Add-on Management

Tools for managing Cloudways add-ons at both account and server levels, including activation, deactivation, and configuration of services like SMTP and DNS.

Tool

Description

addon_list

List all available add-ons with status and pricing.

addon_activate

Activate an add-on on your account.

addon_deactivate

Deactivate an add-on from your account.

addon_activate_on_server

Enable an add-on on a specific server.

addon_deactivate_on_server

Remove an add-on from a server.

Cloudflare CDN

Tools for integrating and managing Cloudflare CDN at the application level, including domain onboarding and verification workflows.

Tool

Description

cloudflare_add_domain

Add a domain to Cloudflare CDN for an application.

cloudflare_get_details

View CDN status, configuration, and usage.

cloudflare_get_txt_records

Retrieve DNS TXT records for domain verification.

DNS Made Easy

Tools for managing DNS zones and records through the DNS Made Easy add-on, including domain lifecycle operations and traffic usage insights.

Tool

Description

dns_made_easy_list_domains

List all managed domains.

dns_made_easy_add_domains

Add domains for DNS management.

dns_made_easy_delete_domains

Delete domains from DNS Made Easy.

dns_made_easy_get_domain_status

Check domain status.

dns_made_easy_list_records

List DNS records for a domain.

dns_made_easy_add_records

Add DNS records.

dns_made_easy_delete_records

Delete DNS records.

dns_made_easy_update_record

Update DNS records.

dns_made_easy_get_domain_usage

View DNS usage statistics.

Server Settings

Tools for viewing and modifying server-level configuration, including PHP settings, MySQL parameters, and automated maintenance operations like disk cleanup.

Tool

Description

server_settings_get

View server and PHP configuration.

server_settings_update

Update PHP and MySQL settings.

server_disk_cleanup_settings_get

View disk cleanup settings.

server_disk_cleanup_settings_update

Configure automated cleanup.

server_disk_cleanup_execute

Execute disk cleanup manually.

Monitoring & Analytics

Tools for retrieving infrastructure metrics, application performance data, and traffic analytics. These support debugging, optimization, and capacity planning workflows.

Tool

Description

monitoring_server_summary

View server bandwidth and disk usage.

monitoring_server_usage

Refresh server usage statistics.

monitoring_server_graph

Retrieve monitoring graphs (CPU, memory, etc.).

monitoring_app_summary

View application-level usage metrics.

analytics_app_traffic

Analyze traffic patterns and sources.

analytics_app_traffic_details

Get detailed traffic data for custom ranges.

analytics_app_php

Analyze PHP performance and slow pages.

analytics_app_mysql

Analyze MySQL queries and performance.

analytics_app_cron

View cron job execution analytics.

Copilot Insights

Tools that provide AI-driven insights and alerts about infrastructure health, risks, and optimization opportunities based on Cloudways Copilot analysis.

Tool

Description

copilot_insights_list

Retrieve insights, alerts, and recommendations for your infrastructure.

Projects

Tools for organizing servers and applications into logical groups. These operations help you structure your Cloudways fleet for easier navigation, client management, and team collaboration.

Tool

Description

project_list

List all Projects on the account (with their IDs, names, and the servers / apps grouped under each).

project_create

Create a new Project on the account (give it a name and an initial set of application members).

project_update

Update an existing Project by its ID by renaming or changing which applications belong to the project.

project_delete

Delete a Project by its ID (This only removes the grouping. The underlying servers and applications are not deleted).

Git Deployment

Tools for managing Git-based deployments on your applications. These operations enable source-controlled code delivery, from setting up SSH deploy keys and linking repositories to pulling the latest commits and reviewing deployment history.

Tool

Description

git_generate_key

Generate a fresh SSH deploy key for an application (Cloudways creates a new key pair on the server; the public half is then registered with the Git repository host so Cloudways can pull from it without a password).

git_key_get

Retrieve the contents of the public SSH key generated for an application. Copy/paste this value into your Git host (GitHub / GitLab / Bitbucket) as a deploy key.

git_branches_get

Refresh and return the list of branches available in the linked Git repository. This can be used to populate a branch selector before cloning or pulling.

git_clone

Clone a Git repository (specific branch) into an application's web root and deploy the initial code. Use this once when first linking a repo. Note that subsequent updates go through git_pull.

git_pull

Pull the latest commits from the linked Git branch and deploy them onto the application.

git_history_get

Retrieve the recent Git deployment history for an application (timestamped list of clone / pull operations with commit hashes and status) to review what was deployed and when.

SSH Key Management

Tools for managing SSH public keys across servers, applications, and system users. These operations control who can authenticate via SSH or SFTP, enabling secure access provisioning and revocation without requiring password-based login.

Tool

Description

ssh_key_create

Add (upload) an SSH public key to a server, an application, or a system user so that the holder of the corresponding private key can SSH/SFTP into that target.

ssh_key_delete

Delete (revoke) a previously added SSH key by its ssh_key_id, removing the holder's ability to SSH/SFTP into the associated server, application, or user.

ssh_key_update

Rename an existing SSH key by its ssh_key_id (updates the label only). To rotate the key material, delete the old key (ssh_key_delete) and add a new one (ssh_key_create).

How to Connect to Cloudways MCP?

Important Prerequisites:

To use Cloudways MCP, you must have a valid Cloudways account with access to the infrastructure resources you intend to use or manage.

You will also need a compatible MCP client.

You will need the following to use the Cloudways MCP server:

Required Headers

Every request to the Cloudways MCP server must include the following headers:

Header

Description

Example

X-CW-Email

Your Cloudways account email

X-CW-Api-Key

Your Cloudways API key

abc123def456...

X-Mcp-Host

The MCP host you are connecting from

cursor, windsurf, claude-desktop, claude-code, vs-code, gemini-cli, codex, codex-cli

Step #1: Generate Cloudways API Credentials

  1. Open the API Integration section from the bottom left

  2. Click Generate API Key (or copy an existing key)

  3. Copy:

    • Your account email

    • Your API key

These will be used in your MCP client configuration.

Step #2: Configure Your MCP Client

Below are client-specific configuration examples. Each client must define:

  • MCP server endpoint

  • Authentication headers

1. Cursor

One-click install:

Click the button below to open Cursor with the Cloudways MCP server pre-configured. You will only need to fill in your Cloudways email and API key in the form that appears, then click Install.

Manual setup:

Config file: ~/.cursor/mcp.json

  1. Open Cursor.

  2. Go to Settings → Tools & MCP → New MCP Server.

  3. This opens ~/.cursor/mcp.json. Add the following configuration:

{
"mcpServers": {
"cloudways": {
"url": "https://mcp.cloudways.com/mcp/",
"headers": {
"X-CW-Email": "<your-cloudways-email>",
"X-CW-Api-Key": "<your-cloudways-api-key>",
"X-Mcp-Host": "cursor"
}
}
}
}

4. Save the file.

5. Go back to Settings → Tools & MCP and verify that the Cloudways server shows a green dot.

Tip: If you see a red dot, restart Cursor and ensure the JSON syntax is valid.

Alternative configuration (stdio via mcp-remote):

If the native HTTP configuration above does not work for you (e.g., connection issues or proxy restrictions), you can use the mcp-remote bridge instead. This requires Node.js (v24+) to be installed on your machine.

Replace the cloudways entry in ~/.cursor/mcp.json with:

{
"mcpServers": {
"cloudways": {
"command": "npx",
"args": [
"--yes", "mcp-remote@latest",
"https://mcp.cloudways.com/mcp/",
"--header", "X-CW-Email: <your-cloudways-email>",
"--header", "X-CW-Api-Key: <your-cloudways-api-key>",
"--header", "X-Mcp-Host: cursor"
]
}
}
}

Save the file and restart Cursor. The server should show a green dot in Settings → Tools & MCP.

2. Windsurf

Config file: ~/.codeium/windsurf/mcp_config.json

  1. Open Windsurf.

  2. Click the MCPs icon in the top-right menu of the Cascade panel, or go to Windsurf Settings → Cascade → MCP Servers.

  3. Click "Add custom server" to open mcp_config.json, or edit it directly at the path above.

  4. Add the following configuration:

{
"mcpServers": {
"cloudways": {
"serverUrl": "https://mcp.cloudways.com/mcp/",
"headers": {
"X-CW-Email": "<your-cloudways-email>",
"X-CW-Api-Key": "<your-cloudways-api-key>",
"X-Mcp-Host": "windsurf"
}
}
}
}

5. Save the file. Windsurf will detect the change automatically.

Tip:

Windsurf supports environment variable interpolation. You can use ${env:CW_EMAIL} and ${env:CW_API_KEY} in place of hardcoded values if you prefer to keep credentials in your shell environment.

3. Claude Desktop

Config file locations:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Claude Desktop does not natively support remote HTTP MCP servers in its JSON configuration. You need mcp-remote, a Node.js bridge that handles the connection.

This requires Node.js (v24+) to be installed on your machine.

  1. Open the claude_desktop_config.json file at the path above.

  2. Add the following configuration:

{
"mcpServers": {
"cloudways": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.cloudways.com/mcp/",
"--header", "X-CW-Email:<your-cloudways-email>",
"--header", "X-CW-Api-Key:<your-cloudways-api-key>",
"--header", "X-Mcp-Host:claude-desktop"
]
}
}
}

3. Save the file and restart Claude Desktop.

Verifying the connection

  1. In Claude Desktop, go to Profile → Settings → Developer.

  2. Under Local MCP Servers, you should see the cloudways server with a Running status.

  3. If the server is not running, click View logs next to it to see detailed error logs and diagnose the issue.

  4. Also double-check that your claude_desktop_config.json contains valid JSON (a missing comma or bracket will prevent the server from starting).

Important: Do not add spaces around the colon (:) in header values passed via --header arguments. For example, use X-CW-Email:[email protected], not X-CW-Email: [email protected].

4. Claude Code

Claude Code supports remote HTTP MCP servers natively via the CLI.

Run the following command in your terminal:

claude mcp add --transport http \
--header "X-CW-Email: <your-cloudways-email>" \
--header "X-CW-Api-Key: <your-cloudways-api-key>" \
--header "X-Mcp-Host: claude-code" \
-s user \
cloudways https://mcp.cloudways.com/mcp/

The -s user flag stores the configuration at the user level so it persists across all your projects.

To verify it was added:

claude mcp list

To remove it later:

claude mcp remove cloudways

5. VS Code (GitHub Copilot)

Config file: ~/Library/Application Support/Code/User/mcp.json (macOS) or %APPDATA%\Code\User\mcp.json (Windows)

Step-by-step setup:

  1. Open VS Code.

  2. Open the Command Palette (Ctrl+Shift+P on Windows/Linux, Cmd+Shift+P on macOS) and type MCP: Add Server.

  3. Select HTTP (HTTP or Server-Sent Events) from the list.

  4. When prompted for the server URL, enter:

5. When prompted for a Server ID, enter:

cloudways

6. VS Code will open the mcp.json file and may show a "Dynamic Client Registration not supported" dialog. Click Cancel, and if a second prompt appears asking for client registration details, press Esc to dismiss it.

7. Replace the entire contents of mcp.json with the following:

{
"servers": {
"cloudways": {
"type": "http",
"url": "https://mcp.cloudways.com/mcp/",
"headers": {
"X-CW-Email": "<your-cloudways-email>",
"X-CW-Api-Key": "<your-cloudways-api-key>",
"X-Mcp-Host": "vs-code"
}
}
},
"inputs": []
}

8. Save the file.

9. Click the Restart button that appears above the "cloudways" server entry in the editor to start the server.

Verifying the connection

  1. Open the right sidebar (Opt+Cmd+B on macOS, Ctrl+Alt+B on Windows/Linux) or click the Copilot Chat icon.

  2. Click the Settings (gear) icon at the top-right corner of the sidebar.

  3. Go to the MCP Servers section and confirm that the Cloudways server shows a Running status with a green indicator.

Tip:

If the server does not show as running, click on the cloudways entry in the MCP Servers list, then Disable and Enable it again. If it still does not start, verify the JSON syntax and ensure your credentials are correct.

Note:

The VS Code MCP configuration uses "servers" (not "mcpServers") and requires a "type": "http" field. This is different from other MCP hosts.

6. Gemini CLI

Config file: ~/.gemini/settings.json

  1. Open or create the ~/.gemini/settings.json file.

  2. Add the following configuration inside the file:

{
"mcpServers": {
"cloudways": {
"httpUrl": "https://mcp.cloudways.com/mcp/",
"headers": {
"X-CW-Email": "<your-cloudways-email>",
"X-CW-Api-Key": "<your-cloudways-api-key>",
"X-Mcp-Host": "gemini-cli"
}
}
}
}

3. Save the file.

4. Run Gemini in your terminal. The Cloudways tools will be discovered automatically.

Note:

Gemini CLI uses "httpUrl" (not "url" or "serverUrl") for Streamable HTTP servers. Using "url" will attempt an SSE connection instead.

7. Codex

Codex (the IDE extension) shares its configuration with Codex CLI via config.toml.

Config file: ~/.codex/config.toml

  1. Open or create the ~/.codex/config.toml file.

  2. Add the following configuration:

[mcp_servers.cloudways]
url = "https://mcp.cloudways.com/mcp/"

[mcp_servers.cloudways.http_headers]
X-CW-Email = "<your-cloudways-email>"
X-CW-Api-Key = "<your-cloudways-api-key>"
X-Mcp-Host = "codex"

3. Save the file. The Cloudways MCP server will be available in both the Codex IDE extension and the CLI.

8. Codex CLI

Codex CLI shares the same config.toml as the Codex IDE extension. You can configure it either by editing the file directly (see Codex above) or via the CLI:

codex mcp add cloudways --url https://mcp.cloudways.com/mcp/

After adding the server, open ~/.codex/config.toml and add the custom headers under the [mcp_servers.cloudways] section:

[mcp_servers.cloudways]
url = "https://mcp.cloudways.com/mcp/"

[mcp_servers.cloudways.http_headers]
X-CW-Email = "<your-cloudways-email>"
X-CW-Api-Key = "<your-cloudways-api-key>"
X-Mcp-Host = "codex-cli"

To verify:

codex mcp list

To remove:

codex mcp remove cloudways

9. Other JSON-configured clients

Any client that supports the MCP JSON config format can connect using the same JSON snippet from the Cursor section above.

Step #3: Verify the Connection

Once configured:

  1. Open your MCP-enabled client

  2. Run a simple prompt: Show me all my servers

  3. Expected behavior:

If the connection is working, you will see a list of your Cloudways servers with their status, cloud provider, region, and IP addresses.

Configuration Reference

A quick reference of the configuration format for each MCP host:

MCP Host

Config File

Server URL Key

Headers Key

Transport

Cursor

~/.cursor/mcp.json

url

headers

Auto-detected

Windsurf

~/.codeium/windsurf/mcp_config.json

serverUrl

headers

Auto-detected

Claude Desktop

claude_desktop_config.json

via mcp-remote args

via --header args

stdio bridge

Claude Code

CLI / ~/.claude.json

positional arg

--header flags

http

VS Code

.vscode/mcp.json

url

headers

http

Gemini CLI

~/.gemini/settings.json

httpUrl

headers

Streamable HTTP

Codex

~/.codex/config.toml

url

http_headers

Streamable HTTP

Codex CLI

~/.codex/config.toml

url

http_headers

Streamable HTTP

Cannot See All MCP Tools?

Your MCP client (Cursor, Claude Desktop, Windsurf, Cline, or any other MCP-compatible client) caches the tools list when it first connects to the Cloudways MCP server. To pick up the new updated tools list, do one of the following:

  • Quickest: open your MCP client's server settings, toggle the Cloudways MCP server off, then back on.

  • If toggling isn't available: fully quit and restart the MCP client.

Reconnect the client to pick up the new tools.

Pick the instructions matching your client:

MCP client

How to reload the Cloudways MCP server

Cursor

Settings → MCP → find "cloudways" in the list → click the toggle to disable, wait one second, click again to re-enable. Or quit Cursor (Cmd-Q on macOS) and reopen.

Claude Desktop

Settings → Developer → MCP Servers → toggle "cloudways" off, then on. If you don't see a toggle, fully quit Claude Desktop (Cmd-Q on macOS / Quit from the system tray on Windows) and reopen. Note: clicking the red close button is not enough. You must fully quit.

Windsurf

Settings → MCP → click the refresh icon next to "cloudways". If the icon isn't available, restart Windsurf.

Cline (VS Code extension)

Open the Cline panel → settings (gear icon) → MCP Servers → toggle "cloudways" off and back on.

Other MCP-compatible clients

Look for an MCP server settings / integrations panel and toggle the Cloudways entry off and on. If that isn't available, fully quit and reopen the client.

Confirm your agent sees the new tools.

Open a fresh conversation and paste this prompt:

"List all of my Cloudways projects”

A correctly-reloaded client will answer that and list all of your projects in your Cloudways account.

If the agent says that tool to fetch the list of projects is not available, the client is still using the cached v1.0.0 tools list. To fix this, make sure you're doing a full quit (not just closing the window) before reopening.

Troubleshooting Guide

Here are the most common issues and how to fix them:

Issue

Resolution

Connection failed / red indicator

Verify the MCP URL is exactly https://mcp.cloudways.com/mcp/ (trailing slash included)

401 Unauthorized

Double-check that your email and API key are correct and copied from the API portal

Tools not appearing

Restart your MCP host after saving the configuration file

Timeout errors

Retry after a few moments, as transient network issues can cause timeouts

mcp-remote not found (Claude Desktop)

Ensure Node.js v18+ is installed and npx is available in your PATH

Codex initialization failure

Make sure the config.toml syntax is valid. TOML is whitespace-sensitive for inline tables

See Cloudways MCP in Action

Now that you have the Cloudways MCP working with your client, you can try the following queries to see the capabilities first-hand.

Quick Lookups

What You Want to Do

Enter in the Client

What Happens Behind the Scenes

See your fleet

"Show me all my running servers"

Calls server_list and filters by active status. Returns server names, IPs, providers, and app counts.

Inspect a server

"Show details of server 12345"

Calls server_get. Returns full config, hosted apps, and current state.

Check services

"Are all services healthy on my production server?"

Calls service_status. Returns the status of NGINX, MySQL, PHP-FPM, and more.

Get credentials

"I need SSH credentials for my staging app"

Calls app_credentials. Returns host, port, username, and password.

Check operation

"Is my backup finished?"

Calls operation_status. Returns current progress of async operations.

Day-to-Day Management

What You Want to Do

Enter in the Client

What Happens Behind the Scenes

Scale up for traffic

"Scale my server to 4GB RAM"

Calls server_scale. Resizes the server (brief downtime may occur).

Clear cache

"Purge all caches for my WordPress blog"

Calls app_purge_cache. Clears application, Varnish, and object caches.

Create a staging copy

"Clone my production app to create a staging version"

Calls app_clone. Creates an exact copy on the same server.

Restart PHP

"Restart PHP-FPM on server 12345"

Calls service_restart with the php-fpm parameter.

Backup before deploy

"Back up my production app before I push changes"

Calls app_backup. Initiates a point-in-time backup.

Performance Troubleshooting

What You Want to Do

Enter in the Client

What Happens Behind the Scenes

Diagnose high CPU

"Show CPU usage for my server over the last 24 hours"

Calls monitoring_server_graph. Returns CPU utilization metrics.

Find traffic spikes

"Show top IPs hitting my store in the last hour"

Calls analytics_app_traffic. Identifies traffic patterns and sources.

Find slow pages

"Which PHP pages are slowest on my app?"

Calls analytics_app_php. Returns pages ranked by execution time.

Check slow queries

"Show slow MySQL queries for my app"

Calls analytics_app_mysql. Returns queries sorted by duration.

Security check

"Scan my WordPress site for vulnerabilities"

Calls app_vulnerabilities_refresh then app_vulnerabilities_list. Returns findings with severity scores.

Infrastructure Provisioning

What You Want to Do

Enter in the Client

What Happens Behind the Scenes

Spin up a new server

"Create a 2GB DigitalOcean server in NYC with WordPress"

Calls server_create. Provisions the server with your chosen cloud provider and pre-installs the app.

Deploy a new app

"Add a Laravel app to server 12345"

Calls app_create. Deploys and configures the application.

Move an app

"Clone my app from server A to server B"

Calls app_clone_to_server. Replicates the app to a different server.

Clean up resources

"Delete the old staging server I’m not using anymore"

Calls server_delete. Permanently removes the server and all data.


Tips for Getting the Most Out of Cloudways MCP

Be Specific in Your Prompts

Provide clear and detailed instructions when making a request. The more context you include, the more accurate the response will be.

For example, instead of writing “Check my server,” you can write “Show CPU and memory usage for server 12345 over the last 7 days.”

Whenever possible, include details such as server IDs, application names, or time ranges.

Start with Read Operations

If you are new to Cloudways MCP, begin with basic read-only actions.

You can start by listing your servers, checking service status, or viewing application details.

This helps you understand how the system works before performing actions that make changes, such as scaling or deleting resources.

Use It for Incident Response

Cloudways MCP can help you quickly troubleshoot issues without navigating the platform manually.

You can use simple commands to check CPU usage, identify unusual traffic, review slow queries, and take necessary actions.

This is especially useful when you need to respond to issues quickly.

Automate Repetitive Tasks

If you regularly perform the same set of actions, you can turn them into a repeatable workflow.

For example, you can create a sequence to check backups, review disk usage, and clear cache.

Some MCP clients also allow you to save these sequences as templates for quick reuse.

Keep Your Credentials Updated

For security, regularly update your Cloudways API key, especially if it has been shared or used on multiple devices.

After updating your API key, make sure to update it in your MCP client settings as well.


Cloudways MCP Server FAQs

What is Cloudways MCP?

Cloudways MCP (Model Context Protocol) is an interface that enables AI assistants to interact with Cloudways infrastructure using natural language.

Instead of manually using dashboards or APIs, developers can describe actions in plain language, let an MCP-compatible client translate them into API-backed operations, and then receive structured, actionable responses.

What is an MCP client?

An MCP client is the environment used to interact with the Cloudways MCP server. These clients send prompts to the MCP server and display structured responses. Supported environments include:

  • Cursor IDE

  • Claude Desktop

  • Visual Studio Code

  • ChatGPT

Do I need to learn Cloudways APIs to use MCP?

No. Cloudways MCP handles API abstraction. However, you must understand Cloudways Infrastructure concepts (servers, apps, services) and operational impact of services and add-on operations (for instance, scaling, deletion, restarts).

Does Cloudways MCP replace DevOps workflows?

No. Cloudways MCP improves execution speed and accessibility but does not replace the underlying requirements for risk assessment and optimization of production environment components for maximum performance and security for your business operations.

What are the prerequisites for using Cloudways MCP?

You need:

  • A valid Cloudways account

  • API credentials (email + API key)

  • An MCP-compatible client

  • Node.js (required for some clients like Claude Desktop)

Why is Node.js required in some setups?

Certain clients (for instance, Claude Desktop) rely on tools like npx to run MCP proxies (usually mcp-remote) for connecting to remote MCP servers.

How does authentication work in Cloudways MCP?

Authentication is handled via the following two HTTP headers that are securely over HTTPS with each request:

  • X-CW-Email

  • X-CW-Api-Key

Where do I configure Cloudways MCP connection details?

Configuration is client-specific. There are two popular methods:

  • via JSON config files (for instance, .cursor/mcp.json)

  • via Client UI settings (for instance, Windsurf)

Why is my MCP configuration not working?

We suggest checking for the following common causes:

  • Invalid JSON syntax (missing commas/brackets)

  • Incorrect file placement

  • Missing client restart

  • Incorrect server URL

What is the correct MCP server endpoint?

The correct Cloudways MCP server endpoint is:

Note that incorrect variants will fail silently.

How do I interact with Cloudways MCP?

Once you have properly configured the connection, enter the interface of your MCP client and enter a natural language request, such as show CPU usage for server 12345 over the last 24 hours.

Do I need to know tool names included in the Cloudways MCP?

No. Cloudways MCP resolves natural language input to the correct tool(s). However, we suggest exploring the MCP tool list because understanding available tools and operations can significantly improve the accuracy of the responses and results.

Why are some responses incorrect or unexpected?

MCP depends on prompt clarity, context completeness, and the use of properly formatted identifiers (server ID, app name). Ambiguous or incomplete prompts can produce unintended results.

What makes a good MCP prompt?

A strong prompt includes target resource (server/app), intended action, and complete context (time range, environment) for the request. Consider this example:

Show memory usage for production server 12345 over the last 7 days

Can Cloudways MCP execute multiple actions from one prompt?

Yes. Cloudways MCP can chain operations if the intent is clear. Consider this example that uses multiple MCP tools in a stacked chain for achieving the intent outcome:

Back up my app and restart the server

What happens if I don’t specify a server or application in a request?

If you omit crucial details, such as server ID or application name, Cloudways MCP may ask for clarification and missing details. However, there is always the risk that the MCP may infer the missing details incorrectly. As such, we strongly recommend double-checking for essential details in requests.

Can Cloudways MCP perform destructive actions?

Yes. Cloudways MCP can perform destructive actions such as server and application deletion. Note that these actions are irreversible.

Why do some commands not complete instantly?

Infrastructure operations require time for provisioning and execution. MCP triggers the process when it receives the request. However, the actual time for completion depends on factors outside the MCP's scope.

How do I verify if an operation succeeded?

Most MCP clients provide direct success indication when they show the output of the request. In addition, you can also verify the success of specific server, application, and add-on actions in the Cloudways Platform.

Can multiple users use Cloudways MCP on the same account?

Yes. However, you should note that shared API keys introduce risk, and there is no granular access control at MCP layer.

Why am I getting authentication errors?

In case of authentication errors in your MCP client, we suggest you check for API key validity, and header names and values (header names and values are case-sensitive). You should also review your organization's API key rotation policy to make sure you are using a valid one.

Why is my MCP client not connecting?

Common reasons behind client connectivity issues are incorrect server URL, missing Node.js (for proxy-based clients), and misconfigured headers (check for proper case formatting).

I upgraded but my agent says the new tools don't exist"

This is almost always a stale-cache issue in the MCP client, not a server-side bug. Walk through this checklist:

  1. Did you fully quit the client? Closing the window (the red X / red dot) usually only minimises the app on macOS and on Windows with system-tray apps. Use Cmd-Q on macOS, File → Exit on Windows, or right-click the tray icon → Quit for tray apps. Then reopen.

  2. If your client supports toggling, use that over a full restart as it's faster and tells you immediately whether the reconnect succeeded.


That’s it! We hope this article was useful.

Need Help?

If you need assistance, feel free to:

We're here 24/7 to help you!

Did this answer your question?