Skip to main content
Glama
wkqco33
by wkqco33

excel_read_sheet

Retrieve a rectangular range of cells from an Excel sheet as a markdown table or raw data, with optional formula evaluation.

Instructions

Read a rectangular cell range from an Excel sheet.

Indices are 1-based (row 1 is first row, col 1 is 'A').

Args:
    file_path: Path to the Excel file.
    sheet_name: Target sheet name (defaults to active sheet).
    start_row: Starting row index (1-based, inclusive, default 1).
    end_row: Ending row index (1-based, inclusive, default 50).
    start_col: Starting column index (1-based, inclusive, default 1).
    end_col: Ending column index (1-based, inclusive, default 20).
    evaluate_formulas: If True (default), returns calculated values. If False, returns raw formula strings.
    format: 'markdown' (default formatted table) or 'raw' (2D list of values).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
formatNomarkdown
end_colNo
end_rowNo
file_pathYes
start_colNo
start_rowNo
sheet_nameNo
evaluate_formulasNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations available, the description carries the full behavioral burden and does it well: it discloses 1-based indexing, inclusive defaults, active-sheet fallback, formula evaluation behavior, and output format options. It does not explicitly state that the file is not modified, but 'Read' plus the operational details make the safety profile clear.

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?

The description is efficiently structured: a one-sentence purpose, a brief indexing note, and a compact Args section. Every sentence adds necessary information, and the key behavioral detail (1-based indexing) is front-loaded.

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 has 8 parameters, no annotations, and an output schema (which itself may document return structure), the description is still complete on its own. It explains all inputs, defaults, formula behavior, and output formats, so an agent has everything needed to call the tool correctly.

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

Parameters5/5

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

Schema property descriptions are absent (0% coverage), but the description fully compensates by documenting every parameter, including defaults, inclusivity, type of meaning for evaluate_formulas, and the format options. This is well beyond what the input schema provides.

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?

Begins with a specific verb and resource: 'Read a rectangular cell range from an Excel sheet.' This clearly distinguishes the operation from write tools and search tools in the sibling list, and specifies the granularity (range rather than whole sheet).

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives such as excel_search or excel_get_metadata. The description implies it is for reading a cell range, but does not state exclusions or conditions that would route an agent to a sibling tool.

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