Skip to main content
Glama

zcode_session

Control ZCode session lifecycle and per-session settings: create, resume, fork, close, and update model, mode, or thought level.

Instructions

ZCode session lifecycle and per-session settings. Mutating actions re-read the session and fail if the observed value disagrees with the request.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

C2.8/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full disclosure burden. It does surface one genuinely non-obvious trait: mutating actions re-read the session and fail on observed-value mismatch (compare-and-swap semantics), which is useful and not derivable from the schema. However, it says nothing about which of the 13 actions are destructive (close, compact, fork), permission requirements, or side effects of lifecycle transitions.

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?

Two tightly written sentences with zero filler, and the resource domain is front-loaded ahead of the transactional caveat. It is held back from a 5 only because the extreme brevity comes at the cost of hiding the action menu that defines the 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 13-action polymorphic tool with no annotations and no output schema, the description omits the single most important fact: that invocation is action-dispatched. An agent gets no read-vs-write map across the actions, no hint about the create/resume/close lifecycle ordering, and no return-value expectations, so it must reverse-engineer intent entirely from the schema.

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

Parameters3/5

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

Schema description coverage is reported at 100%, and the schema itself carries the load: session_id format, the first_input foreign-key warning, and the persistence default are all documented inline. The description adds no parameter meaning at all, so the baseline of 3 applies.

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

Purpose3/5

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

The description names the resource domain ("ZCode session lifecycle and per-session settings") but never states a verb and never reveals that this is a polymorphic dispatcher covering 13 distinct actions (list, get, create, resume, close, fork, compact, set_model, set_mode, set_thought_level, goal, subagents, usage). Without opening the schema an agent cannot tell what it actually does. It also does not differentiate from siblings like zcode_chat, zcode_conversation, zcode_settings, or zcode_usage, whose territory overlaps with this tool's settings/usage actions.

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?

The only usage-relevant statement is an implicit caution about mutating actions failing on value disagreement; there is no explicit when-to-use, when-not-to-use, or alternative-tool routing. For a tool whose scope overlaps zcode_chat, zcode_settings and zcode_usage, the absence of any 'use this instead of X when Y' guidance is a real gap.

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