Skip to main content
Glama
geniuskey

mcp-server-xlwings

by geniuskey

read_data

Read-only

Read data from an Excel range or retrieve a sheet summary. Optionally fetch detailed cell information, formulas, and formatting, or read all sheets in one call.

Instructions

Read data from an Excel range. When cell_range is omitted, returns a sheet summary (used range address, total rows/columns, headers) WITHOUT reading all data -- call again with a specific cell_range to fetch the actual data. Set detail=True on a single cell to get formula, type, and formatting info. Use sheet="*" to batch-read all sheets in one call.

Args: workbook: Workbook name or path. Defaults to active workbook. sheet: Sheet name. Defaults to active sheet. Use '*' to read all sheets. cell_range: Range like 'A1:D10' or cell like 'B5'. Returns sheet summary if omitted. headers: Treat first row as column headers. detail: For single cells, include formula, type, number format, and font info. merge_info: Fill merged cells with the merge area's value instead of null. header_row: 1-based row number to use as headers (e.g. 3 means row 3 is headers).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
workbookNo
sheetNo
cell_rangeNo
headersNo
detailNo
merge_infoNo
header_rowNo
Behavior5/5

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

The description discloses key behaviors beyond the readOnlyHint annotation: returning a summary when cell_range is omitted, providing formula/format with detail=True, filling merged cells with merge_info, and batch-reading with sheet='*'. No contradictions with annotations.

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 well-structured with a main statement followed by special behaviors and an Args list. It is slightly verbose but front-loaded with the core action, making it easy to parse.

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 no output schema, the description adequately explains return values: sheet summary (used range, total rows/columns, headers) when cell_range omitted, and detailed info (formula, type, formatting) when detail=True. It also covers merge_info behavior, making it complete for a read tool.

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?

Despite 0% schema description coverage, the description's Args section explains all 7 parameters in detail: workbook (name/path), sheet (name or '*'), cell_range (range or cell, omission behavior), headers, detail, merge_info, and header_row. This fully compensates for the missing schema descriptions.

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?

The description clearly states the tool reads data from an Excel range, with specific variations for when cell_range is omitted (sheet summary) or detail=True (single cell info). It differentiates from siblings like write_data, format_range, and get_formulas.

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?

Provides explicit guidance on when to omit cell_range for summary, use detail for single-cell data, and use sheet='*' for all sheets. However, it lacks explicit when-not-to-use instructions or comparisons with alternatives like format_range or get_cell_styles.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/geniuskey/mcp-server-xlwings'

If you have feedback or need assistance with the MCP directory API, please join our Discord server