Skip to main content
Glama

ECO Create

eco_create
Destructive

Create a change-order record with optional impact analysis, producing a git-diffable sidecar that documents what changed and its blast radius.

Instructions

Build an ECO change-order record (issue #142, C3) — turn a change into a record, not a silent mutation (the diff IS the change order, mapping onto a git commit/PR). Optionally compute its where-used impact over a lockfile in the same call, so the blast radius travels with the record.

id: the ECO id (e.g. "ECO-0001"). affected: the list of changed item / component ids. disposition: the change disposition (use_as_is | rework | scrap | revise | ...). effectivity: a dict with exactly one of date|serial|revision (when it takes effect). title / note: optional human description recorded on the record. interface_change: true if a published interface moved (the §9 stale trigger). lockfile: optional path — when given, the result embeds an impact report. out: optional path — write the git-diffable ECO sidecar there.

Returns the ECO object (with impact when a lockfile is supplied); a malformed ECO fails loudly.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
outNo
noteNo
titleNo
affectedYes
lockfileNo
dispositionYes
effectivityYes
interface_changeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

The description goes well beyond the destructiveHint annotation by explaining the record-building semantics, the diff-as-change-order mapping, the optional sidecar write, the embedded impact report, and the failure behavior ('a malformed ECO fails loudly'). It also clarifies effectivity constraints and the interface_change trigger, giving rich behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured: a clear opening sentence states the core purpose, optional capabilities follow, then a parameter list, and finally the return/failure behavior. Every sentence earns its place; the parameter section is visually scannable and front-loads the primary verbs and semantics.

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

Completeness4/5

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

For a tool with 9 parameters, no output schema, and no parameter descriptions, the description is remarkably complete: it covers all parameters, returns, side effects, and error behavior. It could have further clarified preconditions (e.g., validating with eco_validate) or the detailed shape of the impact report, but these are minor gaps given the strong schema compensation.

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

Parameters5/5

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

Schema description coverage is 0%, but the description compensates fully by explaining every parameter: id with an example, affected as a list, disposition enumerating common values, effectivity requiring exactly one of date|serial|revision, title/note as optional, interface_change semantics, lockfile behavior, and out path purpose. This is exactly the compensation needed for a schema with no descriptions.

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

Purpose4/5

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

The description clearly states the specific action: 'Build an ECO change-order record' and emphasizes 'not a silent mutation (the diff IS the change order)' which distinguishes it from direct mutation tools. It does not explicitly name sibling tools like eco_validate or change_impact, so sibling differentiation is implied rather than explicit.

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

Usage Guidelines4/5

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

The description provides clear usage context: use this to create a durable ECO record instead of a silent mutation, and optionally use lockfile to embed an impact report or out to write a git-diffable sidecar. It does not explicitly state when not to use it or mention alternatives such as eco_validate, but the optional-parameter guidance is clear.

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

Deploy Server

Other Tools