Skip to main content
Glama

Sheets Add Rows

sheets_add_rows
Idempotent

Insert up to 100 rows at the end or immediately before or after an existing row. Reuse the same idempotencyKey when retrying.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
countYes
sheetIdYes
placementYes
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.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
rowsYes
revisionYes
cataloguesNo
changesetIdNo
operationIdYes
schemaRevisionNo
createdColumnIdNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely new behavioral context beyond that: the 100-row ceiling and, more importantly, the retry protocol for reusing the idempotency key after an ambiguous outcome. It still doesn't say whether inserted rows are empty or what permissions are required.

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?

Two short sentences, zero padding, with the row-count limit and placement scope front-loaded and the retry caveat second. Every clause carries information an agent needs.

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?

An output schema exists, so return values need not be described, and the annotations carry the safety/idempotency profile. What remains is adequately covered: placement semantics, row limits, and retry behavior. The main gap is not distinguishing this mutation from sheets_insert_records and not noting whether rows are created empty.

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 only 25% (only idempotencyKey is documented), so the description should compensate more than it does. It does add real meaning for placement by explaining that a null/absent anchor means append at the end, and it restates the count cap of 100. But sheetId and the anchorRowId/side mechanics are left entirely to the schema's type and enum declarations.

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?

States a specific verb and resource (insert rows), plus concrete scope: up to 100, at the end or before/after an existing row. That positioning detail separates it from neighbors like sheets_move_rows and sheets_delete_rows. It does not, however, clarify how it differs from sheets_insert_records, which is the one sibling an agent is most likely to confuse it with.

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

Usage Guidelines3/5

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

The only guidance is retry-related ('Reuse the same idempotencyKey when retrying'), which is useful but concerns idempotency mechanics rather than tool selection. There is no explicit when-to-use, when-not-to-use, or named alternative (e.g. sheets_insert_records for rows carrying data), so the agent must infer the choice from the tool name alone.

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