Skip to main content
Glama

Sheets Copy Column

sheets_copy_column
Idempotent

Copy a consistent snapshot of a column into a new typed column. Preserve the source, omit and report invalid values, and return a durable job ID. Use get_column_copy for completion; undo the resulting add_column changeset to remove the copy.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesSheet title without leading or trailing whitespace.
typeYesUse url for website/domain/profile links (store canonical HTTPS URLs), email/phone for validated contact lists, number for quantities, checkbox for booleans, date for calendar dates, select/multi_select for bounded option catalogs, text for names, notes, identifiers and unnormalized categories. For exact CSV imports preserve original text unless conversion was requested. Never coerce identifiers, leading zeros, formatted ranges or units to numbers.
sheetIdYes
columnIdYes
selectOptionsYes
idempotencyKeyYesStable key for one logical mutation. Reuse the identical key and payload after an ambiguous outcome; different work or batches need different keys. Inspect receipts or live state before retrying.
expectedColumnVersionYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
errorYes
statusYes
sheetIdYes
totalCountYes
copiedCountYes
failedCountYes
processedCountYes
resultColumnIdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Annotations only declare the coarse profile (write, idempotent, non-destructive); the description adds substantive traits: the operation is snapshot-based and preserves the source, invalid values are omitted and reported rather than failing the whole job, and the call is asynchronous, returning a durable job ID. That is exactly the extra context an agent needs to handle partial results and polling.

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?

Three short sentences, each carrying distinct load: operation semantics first, then side-effect/failure behavior, then follow-up routing. No repetition of the title or name, no filler.

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 mutation tool with an output schema (so return shape needn't be explained) and annotations covering safety, the description is nearly complete — async model, invalid-value handling, source preservation, and cleanup path are all covered. The remaining gap is concurrency/versioning behavior, which is left entirely to an undescribed parameter.

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

Parameters2/5

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

Schema description coverage is only 43%, and the description never compensates: 'typed column' hints at the type parameter but says nothing about expectedColumnVersion (an optimistic-concurrency token), selectOptions, or name. With only idempotencyKey and type documented in the schema, an agent must infer the meaning of the concurrency guard and the option catalog.

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 and resource ('Copy a consistent snapshot of a column into a new typed column') and pins the output target, which distinguishes it from sheets_change_column_type (in-place retype) and sheets_add_column (empty column). An agent can select it without opening any sibling schema.

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?

Explicitly routes the agent for follow-up work: 'Use get_column_copy for completion; undo the resulting add_column changeset to remove the copy.' It gives clear post-invocation context but never states when to prefer this over alternatives like retyping an existing column, so the routing is one-directional.

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