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_status
Server Management:
list_servers
,get_server_details
Application Management:
get_app_details
,get_app_credentials
,get_app_settings
,get_app_monitoring_summary
Project Management:
list_projects
,list_team_members
,get_alerts
Infrastructure 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_server
Backup & Recovery:
backup_server
,get_server_settings
Storage Management:
get_server_disk_usage
,optimize_server_disk
Service Control:
get_server_services_status
,change_service_state
Caching:
manage_server_varnish
Monitoring:
get_server_monitoring_detail
,get_server_analytics
Application Management (8 tools)
Deployment:
clone_app
,backup_app
,restore_app
,rollback_app_restore
Performance:
clear_app_cache
,get_app_varnish_settings
,manage_app_varnish
Configuration:
reset_app_file_permissions
,enforce_app_https
Domain Management:
update_app_cname
,delete_app_cname
Analytics:
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_ips
Security Monitoring:
check_ip_blacklisted
Tool Access:
allow_ip_siab
,allow_ip_adminer
SSL Management:
install_ssl_certificate
,remove_ssl_certificate
,install_letsencrypt
,renew_letsencrypt
,set_letsencrypt_auto_renewal
,revoke_letsencrypt
Git 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:
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:
Server 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
- AsecurityAlicenseAqualityAn 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
- -securityAlicense-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
- AsecurityAlicenseAqualityAn MCP server that provides tools for reading, writing, and editing files on the local filesystem.Last updated -1,552Apache 2.0
- -securityAlicense-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