Skip to main content
Glama

sylve_jail_create

Destructive

Create a FreeBSD Jail on a ZFS pool with configurable resources, networking, boot behavior, and cluster node targeting for Sylve-managed environments.

Instructions

Create a FreeBSD Jail on a ZFS pool.

Input Schema

NameRequiredDescriptionDefault
baseNo
dhcpNo
nameYes
nodeNoTarget cluster node hostname or UUID. Omit for cluster-wide.
poolYesZFS pool name.
typeNofreebsd
coresNo
memoryNoRAM limit, e.g. '1G'.
contextNoNamed login context from ~/.config/sylve/config.yaml.
hostnameNo
ipv4_rawNo
ipv6_rawNo
descriptionNo
ipv4_gw_rawNo
ipv6_gw_rawNo
start_orderNo
switch_nameNo
start_at_bootNo
bootstrap_nameNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true, idempotentHint=false and readOnlyHint=false, so the safety and re-invocation profile is covered structurally. The description adds nothing beyond them — no mention of what gets provisioned, whether creation partially fails and leaves artifacts, permission/auth requirements, or how long it takes. With annotations carrying the basics, this is a thin but not contradictory addition.

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?

One short, front-loaded sentence with no filler, which is structurally clean. However the brevity here is under-specification rather than economy — the size is far too small for a 19-parameter destructive creation tool.

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

Completeness2/5

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

For a destructive, non-idempotent creation tool with 19 parameters, no output schema, and low schema coverage, the description omits essentially everything an agent needs: required-field meaning, defaults, network configuration expectations, and what is returned (e.g. a jail identifier). It is only marginally adequate.

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

Parameters2/5

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

Schema description coverage is only 21% across 19 parameters, so the description must compensate and it does not. Fields like base, bootstrap_name, switch_name, dhcp, ipv4_raw, ipv4_gw_raw, start_order and start_at_boot are undocumented in both places, leaving the agent to guess at formats and cardinality for a high-stakes creation call.

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

Purpose4/5

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

The description states a specific verb and resource ("Create a FreeBSD Jail") and adds the storage substrate ("on a ZFS pool"), which clearly separates it from sylve_jail_list, sylve_jail_show, sylve_jail_delete and sylve_jail_action. It does not distinguish it from the adjacent creation-adjacent siblings sylve_jail_template or sylve_jail_bootstrap, so it stops short of full disambiguation.

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

Usage Guidelines2/5

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

There is no guidance on when to use this versus sylve_jail_bootstrap (which likely populates the jail) or sylve_jail_template (which likely creates from a template), nor on ordering or prerequisites. The agent is left to infer the full workflow from sibling names alone.

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