Skip to main content
Glama

pve_ceph_pool_set

Modify an existing Ceph pool's configuration such as replica count, placement groups, CRUSH rule, and autoscaling. Dry-run planning by default; confirm to execute changes.

Instructions

MUTATION: change an existing Ceph pool's settings.

RISK_MEDIUM: a pg_num change triggers cluster rebalance (docstring/plan say so plainly). At least one field must be set — a call with every field omitted is refused before any wire call (the pve_ceph_flags_set "at least one" lesson). No upstream cmd-safety check exists for pool changes. CAPTURE-or-declare: reads the pool's current settings before planning (also readable directly via pve_ceph_pool_status, ADVERSARIAL — taint marked when tracking is on); if unreadable -> complete=False. Dry-run by default (returns a PLAN); confirm=True executes (PUT /nodes/{node}/ceph/pool/{name}) and returns {"status": "submitted", "result": }. No rollback primitive on this plane — revert by re-applying the captured prior settings with this same tool.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesName of the pool to change.
nodeNoPVE node the pool is on; defaults to the configured node if omitted.
sizeNoNumber of replicas per object (1-7).
pg_numNoNumber of placement groups (1-32768). CAUTION: changing this triggers cluster rebalance.
confirmNoFalse (default) returns a dry-run PLAN only; True executes the change.
min_sizeNoMinimum number of replicas per object to allow I/O (1-7).
crush_ruleNoCRUSH rule NAME to use for object placement (a string — NOT the numeric id pve_ceph_pool_list returns for this same field; pve_ceph_pool_status's crush_rule is ALREADY the same string type, no divergence there).
pg_num_minNoMinimum placement-group count the autoscaler may choose (<=32768).
applicationNoPool application: 'rbd', 'cephfs', or 'rgw'.
target_sizeNoEstimated target size for the PG autoscaler: a number optionally suffixed with K/M/G/T (e.g. '10G').
proximo_targetNoWhich configured Proxmox target to run this call against — a target name from your multi-target config (a specific PVE/PBS/PMG/PDM box). Omit to use the single/default target from the environment; the selection applies only to this call.
pg_autoscale_modeNoPG autoscaler mode: 'on', 'off', or 'warn'.
target_size_ratioNoEstimated target ratio of total pool capacity, for the PG autoscaler.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior5/5

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

Annotations are absent, so the description carries full burden. It explicitly marks 'MUTATION', states 'RISK_MEDIUM' with a concrete example (pg_num change triggers cluster rebalance), notes the absence of an upstream command-safety check, describes the dry-run/confirm execution path, explains the capture-declare pattern (reads current settings before planning; if unreadable -> complete=False), and clarifies no rollback primitive. All these disclose significant behavioral traits beyond the schema.

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

Conciseness3/5

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

The description is comprehensive but somewhat verbose. It includes meta-commentary like '(docstring/plan say so plainly)' and '(the pve_ceph_flags_set ... lesson)' that could be omitted without loss. The structure is reasonable, front-loading the purpose and then detailing behavior, but some sentences are longer than necessary. Could be more streamlined while retaining all essential information.

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

Completeness5/5

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

Given the complexity (13 parameters, 1 required, output schema exists), the description covers all critical aspects: mutation purpose, risk level, execution flow (dry-run vs confirm), capture-declare pattern, constraint of at least one field, no rollback but workaround, and a reference to a related read tool. The presence of an output schema eliminates the need to describe return values. No significant gaps.

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% with detailed per-parameter descriptions (e.g., crush_rule warns about string vs numeric, pg_num includes CAUTION). The tool-level description adds the constraint 'At least one field must be set', which is a validation rule not present in the schema. This additional semantic context elevates the score above the baseline of 3.

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?

Starts with 'MUTATION: change an existing Ceph pool's settings', clearly stating the verb and resource. Differentiates from sibling tools like pve_ceph_pool_create (create), pve_ceph_pool_destroy (delete), pve_ceph_pool_list (list), and pve_ceph_pool_status (read) by focusing on modification of an existing pool. The 'MUTATION' label further distinguishes it from read-only operations.

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?

Provides explicit guidance on when to use: for changing pool settings, with the observation that at least one field must be set (citing a lesson from pve_ceph_flags_set). Describes the dry-run default (returns a PLAN) and confirm=True for execution. Mentions that no rollback primitive exists and suggests reverting by reapplying prior settings. Also references pve_ceph_pool_status as an alternative for reading current settings. Does not explicitly compare to pve_ceph_pool_create or pve_ceph_pool_destroy, but the use case is clear.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/john-broadway/proximo'

If you have feedback or need assistance with the MCP directory API, please join our Discord server