delivery_recover
Recover interrupted output publications by restoring their state from the journal.
Instructions
Recover an interrupted output publication from its journal.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| project_id | Yes |
Recover interrupted output publications by restoring their state from the journal.
Recover an interrupted output publication from its journal.
| Name | Required | Description | Default |
|---|---|---|---|
| project_id | Yes |
Changes observed during successful MCP inspections.
v0.1.0Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only mentions recovery from a journal, but does not disclose side effects, idempotency, whether it modifies state, whether it requires specific preconditions (e.g., existence of a journal, publication being in an interrupted state), or what the output looks like. For a recovery operation, this is a significant gap that could lead to misuse.
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 description is a single sentence with no extraneous content. It front-loads the action and resource, and every word earns its place. It is appropriately sized for a simple tool.
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?
Given the tool's simplicity (one parameter), the description is still incomplete. It lacks essential context such as when a journal is created, what qualifies as an interrupted publication, whether recovery is safe (idempotent, destructive), and what the expected outcome is. Without annotations or an output schema, the agent is left without sufficient information to correctly invoke and trust the tool. More detail on prerequisites and behavior is needed.
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?
Schema description coverage is 0%, so the description must compensate for the parameter. The only parameter, project_id, is not explained in the description—it does not clarify that this is the project whose interrupted publication should be recovered. While the parameter name is self-explanatory to some degree, the description adds no extra meaning or context beyond the raw schema, failing to compensate for the missing schema descriptions.
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 description clearly states the action (recover) and the resource (interrupted output publication from its journal). It distinguishes itself from siblings like delivery_publish and batch_delivery_publish by focusing on recovery of an interrupted process rather than starting or continuing publication. However, it does not explicitly differentiate from other 'resume' tools like batch_render_resume or instrument_probe_resume, though the context of delivery is clear.
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?
The description implies usage after an interrupted output publication, but provides no explicit guidance on when to use this tool versus alternatives like delivery_inspect or delivery_publish. There are no stated prerequisites, conditions for use, or exclusions. The intended use is only inferable from the name and brief description, leaving the agent to reason about context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.