Skip to main content
Glama

initiate_closeout

Destructive

Start the closeout of a completed or cancelled project: captures a final baseline ("Final closeout snapshot") and its EVM summary, writes the closeout report into the project's documents, and leaves the record in DRAFT. Called again while the closeout is DRAFT it recaptures both and rolls the report forward as a new version. Refused while the closeout is in review or signed off (CLOSEOUT_LOCKED) and on a project that is not completed or cancelled (PROJECT_NOT_CLOSED). Needs project.edit. Returns the same record get_closeout_status returns.

Input Schema

NameRequiredDescriptionDefault
projectIdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond the annotations: it discloses the mutation effects (baseline capture, document write, DRAFT state), the re-run semantics, the specific refusal conditions and error codes, and the required permission (project.edit). The destructiveHint=true annotation is consistent with a tool that writes documents and captures a baseline; no contradiction.

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?

Dense but front-loaded, leading with the core action before the re-entrancy and refusal details. Every sentence carries information (effects, re-run behavior, error codes, permission, return value), though the packing is heavy for a single-parameter tool.

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

Completeness5/5

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

No output schema exists, but the description explicitly says it returns the same record get_closeout_status returns, covering the return contract. Effects, preconditions, permissions, and failure modes are all present, so an agent has everything needed to call it correctly.

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

Parameters4/5

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

Only one parameter (projectId) with 0% schema description coverage, but the parameter is self-evident from the description's framing around 'a completed or cancelled project'. The description adds no explicit parameter syntax, but there is little to add for a single obvious identifier.

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?

States a specific verb+resource ('Start the closeout of a completed or cancelled project') and enumerates concrete effects: captures a final baseline, writes the closeout report, and leaves the record in DRAFT. An agent can distinguish this from siblings like get_closeout_status or submit_closeout_signoff without opening any 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?

Explicitly covers the re-entrant case ('Called again while the closeout is DRAFT it recaptures both and rolls the report forward as a new version') and the refusal cases with named error codes (CLOSEOUT_LOCKED when in review/signed off, PROJECT_NOT_CLOSED when the project is not completed or cancelled). It also points to get_closeout_status for the returned record.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.