empaya-mcp-server
Provides tools to manage Cloudways servers, apps, stats, deployments, logs, environment variables, SSL certificates, backups, and services.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@empaya-mcp-serverlist my Cloudways servers"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Cloudways MCP Server
Servidor MCP para operar Cloudways desde Claude Code u otros clientes MCP.
Nota importante: la documentacion publica de Cloudways indica que API V1 llega a fin de vida el 31 de marzo de 2026. Este paquete sigue la estructura V1 del brief original, con
CLOUDWAYS_API_BASE_URLconfigurable para poder migrar endpoints a V2 sin reescribir los tools.
Tools incluidos
list-cloudways-serverslist-cloudways-appsget-server-statsdeploy-cloudways-appcheck-deployment-statusget-cloudways-logsset-environment-variablelist-environment-variablesmanage-ssl-certificatecreate-cloudways-backuplist-cloudways-backupsrestart-cloudways-service
Related MCP server: Cloudflare Deployer
Instalacion local
npm install
npm run buildConfigura credenciales:
cp .env.example .envCLOUDWAYS_EMAIL=tu_email@example.com
CLOUDWAYS_API_TOKEN=tu_api_token
CLOUDWAYS_LOG_LEVEL=info
CLOUDWAYS_API_BASE_URL=https://api.cloudways.com/api/v1Uso con Claude Code
Ejemplo de configuracion MCP:
{
"mcpServers": {
"cloudways": {
"command": "node",
"args": ["C:/Claude/empaya/cloudways-mcp-server/dist/index.js"],
"env": {
"CLOUDWAYS_EMAIL": "tu_email@example.com",
"CLOUDWAYS_API_TOKEN": "tu_api_token"
}
}
}
}Tambien puedes ejecutar:
npm run devSeguridad
No commitees
.envni tokens.list-environment-variablesredacta valores sensibles.Los certificados SSL custom se pasan solo en la llamada MCP y no se escriben en disco.
Desarrollo
npm run typecheck
npm run buildLos endpoints estan centralizados en src/api/*. Si Cloudways V2 usa rutas distintas, ajusta esas clases y los nombres de tools pueden quedarse estables.
Available Tools
12 toolscheck-deployment-statusCheck Deployment StatusC
Check progress and logs for a Cloudways deployment.
| Name | Required | Description | Default |
|---|---|---|---|
| server_id | Yes | ||
| app_id | Yes | ||
| deployment_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It implies a read-only check but does not explicitly state no side effects, permission requirements, or error behavior. The phrase 'Check progress and logs' is vaguely unambiguous but insufficiently detailed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, but given the tool has three required parameters and no annotations, it is too brief to be optimal. It could be more informative without sacrificing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, no parameter descriptions, and no contextual guidance. The description lacks information about what the tool returns (e.g., status details, log format) and error handling, making it incomplete for a tool with three required inputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the three parameters (server_id, app_id, deployment_id). It only mentions the general resource, adding no semantics beyond the schema's type and required fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks progress and logs for a Cloudways deployment, distinguishing it from sibling tools like deploy-cloudways-app (deployment action) and get-cloudways-logs (general logs). The verb 'Check' and specific resource are unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. It does not mention scenarios like after a deployment is initiated or checking specific deployment IDs, nor does it provide negative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create-cloudways-backupCreate Cloudways BackupC
Create an on-demand backup for a Cloudways application.
| Name | Required | Description | Default |
|---|---|---|---|
| server_id | Yes | ||
| app_id | Yes | ||
| backup_name | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, and the description does not disclose behavioral traits such as whether the backup is immediate, queued, or if it replaces an existing backup. For a mutation tool, this lack of detail is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise with a single sentence, but it is too minimalist. While brevity is valued, this lacks essential context that a longer description would provide.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, no annotations, and 3 parameters (2 required), the description is incomplete. It does not explain expected results, error conditions, or any additional context needed for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should compensate. However, it only mentions 'Cloudways application' without explaining server_id, app_id, or backup_name. The meaning of parameters is left entirely to the schema, which lacks descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Create' and the resource 'on-demand backup for a Cloudways application'. It is specific and distinguishes from sibling tools like list-cloudways-backups and deploy-cloudways-app.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as when to create a backup vs list existing backups. It does not mention prerequisites like server and app existence or any constraints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
deploy-cloudways-appDeploy Cloudways AppC
Start a Git deployment for a Cloudways application.
| Name | Required | Description | Default |
|---|---|---|---|
| server_id | Yes | ||
| app_id | Yes | ||
| git_branch | No | main | |
| commit_message | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behavioral traits. It only says 'Start a Git deployment', which implies mutation, but lacks details on idempotency, overwriting behavior, downtime impact, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise and front-loaded, but it is too terse and lacks necessary details, making it under-specified rather than efficiently structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 4 parameters, no output schema, and no annotations, the description is incomplete. It does not explain the deployment process, expected output, or how to monitor progress, leaving significant gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and description adds no information about parameters (server_id, app_id, git_branch, commit_message). The description does not explain their meaning or usage beyond the schema fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Start' and resource 'Git deployment for a Cloudways application', but it does not distinguish from sibling tools like 'restart-cloudways-service' or 'check-deployment-status', missing specificity about what 'deploy' entails.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, no mention of prerequisites (e.g., app must exist) or conditions where deployment should not be triggered.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-cloudways-logsGet Cloudways LogsC
Read recent Cloudways application, error, access, or deployment logs.
| Name | Required | Description | Default |
|---|---|---|---|
| server_id | Yes | ||
| app_id | Yes | ||
| log_type | Yes | ||
| lines | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only says 'Read recent logs,' implying a non-destructive operation, but fails to disclose important behavioral traits like how 'recent' is defined, authentication requirements, or rate limits. With no annotations, the description carries full burden and falls short.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no unnecessary words. It is front-loaded with the key action and resource. However, it could be slightly more informative without sacrificing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given four parameters, no output schema, and no annotations, the description is incomplete. It does not specify the output format, how many lines are returned (lines parameter), or any filtering behavior. For a log retrieval tool, more context is essential.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%. The description mentions the log types (application, error, access, deployment) which partially explains the log_type parameter, but does not document server_id, app_id, or lines. The enum values are echoed from the schema, adding minimal value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Read recent Cloudways application, error, access, or deployment logs.' It clearly identifies the resource (Cloudways logs) and action (read), and mentions specific log types, distinguishing it from sibling tools like list-cloudways-apps or get-server-stats.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as check-deployment-status or deploy-cloudways-app. There is no mention of prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-server-statsGet Server StatsC
Fetch CPU, RAM, disk, uptime, and load information for a Cloudways server.
| Name | Required | Description | Default |
|---|---|---|---|
| server_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and description only implies a read operation without disclosing potential delays, authentication needs, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with 13 words, highly concise, but could include slightly more detail without being verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Minimally adequate for a simple fetch tool, but lacks output format hints or any additional context beyond the basic fetch statement.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and description does not explain server_id's meaning or how to obtain it, adding no value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool fetches CPU, RAM, disk, uptime, and load for a Cloudways server using a specific verb and resource, distinguishing it from sibling tools like list-cloudways-servers or check-deployment-status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives; lacks context like monitoring vs historical data requests.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list-cloudways-appsList Cloudways ApplicationsC
List applications for a Cloudways server.
| Name | Required | Description | Default |
|---|---|---|---|
| server_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must cover behavioral traits. It only states it lists applications (a read operation), but omits details like permissions, rate limits, or pagination behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded. However, it could be slightly more informative without being verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks context about what exactly 'applications' refers to, what the return format is (no output schema), and what the server_id parameter represents. For a simple tool, it is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the tool description does not explain the 'server_id' parameter or its purpose. The agent receives no additional meaning beyond the schema's type and required status.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list' and the resource 'applications for a Cloudways server', which distinguishes it from sibling tools like list-cloudways-servers. However, it does not explicitly differentiate from other list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, nor are there any prerequisites or conditions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list-cloudways-backupsList Cloudways BackupsC
List backups and their metadata for a Cloudways application.
| Name | Required | Description | Default |
|---|---|---|---|
| server_id | Yes | ||
| app_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must fully convey behavior. It only states it 'lists' backups and metadata, but does not confirm read-only nature, required permissions, or any side effects. This is insufficient for a tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no redundant words. However, it could be more structured by adding a separate line for parameter details. It is concise but not optimally structured for quick scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, no annotations, and two required parameters, the description is incomplete. It does not explain what 'metadata' is returned, nor how to locate server IDs and app IDs. The tool's complexity is low but justification requires more context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, yet the description adds no explanation of 'server_id' or 'app_id'. The schema only has minLength constraints. The description fails to clarify what these parameters represent or how to obtain them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List', the resource 'backups', and the scope 'for a Cloudways application'. It is specific and distinguishes from sibling tools like 'create-cloudways-backup'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus other backup-related tools (e.g., create-cloudways-backup). It lacks context about prerequisites or suitable scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list-cloudways-serversList Cloudways ServersB
List Cloudways servers with optional status filtering.
| Name | Required | Description | Default |
|---|---|---|---|
| filter | No | all |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose any behavioral traits such as pagination, rate limits, authentication requirements, or whether the list is comprehensive. With no annotations, the description should cover these, but it does not.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise sentence with no wasted words. Front-loaded with the core action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one optional parameter and no output schema, the description is mostly adequate. It could be improved by noting if there is pagination or a default limit, but given the simplicity, it is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has one parameter with enum values, and description adds 'optional status filtering' which minimally expands understanding. However, with 0% schema description coverage and only one param, the description does not explain the effect of each status value or how filtering works.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'List Cloudways servers' (specific verb+resource) and mentions the optional status filtering. However, it does not differentiate from sibling list tools like 'list-cloudways-apps' or 'list-cloudways-backups'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives. There is no mention of when to use the status filter or when other list tools are more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list-environment-variablesList Environment VariablesA
List Cloudways environment variable names without exposing sensitive values.
| Name | Required | Description | Default |
|---|---|---|---|
| server_id | Yes | ||
| app_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly notes that sensitive values are not exposed, which is a critical behavioral trait. With no annotations, this disclosure adds significant value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence that is concise and front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose and key behavior but lacks parameter context, error conditions, or prerequisites; adequate for a simple list tool but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has two required parameters with no descriptions, and the tool description provides no explanation of what server_id and app_id mean or how to obtain them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'list' and the resource 'Cloudways environment variable names', distinguishing it from sibling tools like 'set-environment-variable'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives, but the purpose is specific enough that confusion with siblings like 'get-server-stats' is unlikely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
manage-ssl-certificateManage SSL CertificateC
List, enable automatic SSL, or install a custom SSL certificate for an app.
| Name | Required | Description | Default |
|---|---|---|---|
| server_id | Yes | ||
| app_id | Yes | ||
| action | Yes | ||
| certificate_content | No | ||
| key_content | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description should disclose behavioral details. It does not mention side effects (e.g., certificate replacement), required permissions, or response content. For a mutation tool, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no filler, effectively front-loading the key actions. Could be slightly more structured to separate actions, but adequate for quick scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without an output schema and with 5 parameters, the description leaves significant gaps. It does not explain return values, error conditions, or the meaning of each action's parameters, making it insufficient for correct tool invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so description should explain parameters. It only lists actions but omits the purpose of `server_id`, `app_id`, `certificate_content`, and `key_content`. The relationship between actions and required parameters is unclear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states three distinct actions (list, enable auto, install custom) with clear verb-resource pairs. It distinguishes from sibling tools, none of which handle SSL directly. However, it could be more specific about the Cloudways context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use a particular action or when to prefer this tool over alternatives. No prerequisites or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
restart-cloudways-serviceRestart Cloudways ServiceC
Restart a Cloudways server service. Endpoint may need adjustment for Cloudways API V2.
| Name | Required | Description | Default |
|---|---|---|---|
| server_id | Yes | ||
| service | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It does not disclose that restarting a service may cause downtime, require authentication, or have other side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short but includes a potentially distracting note about endpoint adjustment. It is not as concise as it could be for an AI agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, no parameter details, and no behavioral context. For a tool that performs a potentially disruptive action, the description is insufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description provides no explanation of parameters. The agent gets no help understanding what 'server_id' means or which 'service' values are appropriate beyond the enum list.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('restart') and the resource ('Cloudways server service'), and the title matches. It is distinct from sibling tools which focus on deployment, backups, logs, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, no prerequisites, and no context about appropriate scenarios. The description only states what it does, not when.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set-environment-variableSet Environment VariableC
Set or update an environment variable for a Cloudways application.
| Name | Required | Description | Default |
|---|---|---|---|
| server_id | Yes | ||
| app_id | Yes | ||
| variable_name | Yes | ||
| variable_value | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behaviors. It only states 'set or update' without explaining implications like overwriting, permissions needed, or effects on running app.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no redundant words. Efficient but lacks depth.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, 4 required parameters, mutation tool. Description does not cover return value, error conditions, or side effects. Incomplete for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%. The description adds no meaning to parameters like server_id, app_id, variable_name, variable_value. It does not explain format, constraints, or relationships.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool sets or updates an environment variable for a Cloudways application. The verb and resource are specific and distinct from sibling tools like list-environment-variables.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. It does not mention prerequisites, when-not-to-use, or context like needing an existing app or server.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
12 tool updates
v1.0.0- First observed
check-deployment-status - First observed
create-cloudways-backup - First observed
deploy-cloudways-app - First observed
get-cloudways-logs - First observed
get-server-stats - First observed
list-cloudways-apps - First observed
list-cloudways-backups - First observed
list-cloudways-servers - First observed
list-environment-variables - First observed
manage-ssl-certificate - First observed
restart-cloudways-service - First observed
set-environment-variable
TDQS
Scored across 12 tools
Each tool has a clearly distinct purpose covering different Cloudways management tasks (deployment, backups, logs, environment variables, SSL, etc.). No two tools appear to do the same thing.
All names use snake_case and start with a verb, but there is some inconsistency in whether 'cloudways' is included in the noun (e.g., 'list-cloudways-apps' vs 'check-deployment-status'). Overall the pattern is mostly predictable.
12 tools is appropriate for a Cloudways management server. Each tool covers a necessary operation without unnecessary bloat, and the number is within the ideal 3-15 range.
The tool surface covers major workflows like listing, deploying, backups, logs, SSL, and environment variables. Minor gaps exist (e.g., no delete backup or delete environment variable), but overall it is largely sufficient for common tasks.
Maintenance
Related MCP Connectors
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Hosted Amazon Seller and Vendor MCP server for Claude, ChatGPT, Cursor, Codex, Gemini, Copilot.
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
Hosted Amazon Seller Central and Amazon Ads MCP server for Claude, ChatGPT, Cursor, and agents.
Related MCP Servers
- AlicenseBqualityAmaintenanceMCP Server for full Easypanel control via Claude Code, Cursor, and Claude Desktop. Provides 37 tools for deploy, logs, env vars, domains, databases, and monitoring with built-in safety guards.5714 npm4MIT
- FlicenseNot gradedqualityDmaintenanceAn MCP server that enables Claude to deploy full-stack web apps to Cloudflare, including databases, authentication, and file storage, directly through natural language.-
- AlicenseNot gradedqualityDmaintenanceMCP server for managing VPS servers via SSH, enabling command execution, file transfer, Docker management, and server documentation from within Claude.8 npmISC
- FlicenseNot gradedqualityCmaintenanceMCP server for remote Linux server administration via SSH, integrating with Claude Code to manage Ubuntu/Debian servers.2-