Skip to main content
Deprecated: These tools have been removed as built-in tools. Use bash commands with appropriate packages or install a skill that provides this functionality. The tools are documented here for reference only.
Read, write, and query spreadsheet files in CSV, TSV, and XLSX formats.
Limits: 200 rows max output by default (MAX_ROWS_OUTPUT), 500 characters max per cell (MAX_CELL_LENGTH). Powered by exceljs.

excel_read — Read Spreadsheet

Read data from a spreadsheet file.

Parameters

ParameterTypeRequiredDescription
pathstringyesPath to the file (.csv, .tsv, or .xlsx)
sheetstring | numbernoSheet name or index (XLSX only)
rangestringnoCell range to read (e.g. A1:D10)
headersbooleannoTreat the first row as headers (default true for CSV/TSV)
max_rowsnumbernoMaximum number of rows to return (default 200)

Returns

Array of row objects (when headers are present) or array of arrays. Includes metadata about total row count if truncated.

Notes

  • Supports .csv, .tsv, and .xlsx file formats
  • Cell values longer than 500 characters are truncated
  • When range is specified, only cells within that range are returned

excel_write — Write Spreadsheet

Create or overwrite a spreadsheet file with the given data.

Parameters

ParameterTypeRequiredDescription
pathstringyesDestination file path (.csv, .tsv, or .xlsx)
headersstring[]yesColumn header names
rowsarray of arraysyesRow data — each inner array corresponds to one row
sheet_namestringnoName for the worksheet (default Sheet1, XLSX only)

Returns

Confirmation with the file path and row/column counts.

Notes

  • Columns are auto-sized to fit content
  • Supports .csv, .tsv, and .xlsx output formats
  • File format is determined by the file extension in path

excel_query — Query Spreadsheet

Filter, sort, and select columns from a spreadsheet without loading the entire file.

Parameters

ParameterTypeRequiredDescription
pathstringyesPath to the spreadsheet file
sheetstring | numbernoSheet name or index (XLSX only)
filter_columnstringnoColumn name to filter on
filter_valuestringnoValue to match in the filter column
sort_columnstringnoColumn name to sort by
sort_descbooleannoSort in descending order
columnsstring[]noSubset of columns to include in the output
limitnumbernoMaximum rows to return (default 200)

Returns

Filtered and sorted rows matching the query criteria.

Notes

  • Filtering is case-insensitive substring matching
  • Sorting is numeric-aware — numeric strings are compared as numbers, not lexicographically
  • Combine filter_column + filter_value with sort_column for powerful queries

excel_info — Spreadsheet Info

Get metadata about a spreadsheet file without reading its contents.

Parameters

ParameterTypeRequiredDescription
pathstringyesPath to the spreadsheet file

Returns

Object with sheet names, row counts, column counts, and sheet visibility for each worksheet.

Notes

  • Works with .csv, .tsv, and .xlsx files
  • For CSV/TSV files, returns a single sheet entry with row and column counts