Skip to main content
Glama

Read a sheet

read
Read-only

Rows of a sheet as a text table: row numbers, values as shown, and the version (v N) to apply changes at. A range, or a sheet's rows under its header row, filtered and sorted; with "group" or "totals", totals instead of rows. 200 rows unless "limit" says, at most 1,000; the answer says how to page on with "from". With "chart", a chart's points instead.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "doc": "<doc>"
    },
    "name": "read"
  }
}

Input Schema

NameRequiredDescriptionDefault
csvNoAs CSV instead of a table.
docYesThe doc's link or its code.
fromNoThe first of the matching rows to give, from 1.
chartNoA chart's number (chart #2 in the outline): its points as a table, label column then each series, as drawn (a long range thinned, saying how many rows of how many). Alone, with doc.
groupNoGroup the rows by these columns.
limitNoHow many rows. Default 200, at most 1,000.
rangeNo"Tasks!A1:G40", "Tasks!B:B", "Tasks!3:5", a defined name, or "E17" when there's one sheet.
sheetNoA sheet or table by name: its rows under its header row. Default: the only sheet.
whereNoA filter on headers: "Area = Kitchen and Status <> Done or Hours > 4". With = <> < > <= >= contains, "is empty" and "is not empty"; dates as yyyy-mm-dd.
selectNoColumns to show, by header or letter, in this order.
stylesNoFormatting in words: bold, fills, number formats, merges, sizes, frozen panes; a cell a conditional format colours shows it with the rule, as fill #f6d3d0 (format #3).
totalsNoPer group, or for all the rows: "count", "sum Hours", "avg Hours", "min Due", "max Due".
orderByNo"Due desc, ID". Empty cells go last.
formulasNoFormulas with their results: =F2*50 → 50.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior4/5

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

The annotations already establish that this is a read-only, non-destructive, closed-world operation. The description adds useful behavioral context beyond that: default 200-row pagination, a 1,000-row maximum, paging via from, and the returned version number for later changes. It does not discuss permissions or error behavior, so a 4 is appropriate.

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 dense but front-loaded, leading with the return shape before covering modes and paging. It is appropriately sized for a 14-parameter read tool, though the middle section is somewhat compressed and could be easier to scan.

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?

Given 14 parameters, no output schema, and broad read capabilities, the description does a good job explaining the primary return format, paging, and key modes. Some optional parameters, such as csv, styles, formulas, select, and orderBy, are covered only by the schema, which keeps this from being fully complete.

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 all 14 parameters are already documented in the input schema. The description reinforces limit/from paging and describes chart output, but it does not add substantial new meaning for parameters such as where, select, orderBy, styles, formulas, or csv beyond what the schema provides.

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 operation and resource: it returns rows of a sheet as a text table, with row numbers, values, and version. It also covers chart-point reading and grouped/total modes. It does not explicitly distinguish itself from siblings such as get, ls, or export, so it falls short of a 5.

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?

Usage is implied through the described modes: use range or sheet for row data, group/totals for aggregates, and chart for chart points. However, there is no explicit when-to-use versus when-not-to-use guidance and no mention of alternatives such as get or ls.

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