ratchet_advance
[identity] RatchetGate — advance session
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes |
[identity] RatchetGate — advance session
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes |
Changes observed during successful MCP inspections.
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 and fails it. It does not state that this is a state-mutating operation, whether the advance is reversible, what preconditions (registered/probed session) apply, or what happens on an invalid session_id. "Advance" weakly implies forward-only progress, which is the only behavioral signal present.
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 text is short, but shortness here reflects under-specification rather than economy. It also contains a stray "[identity]" tag and mojibake ("—"), which are noise rather than signal and make the definition harder to parse. Nothing meaningful is front-loaded because almost nothing is said.
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 annotations, no output schema, no parameter documentation, and a mutating session operation in a large tool family, the definition supplies none of the context needed to invoke it safely. An agent would have to guess at preconditions, side effects, and return behavior. It is inadequate for the tool's apparent complexity.
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?
There is one parameter at 0% schema description coverage, so the description must compensate and does not mention session_id at all. The schema only supplies an example value ("sess-001"), with no indication of where the id comes from or what format it takes beyond the example. A passing baseline does not apply because the single parameter is entirely undocumented.
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 phrase "advance session" gives a concrete verb and resource, and "RatchetGate" hints at the subsystem, so it is not a pure restatement of the name. However, it never says what advancing does to a session (move to the next stage? increment a counter? commit a step?), leaving the core purpose only half-specified. It is distinguishable from siblings only because their names differ, not because the description draws a line.
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 when-to-use guidance is given at all, and no alternative is named despite close siblings ratchet_register and ratchet_probe existing in the same family. An agent cannot tell from the text whether registration or probing must precede an advance, or when this tool is the wrong choice. This is the weakest possible state short of misleading guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.