Provides read-only access to Cloudways hosting resources, allowing retrieval of servers, applications, monitoring data, projects, team members, alerts, SSH keys, and available providers/regions/server sizes from the Cloudways API.
Cloudways MCP Server
A comprehensive Model Context Protocol (MCP) server for managing Cloudways infrastructure. This server provides a secure, modular, and scalable interface to the Cloudways API with 43+ tools covering all aspects of server and application management.
š Features
Complete Cloudways API Coverage: 43+ tools organized into logical categories
Modular Architecture: Clean separation of concerns with dedicated modules for different functionalities
Enterprise Security: Multi-layered authentication, rate limiting, and audit logging
High Performance: Asynchronous design with Redis caching and HTTP connection pooling
Production Ready: Structured logging, error handling, and monitoring capabilities
MCP Compatible: Full Model Context Protocol support for AI assistant integration
š Tools Overview
Basic Operations (18 tools)
Authentication & Info:
ping,customer_info,rate_limit_statusServer Management:
list_servers,get_server_detailsApplication Management:
get_app_details,get_app_credentials,get_app_settings,get_app_monitoring_summaryProject Management:
list_projects,list_team_members,get_alertsInfrastructure Discovery:
get_ssh_keys,get_available_providers,get_available_regions,get_available_server_sizes,get_available_apps,get_available_packages
Server Operations (12 tools)
Power Management:
start_server,stop_server,restart_serverBackup & Recovery:
backup_server,get_server_settingsStorage Management:
get_server_disk_usage,optimize_server_diskService Control:
get_server_services_status,change_service_stateCaching:
manage_server_varnishMonitoring:
get_server_monitoring_detail,get_server_analytics
Application Management (8 tools)
Deployment:
clone_app,backup_app,restore_app,rollback_app_restorePerformance:
clear_app_cache,get_app_varnish_settings,manage_app_varnishConfiguration:
reset_app_file_permissions,enforce_app_httpsDomain Management:
update_app_cname,delete_app_cnameAnalytics:
get_app_analytics_traffic,get_app_analytics_php,get_app_analytics_mysql
Security & Access Control (5 tools)
IP Management:
get_whitelisted_ips_ssh,get_whitelisted_ips_mysql,update_whitelisted_ipsSecurity Monitoring:
check_ip_blacklistedTool Access:
allow_ip_siab,allow_ip_adminerSSL Management:
install_ssl_certificate,remove_ssl_certificate,install_letsencrypt,renew_letsencrypt,set_letsencrypt_auto_renewal,revoke_letsencryptGit Deployment:
generate_git_ssh_key,get_git_ssh_key,git_clone,git_pull,get_git_deployment_history,get_git_branch_names
š Architecture
š§ Installation & Setup
Prerequisites
Python 3.11+
Redis server (for caching and session management)
Cloudways API credentials
Configure environment variables:
# Generate encryption key for secure credential storage export ENCRYPTION_KEY=$(python -c 'from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())') # Redis configuration export REDIS_URL="redis://localhost:6379/0" # Optional performance tuning export REDIS_POOL_SIZE="500" export HTTP_POOL_SIZE="500" export RATE_LIMIT_REQUESTS="90" export RATE_LIMIT_WINDOW="60"
Encryption Key Management
The server requires a Fernet encryption key for secure credential storage.
Generating a New Key
Exporting an Existing Key
Key Validation
Important Notes
Key must be 44 characters long (base64-encoded)
Generated using
Fernet.generate_key()Do not commit keys to version control
Changing the key invalidates existing encrypted data in Redis
Start the server:
python main.pyServer will be available at:
http://localhost:7000/mcp
š Authentication
The server uses header-based authentication with encrypted credential storage:
Security Features
Credential Encryption: API keys encrypted with Fernet before Redis storage
Token Auto-Renewal: Proactive OAuth token refresh before expiration
Rate Limiting: Token bucket algorithm (90 requests/60 seconds by default)
Audit Logging: Comprehensive request/response logging with structured data
āļø Configuration Options
Variable | Default | Description |
| Required | Fernet encryption key for credential storage |
|
| Redis connection string |
|
| Redis connection pool size |
|
| HTTP connection pool size |
|
| Requests per time window |
|
| Rate limit window (seconds) |
|
| Logging verbosity |
|
| Log format (console/json) |
š Monitoring & Observability
Structured Logging
Performance Metrics: Request timing and resource usage
Security Events: Authentication failures, rate limiting
API Interactions: Full request/response logging with sanitized credentials
Error Tracking: Comprehensive error context and stack traces
Health Checks
ping- Basic connectivity and authentication testrate_limit_status- Current rate limit statuscustomer_info- Session and authentication status
š Development & Extension
Adding New Tools
Choose appropriate module in
tools/directoryFollow existing patterns for error handling and authentication
Use type hints with Pydantic models for parameters
Include comprehensive docstrings
Test with various authentication scenarios
Tool Development Template
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
A simple MCP server that provides read-only access to Cloudways hosting resources, including servers, applications, monitoring data, and team management features.
Related MCP Servers
- Asecurity-licenseAqualityAn MCP server that provides access to project files and their contents, allowing users to retrieve file data from specified project directories with error handling and configuration options.Last updated -16MIT License
- -security-license-qualityThe MCP server provides access to Clever Cloud's documentation, allowing users to query and interact with it through Model Context Protocol clients like Claude Desktop.Last updated -MIT License
- Asecurity-licenseAqualityAn MCP server that provides tools for reading, writing, and editing files on the local filesystem.Last updated -1,558Apache 2.0
- -security-license-qualityA lightweight gateway server that provides a unified connection entry point for accessing multiple MCP servers, supporting various protocols including Network and Local Transports.Last updated -Apache 2.0