Skip to main content
Glama

Add an ID-grid column

traceable_grid_column_add

Add a column to an ID grid. Every id-row gets a fresh empty cell. Pass type, optionally insertAt (0-based position; omit to append) and label (omit for the type default ID / Link / Column). Only one id column is allowed per grid. Calling it twice adds two columns. Existing cells and trace links are preserved (unlike traceable_segment_write, which replaces the whole grid and breaks links). Identify the grid by its HEADER row (header.itemId or header.atOrder). To set a CELL's value use traceable_grid_cell.

Input Schema

NameRequiredDescriptionDefault
typeYesThe new column's type
labelNoHeader label (default: the type's default label)
headerYesIdentify the row by itemId or atOrder (pass one).
insertAtNo0-based column position to insert at (default: append)
documentIdYesThe document UUID
baseRevisionNoThe revision (meta.revision) from the traceable_doc_read, or the previous write, this change is based on. When given, the write is refused with nothing changed if the document has changed since, so you never overwrite edits you have not seen. Each write returns the current revision. The revision tracks the document's content rows, so changes that touch no row (its name and other metadata, the reference list, Test Plan entries) return it unchanged. A revision is an opaque value: compare it whole, never read meaning into its parts (they are not a counter).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

The annotations already declare readOnlyHint=false, idempotentHint=false, and destructiveHint=false, but the description adds substantial context beyond them: every id-row gets a fresh empty cell, existing cells and trace links are preserved, and calling it twice adds two columns (confirming non-idempotence). It also clarifies the identifying mechanism (header row) and contrasts with traceable_segment_write's destructive replacement behavior.

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?

The description is front-loaded with the core action and efficiently packs important constraints and alternatives into a few sentences. Every sentence adds value, though it could be slightly tighter (e.g., the header identification sentence and the cell-value pointer could be separated more cleanly). It is concise but not maximally structured.

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?

Given the tool's complexity (a non-idempotent mutation with nested header identification and revision control) and the rich schema with 100% parameter coverage and annotations, the description provides all the behavioral context an agent needs: what happens to existing data, non-idempotence, the one-id-column constraint, and how to identify the grid. It also points to the right sibling for cell value changes, completing the picture.

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 description coverage is 100%, so the input schema already documents every parameter and its meaning. The description reiterates that type is required, insertAt is 0-based with append default, and label defaults to the type's default, but it does not add syntax or format details beyond the schema. Baseline 3 is appropriate when the schema already does the heavy lifting.

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 states a specific verb and resource: 'Add a column to an ID grid.' It distinguishes this tool from siblings like traceable_grid_column_rename, traceable_grid_column_set_type, and traceable_grid_cell by explaining that this adds a new column while those handle other operations. An agent can identify the tool's exact purpose without opening the 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 explicitly says when to use this tool versus alternatives: use traceable_grid_cell to set a cell's value, and note that traceable_segment_write replaces the whole grid and breaks links, unlike this tool. It also states constraints like only one id column allowed per grid and that calling twice adds two columns. This is explicit when/when-not guidance.

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.

Resources