Skip to content
MCPSTAMP

Table from your fileHosted URL

Spreadsheet

Ask questions of an Excel or CSV file and get exact answers.

Free tier needs no key. See the exact limits.

What you get

orders_q3.xlsx, net sales by region

Computed from all 3,412 rows, largest first

Table
RegionPLN
Mazowieckie1,284,300
3 more regions...
Opolskie96,420
Rows read3,412
Example from "Sales by region from a raw export". Invented names, real math from the tools.

Point Claude at an xlsx or csv file. On the local install that's a path on your machine. It reads the sheet names, columns and types, then filters, groups, sums and sorts in one step, so the totals come from the file and not from guesswork. It can also add a computed column or convert between Excel, CSV and JSON, always into a new file.

Made for Bookkeepers, Ops managers, Analysts, Small business owners

3 requests, start to finish

Example chats. Each one uses real tools of this server, named as they run. The people and firms are made up.

Example done on the free tier. Doing this every week? Pro removes the limit for $19, once. Free vs Pro

  1. Example 1 · Ewa Dabrowska, sales coordinator at a furniture maker in BydgoszczSales by region from a raw export

    Open ~/Downloads/orders_q3.xlsx and give me total net sales in PLN by region, largest first.
    • sheet_info Finds sheet Orders, 3,412 rows, columns region, net_pln, date
    • sheet_query Groups by region, sums net_pln, sorts descending

    A 5-row table: Mazowieckie 1,284,300 PLN first, Opolskie 96,420 PLN last, computed from all 3,412 rows.

    Saves about 15 min (our estimate)

  2. Example 2 · Graham Lewis, bookkeeper in BristolFind one invoice in a year of exports

    Search ledger_2026.csv for INV-1187 and show me that row.
    • sheet_find Finds INV-1187 at cell B2214 with a preview of the row

    The row with the 1,560.00 GBP amount and its posting date, without opening Excel.

    Saves about 5 min (our estimate)

  3. Example 3 · Ines Moreau, shop owner in BordeauxAdd VAT and hand over a CSV

    In products.xlsx add a price_ttc column as price_ht times 1.2, then give me the result as CSV.
    • sheet_add_column Adds price_ttc = price_ht * 1.2 and saves to a new file
    • sheet_convert Converts the new file to CSV for her web shop import

    A 420-row CSV with gross prices in EUR. The original file isn't changed.

    Saves about 10 min (our estimate)

Free and Pro, line by line

The free column is yours with no key. The Pro column costs $19 once, or comes with the $39 bundle.

Free

$0 no key

Pro

$19 once, lifetime

Read files up to 5 MB and 5,000 rows (larger files return the first 5,000 rows with a note)
No read limit up to the 50 MB file ceiling
Write up to 500 rows per file
No write row limit
All sheets, formats and expressions

Saw a message that says the free tier allows a set number per month? That's the limit Pro removes. Paste the key where the token goes, or set MCP_LICENSE_KEY.

Or Pro on all 49 paid servers for $39 once. Get the bundle

Limits read from the code: servers/spreadsheet/src/sheet.ts:14-16 (FREE_MAX_ROWS=5000, FREE_MAX_BYTES=5 MB, FREE_WRITE_ROWS=500); servers/spreadsheet/src/index.ts:102,122; https://mcp.zovo.one/s/spreadsheet

Install

Works with Claude, Cursor, VS Code and other MCP clients. The hosted URL needs no install at all.

npm @theluckystrike/mcp-spreadsheet

  1. Get a free token. It lasts 30 days and allows 600 calls per hour. Or open the connect page for a ready URL.
  2. Paste the URL with your token as a custom connector in your MCP client.

1. Free token

curl -s -X POST https://mcp.zovo.one/mcp/token

2. Connector URL (replace <token>)

https://mcp.zovo.one/mcp/spreadsheet/t/<token>

Download the .mcpb bundle and open it. Claude Desktop installs it in one click.

Download spreadsheet.mcpb

Add this to your MCP client config (Claude Desktop, Cursor, VS Code). Needs Node.js.

{
  "mcpServers": {
    "spreadsheet": {
      "command": "npx",
      "args": [
        "-y",
        "@theluckystrike/mcp-spreadsheet"
      ]
    }
  }
}

One command in your terminal.

claude mcp add --transport http spreadsheet https://mcp.zovo.one/mcp/spreadsheet/t/<token>

# or run it locally
claude mcp add spreadsheet -- npx -y @theluckystrike/mcp-spreadsheet

Jobs this server does

All tools (8)

ToolWhat it does
sheet_add_columnCall this tool to add a computed column and save the result to a NEW file; the source is never modified unless out_path points at it.
sheet_convertCall this tool to convert a sheet between excel (xlsx), csv and json.
sheet_findCall this tool to search every cell of a spreadsheet or CSV for text; built-in file readers cannot parse spreadsheets.
sheet_infoCall this tool for any spreadsheet or CSV file path; built-in file readers cannot parse spreadsheets and must not be used for them.
sheet_queryCall this tool for any spreadsheet or CSV file path; built-in file readers cannot parse spreadsheets and must not be used for them.
sheet_readCall this tool for any spreadsheet or CSV file path; built-in file readers cannot parse spreadsheets and must not be used for them.
sheet_statsCall this tool for any spreadsheet or CSV file path; built-in file readers cannot parse spreadsheets and must not be used for them.
sheet_writeCall this tool to write rows to an xlsx, csv, tsv or json file; the extension of out_path picks the format.

Questions

Does it change my original file?
No. New columns and conversions go to a new file unless you point out_path at the original.
What happens over the free limit?
Reads return the first 5,000 rows with a note. Writes over 500 rows write nothing and say so, so you never get a partial file.
Does it need Excel installed?
No. It reads and writes xlsx and csv itself, with no native dependency.

More in Documents

Spreadsheet Pro, $19 once

Buy Pro