Cloudpress MCP connector
OAuth 2.1/DCRDeveloper ToolsProductivityCloudpress is a managed WordPress hosting platform built for the AI era. Its MCP server lets AI agents manage sites, domains, DNS, security rules...
Cloudpress MCP connector
-
Install the SDK
Section titled “Install the SDK”Terminal window npm install @scalekit-sdk/nodeTerminal window pip install scalekit -
Set your credentials
Section titled “Set your credentials”Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret> -
Authorize and make your first call
Section titled “Authorize and make your first call”quickstart.ts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENV_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'cloudpressmcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Cloudpress MCP:', link)process.stdout.write('Press Enter after authorizing...')await new Promise(r => process.stdin.once('data', r))// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'cloudpressmcp_list_dns_zones',toolInput: {},})console.log(result)quickstart.py import osfrom scalekit.client import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENV_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "cloudpressmcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Cloudpress MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="cloudpressmcp_list_dns_zones",connection_name=connection_name,identifier=identifier,)print(result)
What you can do
Section titled “What you can do”Connect this agent connector to let your agent:
- Update waf custom rule, shield, rate limit — Update an existing custom WAF rule for a Cloudpress site
- Rule toggle edge — Enable or disable an edge rule without deleting it
- Domains suggest — Get domain name suggestions based on a keyword
- Search domains — Search for domain names matching a keyword
- Site restart, rename — Asynchronously restart a Cloudpress site’s container
- Cache purge cdn — Purge the CDN cache for a site
Tool list
Section titled “Tool list”Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.
cloudpressmcp_activate_shield#Activate Shield (WAF/security) for a Cloudpress site.1 param
Activate Shield (WAF/security) for a Cloudpress site.
siteIdstringrequiredThe unique identifier of the site to activate Shield for.cloudpressmcp_check_domain_availability#Check if a domain name is available for registration.1 param
Check if a domain name is available for registration.
domainstringrequiredNo description.cloudpressmcp_create_access_list#Create an IP access list (allowlist or blocklist) for a Cloudpress site.5 params
Create an IP access list (allowlist or blocklist) for a Cloudpress site.
ipsarrayrequiredArray of IP addresses or CIDR ranges to include in the list.namestringrequiredA human-readable name for the access list.siteIdstringrequiredThe unique identifier of the site to create the access list for.typestringrequiredWhether this list allows or blocks the specified IPs.descriptionstringoptionalOptional description of the access list purpose.cloudpressmcp_create_dns_record#Create a new DNS record in a zone.6 params
Create a new DNS record in a zone.
contentstringrequiredNo description.namestringrequiredNo description.typestringrequiredNo description.zoneIdstringrequiredNo description.priorityintegeroptionalNo description.ttlintegeroptionalNo description.cloudpressmcp_create_dns_zone#Create a new DNS zone. Requires dns:write scope.2 params
Create a new DNS zone. Requires dns:write scope.
namestringrequiredThe domain name for the new DNS zone.request_idstringrequiredClient-generated UUID for idempotency. Reuse the same UUID to safely retry without creating duplicate zones.cloudpressmcp_create_edge_rule#Create a new edge rule for a site.6 params
Create a new edge rule for a site.
actionstringrequiredThe action the edge rule performs, e.g. redirect, block, or rewrite.conditionsarrayrequiredArray of condition objects that determine when the rule fires.namestringrequiredA human-readable name for the edge rule.siteIdstringrequiredThe ID of the site to create the edge rule on.descriptionstringoptionalOptional description for the edge rule.enabledbooleanoptionalWhether the rule is active immediately after creation. Defaults to true.cloudpressmcp_create_rate_limit#Create a rate limiting rule for a Cloudpress site to throttle or block excessive requests.7 params
Create a rate limiting rule for a Cloudpress site to throttle or block excessive requests.
actionstringrequiredAction to take when the rate limit threshold is exceeded.namestringrequiredA human-readable name for the rate limit rule.periodintegerrequiredTime window in seconds over which requests are counted.siteIdstringrequiredThe unique identifier of the site to create the rate limit rule for.thresholdintegerrequiredMaximum number of requests allowed within the rate limit period.descriptionstringoptionalOptional description explaining the purpose of this rate limit rule.matchobjectoptionalOptional URL/method match criteria to scope the rate limit to specific requests.cloudpressmcp_create_waf_custom_rule#Create a custom WAF firewall rule for a Cloudpress site with a filter expression and action.6 params
Create a custom WAF firewall rule for a Cloudpress site with a filter expression and action.
actionstringrequiredThe action to take when the rule expression matches a request.expressionstringrequiredFirewall rule expression that defines which requests this rule matches.namestringrequiredA human-readable name for the WAF custom rule.siteIdstringrequiredThe unique identifier of the site to create the WAF rule for.descriptionstringoptionalOptional description explaining the purpose of this WAF rule.priorityintegeroptionalRule evaluation priority. Lower numbers are evaluated first.cloudpressmcp_deactivate_shield#Deactivate Shield (WAF/security) for a Cloudpress site.1 param
Deactivate Shield (WAF/security) for a Cloudpress site.
siteIdstringrequiredThe unique identifier of the site to deactivate Shield for.cloudpressmcp_delete_access_list#Permanently delete an IP access list from a Cloudpress site.2 params
Permanently delete an IP access list from a Cloudpress site.
listIdstringrequiredThe unique identifier of the access list to delete.siteIdstringrequiredThe unique identifier of the site that owns the access list.cloudpressmcp_delete_dns_record#Delete a DNS record.2 params
Delete a DNS record.
recordIdstringrequiredNo description.zoneIdstringrequiredNo description.cloudpressmcp_delete_dns_zone#Delete a DNS zone. This action is destructive and cannot be undone. Requires dns:write scope.2 params
Delete a DNS zone. This action is destructive and cannot be undone. Requires dns:write scope.
idstringrequiredThe unique identifier of the DNS zone to delete.request_idstringrequiredClient-generated UUID for idempotency. Reuse the same UUID to safely retry without triggering multiple deletions.cloudpressmcp_delete_edge_rule#Permanently delete an edge rule from a site.2 params
Permanently delete an edge rule from a site.
ruleIdstringrequiredThe ID of the edge rule to delete.siteIdstringrequiredThe ID of the site that owns the edge rule.cloudpressmcp_delete_rate_limit#Permanently delete a rate limit rule from a Cloudpress site.2 params
Permanently delete a rate limit rule from a Cloudpress site.
ruleIdstringrequiredThe unique identifier of the rate limit rule to delete.siteIdstringrequiredThe unique identifier of the site that owns the rate limit rule.cloudpressmcp_delete_waf_custom_rule#Permanently delete a custom WAF rule from a Cloudpress site.2 params
Permanently delete a custom WAF rule from a Cloudpress site.
ruleIdstringrequiredThe unique identifier of the WAF custom rule to delete.siteIdstringrequiredThe unique identifier of the site that owns the WAF rule.cloudpressmcp_get_cache_status#Get cache status and hit-rate for a site.1 param
Get cache status and hit-rate for a site.
siteIdstringrequiredThe unique identifier of the site.cloudpressmcp_get_cdn_caching#Get CDN caching configuration for a site.1 param
Get CDN caching configuration for a site.
siteIdstringrequiredThe unique identifier of the site.cloudpressmcp_get_cdn_logs#Get CDN access logs for a site over an optional date range.5 params
Get CDN access logs for a site over an optional date range.
siteIdstringrequiredThe unique identifier of the site.fromstringoptionalStart datetime for the log range in ISO 8601 format.pageintegeroptionalPage number for paginated results.per_pageintegeroptionalNumber of log entries per page.tostringoptionalEnd datetime for the log range in ISO 8601 format.cloudpressmcp_get_cdn_logs_summary#Get a summary of CDN logs for a site over an optional date range.3 params
Get a summary of CDN logs for a site over an optional date range.
siteIdstringrequiredThe unique identifier of the site.fromstringoptionalStart datetime for the summary range in ISO 8601 format.tostringoptionalEnd datetime for the summary range in ISO 8601 format.cloudpressmcp_get_cdn_metrics#Get CDN performance metrics for a site over an optional date range.4 params
Get CDN performance metrics for a site over an optional date range.
siteIdstringrequiredThe unique identifier of the site.fromstringoptionalStart datetime for the metrics range in ISO 8601 format.granularitystringoptionalTime granularity for the metrics data.tostringoptionalEnd datetime for the metrics range in ISO 8601 format.cloudpressmcp_get_cdn_status#Get the CDN status for a site.1 param
Get the CDN status for a site.
siteIdstringrequiredThe unique identifier of the site.cloudpressmcp_get_dns_metrics#Get metrics for a DNS zone over an optional date range. Requires dns:read scope.3 params
Get metrics for a DNS zone over an optional date range. Requires dns:read scope.
idstringrequiredThe unique identifier of the DNS zone.date_fromstringoptionalStart date for the metrics range in ISO 8601 format (YYYY-MM-DD).date_tostringoptionalEnd date for the metrics range in ISO 8601 format (YYYY-MM-DD).cloudpressmcp_get_dns_record#Get a single DNS record from a DNS zone. Requires dns:read scope.2 params
Get a single DNS record from a DNS zone. Requires dns:read scope.
dns_zone_idstringrequiredThe unique identifier of the DNS zone containing the record.idstringrequiredThe unique identifier of the DNS record.cloudpressmcp_get_dns_zone#Get details for a single DNS zone. Requires dns:read scope.1 param
Get details for a single DNS zone. Requires dns:read scope.
idstringrequiredThe unique identifier of the DNS zone.cloudpressmcp_get_domain#Get details of a specific domain.1 param
Get details of a specific domain.
domainIdstringrequiredNo description.cloudpressmcp_get_domain_contact#Get a specific domain contact.1 param
Get a specific domain contact.
contactIdstringrequiredNo description.cloudpressmcp_get_domain_registration#Get a specific domain registration.1 param
Get a specific domain registration.
registrationIdstringrequiredNo description.cloudpressmcp_get_order#Get details of a specific billing order.1 param
Get details of a specific billing order.
orderIdstringrequiredThe ID of the billing order to retrieve.cloudpressmcp_get_origin_logs#Get origin server logs for a site over an optional date range.5 params
Get origin server logs for a site over an optional date range.
siteIdstringrequiredThe unique identifier of the site.fromstringoptionalStart datetime for the log range in ISO 8601 format.pageintegeroptionalPage number for paginated results.per_pageintegeroptionalNumber of log entries per page.tostringoptionalEnd datetime for the log range in ISO 8601 format.cloudpressmcp_get_resource_metrics#Get resource usage metrics for a site over an optional date range.4 params
Get resource usage metrics for a site over an optional date range.
siteIdstringrequiredThe unique identifier of the site.fromstringoptionalStart datetime for the metrics range in ISO 8601 format.granularitystringoptionalTime granularity for the metrics data.tostringoptionalEnd datetime for the metrics range in ISO 8601 format.cloudpressmcp_get_shield_events#Get recent security events detected by Shield.5 params
Get recent security events detected by Shield.
siteIdstringrequiredNo description.fromstringoptionalNo description.pageintegeroptionalNo description.per_pageintegeroptionalNo description.tostringoptionalNo description.cloudpressmcp_get_shield_metrics#Get Shield/WAF performance metrics for a site.4 params
Get Shield/WAF performance metrics for a site.
siteIdstringrequiredNo description.fromstringoptionalNo description.granularitystringoptionalNo description.tostringoptionalNo description.cloudpressmcp_get_shield_status#Get the Shield (WAF/security) status for a site.1 param
Get the Shield (WAF/security) status for a site.
siteIdstringrequiredNo description.cloudpressmcp_get_site#Get full details for a single Cloudpress site. Requires sites:read scope.1 param
Get full details for a single Cloudpress site. Requires sites:read scope.
idstringrequiredThe unique identifier of the Cloudpress site.cloudpressmcp_get_subscription#Get details of a specific subscription.1 param
Get details of a specific subscription.
subscriptionIdstringrequiredNo description.cloudpressmcp_get_waf_config#Get the WAF configuration for a site.1 param
Get the WAF configuration for a site.
siteIdstringrequiredNo description.cloudpressmcp_list_access_lists#List access lists (IP allowlists/blocklists) for a site.1 param
List access lists (IP allowlists/blocklists) for a site.
siteIdstringrequiredNo description.cloudpressmcp_list_curated_access_lists#List Cloudpress-managed curated access lists.1 param
List Cloudpress-managed curated access lists.
siteIdstringrequiredNo description.cloudpressmcp_list_dns_records#List all DNS records in a DNS zone. Requires dns:read scope.3 params
List all DNS records in a DNS zone. Requires dns:read scope.
dns_zone_idstringrequiredThe unique identifier of the DNS zone whose records to list.pageintegeroptionalPage number for pagination.per_pageintegeroptionalNumber of results per page.cloudpressmcp_list_dns_zones#List all DNS zones in the Cloudpress account. Requires dns:read scope.2 params
List all DNS zones in the Cloudpress account. Requires dns:read scope.
pageintegeroptionalPage number for pagination.per_pageintegeroptionalNumber of results per page.cloudpressmcp_list_domain_contacts#List domain contacts.2 params
List domain contacts.
pageintegeroptionalNo description.per_pageintegeroptionalNo description.cloudpressmcp_list_domain_registrations#List domain registrations.2 params
List domain registrations.
pageintegeroptionalNo description.per_pageintegeroptionalNo description.cloudpressmcp_list_domains#List all domains in the workspace.2 params
List all domains in the workspace.
pageintegeroptionalNo description.per_pageintegeroptionalNo description.cloudpressmcp_list_edge_rules#List all edge rules configured for a site.1 param
List all edge rules configured for a site.
siteIdstringrequiredThe ID of the site to list edge rules for.cloudpressmcp_list_orders#List billing orders in the workspace.3 params
List billing orders in the workspace.
pageintegeroptionalPage number to retrieve (1-based). Defaults to 1.per_pageintegeroptionalNumber of orders to return per page. Defaults to 20.statusstringoptionalFilter orders by status. Omit to return orders of all statuses.cloudpressmcp_list_rate_limits#List rate limit rules for a site.1 param
List rate limit rules for a site.
siteIdstringrequiredNo description.cloudpressmcp_list_sites#Returns all active sites in the Cloudpress account.0 params
Returns all active sites in the Cloudpress account.
cloudpressmcp_list_subscriptions#List active subscriptions in the workspace.2 params
List active subscriptions in the workspace.
pageintegeroptionalPage number to retrieve (1-based). Defaults to 1.per_pageintegeroptionalNumber of subscriptions to return per page. Defaults to 20.cloudpressmcp_list_waf_custom_rules#List custom WAF rules for a site.1 param
List custom WAF rules for a site.
siteIdstringrequiredNo description.cloudpressmcp_list_waf_managed_rules#List managed WAF rules available for a site.1 param
List managed WAF rules available for a site.
siteIdstringrequiredNo description.cloudpressmcp_purge_cdn_cache#Purge the CDN cache for a site. Omit urls to purge the entire cache.3 params
Purge the CDN cache for a site. Omit urls to purge the entire cache.
request_idstringrequiredA unique identifier for this purge request, used for idempotency.siteIdstringrequiredThe ID of the site whose CDN cache should be purged.urlsarrayoptionalSpecific URLs to purge. If omitted, the entire site cache is purged.cloudpressmcp_rename_site#Rename a Cloudpress site's display name. Requires sites:write scope.3 params
Rename a Cloudpress site's display name. Requires sites:write scope.
idstringrequiredThe unique identifier of the Cloudpress site to rename.namestringrequiredThe new display name for the site.request_idstringrequiredClient-generated UUID for idempotency. Reuse the same UUID to safely retry without duplicate operations.cloudpressmcp_restart_site#Asynchronously restart a Cloudpress site's container. Requires sites:write scope.2 params
Asynchronously restart a Cloudpress site's container. Requires sites:write scope.
idstringrequiredThe unique identifier of the Cloudpress site to restart.request_idstringrequiredClient-generated UUID for idempotency. Reuse the same UUID to safely retry without triggering multiple restarts.cloudpressmcp_search_domains#Search for domain names matching a keyword.4 params
Search for domain names matching a keyword.
querystringrequiredThe search keyword to find matching domain names.pageintegeroptionalPage number for paginated results.per_pageintegeroptionalNumber of results per page.tldsarrayoptionalFilter results by specific top-level domains (e.g. ["com", "net"]).cloudpressmcp_suggest_domains#Get domain name suggestions based on a keyword.2 params
Get domain name suggestions based on a keyword.
keywordstringrequiredThe keyword to base domain name suggestions on.tldsarrayoptionalFilter suggestions by specific top-level domains (e.g. ["com", "net"]).cloudpressmcp_toggle_edge_rule#Enable or disable an edge rule without deleting it.3 params
Enable or disable an edge rule without deleting it.
enabledbooleanrequiredSet to true to enable the rule or false to disable it.ruleIdstringrequiredThe ID of the edge rule to enable or disable.siteIdstringrequiredThe ID of the site that owns the edge rule.cloudpressmcp_update_access_list#Update an existing IP access list for a Cloudpress site. Only provided fields are changed.6 params
Update an existing IP access list for a Cloudpress site. Only provided fields are changed.
listIdstringrequiredThe unique identifier of the access list to update.siteIdstringrequiredThe unique identifier of the site that owns the access list.descriptionstringoptionalUpdated description for the access list.enabledbooleanoptionalWhether the access list is active.ipsarrayoptionalUpdated array of IP addresses or CIDR ranges for the list.namestringoptionalUpdated human-readable name for the access list.cloudpressmcp_update_bot_detection#Update bot detection settings for a Cloudpress site, including enabling/disabling detection and the enforcement mode.3 params
Update bot detection settings for a Cloudpress site, including enabling/disabling detection and the enforcement mode.
enabledbooleanrequiredWhether bot detection is enabled for the site.siteIdstringrequiredThe unique identifier of the site to update bot detection settings for.modestringoptionalThe enforcement mode for detected bots: block, challenge, or log.cloudpressmcp_update_cdn_caching#Update CDN caching configuration for a site.4 params
Update CDN caching configuration for a site.
siteIdstringrequiredThe ID of the site to update CDN caching settings for.browser_cache_ttlintegeroptionalBrowser cache TTL in seconds. Omit to keep the current setting.cache_levelstringoptionalCache aggressiveness level: bypass, basic, or aggressive. Omit to keep the current setting.edge_cache_ttlintegeroptionalEdge cache TTL in seconds. Omit to keep the current setting.cloudpressmcp_update_curated_access_list#Enable or disable a Cloudpress-managed curated access list for a site.3 params
Enable or disable a Cloudpress-managed curated access list for a site.
enabledbooleanrequiredWhether to enable or disable this curated access list for the site.listIdstringrequiredThe unique identifier of the Cloudpress-managed curated access list.siteIdstringrequiredThe unique identifier of the site to update the curated access list for.cloudpressmcp_update_dns_record#Update an existing DNS record.7 params
Update an existing DNS record.
recordIdstringrequiredNo description.zoneIdstringrequiredNo description.contentstringoptionalNo description.namestringoptionalNo description.priorityintegeroptionalNo description.ttlintegeroptionalNo description.typestringoptionalNo description.cloudpressmcp_update_edge_rule#Update an existing edge rule for a site.7 params
Update an existing edge rule for a site.
ruleIdstringrequiredThe ID of the edge rule to update.siteIdstringrequiredThe ID of the site that owns the edge rule.actionstringoptionalUpdated action for the rule. Omit to keep the current action.conditionsarrayoptionalUpdated conditions array. Omit to keep the current conditions.descriptionstringoptionalUpdated description for the rule. Omit to keep the current description.enabledbooleanoptionalUpdated enabled state. Omit to keep the current state.namestringoptionalUpdated name for the rule. Omit to keep the current name.cloudpressmcp_update_rate_limit#Update an existing rate limit rule for a Cloudpress site. Only provided fields are changed.7 params
Update an existing rate limit rule for a Cloudpress site. Only provided fields are changed.
ruleIdstringrequiredThe unique identifier of the rate limit rule to update.siteIdstringrequiredThe unique identifier of the site that owns the rate limit rule.actionstringoptionalUpdated action to take when threshold is exceeded.enabledbooleanoptionalWhether the rate limit rule is active.namestringoptionalUpdated human-readable name for the rate limit rule.periodintegeroptionalUpdated time window in seconds for request counting.thresholdintegeroptionalUpdated maximum number of requests allowed within the period.cloudpressmcp_update_shield#Update Shield configuration for a Cloudpress site, including sensitivity level, challenge TTL, and browser integrity check.4 params
Update Shield configuration for a Cloudpress site, including sensitivity level, challenge TTL, and browser integrity check.
siteIdstringrequiredThe unique identifier of the site to update Shield configuration for.browser_integrity_checkbooleanoptionalWhether to enable browser integrity checking to block requests from suspicious clients.challenge_ttlintegeroptionalDuration in seconds that a passed challenge remains valid before re-challenging.sensitivitystringoptionalThe Shield sensitivity level. Controls how aggressively traffic is filtered.cloudpressmcp_update_waf_custom_rule#Update an existing custom WAF rule for a Cloudpress site. Only provided fields are changed.8 params
Update an existing custom WAF rule for a Cloudpress site. Only provided fields are changed.
ruleIdstringrequiredThe unique identifier of the WAF custom rule to update.siteIdstringrequiredThe unique identifier of the site that owns the WAF rule.actionstringoptionalUpdated action to take when the rule matches.descriptionstringoptionalUpdated description for the WAF rule.enabledbooleanoptionalWhether the rule is active.expressionstringoptionalUpdated firewall rule expression.namestringoptionalUpdated human-readable name for the WAF rule.priorityintegeroptionalUpdated rule evaluation priority.