Skip to main content
Glama

protect_stack

Turn on scheduled backup protection for a stack (the twin of ankra cluster stacks protect): Ankra writes the stack's backup policy through GitOps and the ankra-backup stack on the cluster takes the captures. Omitted fields keep the stack's stored policy, so a schedule change need not restate the selection. Setting databases=false means the restore points carry NO database contents, which needs confirm_exclude_databases=true. Requires backups.manage.

Input Schema

NameRequiredDescriptionDefault
scheduleNohourly, daily, weekly, or a cron expression. Omit to take the platform default (daily).
vault_idNoBackup vault id or name to write to, from list_backup_vaults. Omit when the organisation has exactly one ready vault.
databasesNoWhether the stack's databases are captured. Setting it to false means the restore points carry no database contents at all. Naming it at all makes the selection explicit, so pair it with persistent_volume_claims unless you mean to capture the databases alone.
retentionNoHow many restore points each tier keeps. Omit to take the platform default.
backup_nowNoAlso take a restore point immediately, rather than waiting for the first scheduled run.
cluster_idNoUUID of the cluster. Alternative to cluster_name.
stack_nameYesThe stack to protect.
cluster_nameNoExact name of the cluster. Optional when a cluster is already selected in the conversation.
persistent_volume_claimsNoNames of the persistent volume claims to capture, from list_stack_data_assets. A selection is applied WHOLE, not merged with the stack's stored one: naming none of them captures no volumes at all. Send no selection (no databases, no persistent_volume_claims) to keep the stack's stored policy.
confirm_exclude_databasesNoRequired with databases=false: acknowledges that this stack's restore points will carry no database contents.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only say it is a non-read-only, non-destructive, non-idempotent write. The description adds real behavioral context: the policy is written through GitOps, omitted fields are preserved rather than reset, databases=false silently drops all database contents from restore points, and the required permission is backups.manage. That is beyond what the structured fields disclose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three dense sentences, front-loaded with the primary action and effect, then the merge/omission rules, then the permission requirement. Slightly long clauses but every sentence carries operational information for a 10-parameter tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with 10 parameters, nested retention object, no output schema and only partial annotation coverage, the description covers side effects, defaults, cross-parameter constraints, and authorization. It does not address failure modes or what happens if the cluster/GitOps write fails, which is the main remaining gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, but the description adds cross-parameter meaning: the databases/confirm_exclude_databases coupling and the rule that omitting both databases and persistent_volume_claims preserves the stored policy. Useful integration detail beyond the per-field schema text, though some of it is duplicated in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Turn on scheduled backup protection for a stack') and even explains the mechanism (policy written via GitOps, the ankra-backup stack takes the captures). This clearly separates it from siblings like unprotect_stack, create_stack_restore_point, or provision_backup_vault.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explains the operational conditions: omitted fields keep the stored policy, databases=false requires confirm_exclude_databases=true, and the call needs backups.manage. It does not explicitly name alternatives (e.g. unprotect_stack to reverse it, or create_stack_restore_point for a one-off capture), so routing guidance is implied rather than spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources