Skip to main content
Glama

Close a node that is not the focus

vivac_done

Close a non-focus node by recording its outcome; use pop for focused nodes. For unresolved conditions, require forced closure with a person present.

Instructions

Close a non-focus node with its outcome; use pop for focus. Close a finding that asks nothing immediately with a Record: outcome. Unresolved conditions require terminal done --force with a person present.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "id": "<id>"
    },
    "name": "vivac_done"
  }
}

Input Schema

NameRequiredDescriptionDefault
idYesNode ID or alias, e.g. t4.
outcomeNoWhat was completed; for a record start with Record:.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.22.1
    • changedInput schema / properties / id / description
      Previous value: -"The node to close, as the tree names it: f12, t4."New value: +"Node ID or alias, e.g. t4."
    • changedInput schema / properties / outcome / description
      Previous value: -"What came of it. For a record, what it records, starting with Record:."New value: +"What was completed; for a record start with Record:."
  2. First observedv0.17.1

TDQS

A4.2/5.0
Behavior4/5

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

Beyond the annotations (readOnlyHint=false, destructiveHint=false, idempotentHint=false), it discloses a real precondition: unresolved conditions require an escalated '--force' path and human presence, which is safety context the annotation set does not convey. The gap is that '--force' and 'terminal done' reference a CLI construct absent from the input schema, so the agent cannot map that instruction onto an available parameter, and nothing is said about what happens to dependents of a closed node or about repeat calls on an already-closed id.

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?

Three short sentences with the core routing constraint front-loaded ahead of the edge cases, and no filler. The sentences are densely packed with tool-specific jargon ('node', 'finding', 'Record:', 'terminal done --force'), which costs a little readability but keeps the definition compact.

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

Completeness3/5

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

For a two-parameter mutation tool with no output schema, the description covers purpose and routing well but leaves the escalation mechanism unexplained relative to the schema, and says nothing about post-close state or the non-idempotent behavior the annotations imply. An agent could still call it, but the '--force' sentence is orphaned.

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 coverage is 100%, so both 'id' and 'outcome' are already documented with examples ('t4', 'for a record start with Record:'). The description reinforces the 'Record:' convention for findings but mostly restates what the schema says, adding little new meaning about format, length, or validation.

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?

The description names a specific verb and resource ('Close a non-focus node with its outcome') and explicitly separates this tool from the sibling it could be confused with ('use pop for focus'). An agent can choose between vivac_done and vivac_pop without inspecting either schema.

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

Usage Guidelines5/5

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

It gives explicit routing rules: non-focus nodes go here, focus nodes go to pop, findings that ask nothing use a 'Record:' outcome, and unresolved conditions need the terminal 'done --force' path with a person present. When-to-use, when-not-to-use, and the alternative are all stated.

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