Skip to main content
Glama

write_range

Overwrite a specific range of cells in a Google Sheet with new rows, replacing existing values; choose USER_ENTERED to parse formulas or dates, or RAW for literal storage.

Instructions

Overwrite a range of cells with the given rows. Existing values are replaced.

Args: spreadsheet_id: The long token from the spreadsheet URL. a1_range: Top-left anchored range, e.g. "Sheet1!A2:C10". values: Rows of cell values, outer list is rows, inner list is columns. value_input_option: USER_ENTERED parses formulas and dates; RAW stores literally.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
valuesYes
a1_rangeYes
spreadsheet_idYes
value_input_optionNoUSER_ENTERED

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It usefully discloses the destructive overwrite behavior ('Existing values are replaced'), which is the most important trait for a write tool, but says nothing about required permissions, whether the range can extend the sheet, error/partial-write behavior, or rate limits.

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?

Front-loaded with the core operation in one sentence, followed by a tight Args list where every line adds information. No filler or redundancy.

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 no annotations, the description covers the critical destructive behavior and all parameter semantics, and an output schema exists so return values need not be described. Remaining gaps (auth scope, error behavior) are minor.

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?

Schema coverage is 0%, so the description must compensate, and it largely does: it documents all four parameters, including where spreadsheet_id comes from, the top-left anchoring meaning of a1_range with an example, the row/column nesting of values, and the practical difference between USER_ENTERED and RAW. It stops short of covering edge cases like range/value dimension mismatches, hence not a 5.

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 ('Overwrite a range of cells with the given rows') and clarifies the destructive semantics ('Existing values are replaced'). This cleanly separates it from read_range, append_rows, and clear_range without needing to name them.

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 'Existing values are replaced' clause implicitly signals this is for replacing content rather than appending, which lightly steers the agent away from append_rows. However, there is no explicit when-to-use/when-not-to-use statement or named alternative, so usage must be inferred.

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