Skip to main content
Glama
README.md
# SheetShift by 4AM Edge

Free PDF→Excel / spreadsheet toolkit: an open MCP server plus a submission-ready ChatGPT plugin (MIT). Upload a document, get a spreadsheet back — no account, no paywall, no daily conversion limits.

## What it does

SheetShift converts documents into spreadsheets through five stateless tools. Use it three ways: as a ChatGPT plugin, as an MCP server you add to your own AI client, or through the hosted site at https://sheetshift-unwindmeinstead-gmailcoms-projects.vercel.app.

## Tools

| Tool | What it takes | What you get |
|---|---|---|
| `pdf_to_xlsx` | PDF with a text layer | `.xlsx` workbook |
| `csv_xlsx_convert` | CSV or `.xlsx` | Converted file, either direction |
| `statement_extract` | Bank statement / receipt PDF | Clean CSV (`date`, `description`, `amount`) |
| `csv_clean` | Messy CSV | Deduplicated, trimmed, normalized-header CSV |
| `weekly_report` | Bullet points | Client-ready report (Markdown + styled HTML/PDF) |

All five tools are free, complete, and require no account or sign-in. The tool list is also returned live from the MCP server.

## Use it in your AI client

Point your client at the public MCP endpoint:

```
https://sheetshift-unwindmeinstead-gmailcoms-projects.vercel.app/mcp
```

**Claude Code:**

```bash
claude mcp add --transport http sheetshift https://sheetshift-unwindmeinstead-gmailcoms-projects.vercel.app/mcp
```

**Codex CLI:**

```bash
codex mcp add --transport http sheetshift https://sheetshift-unwindmeinstead-gmailcoms-projects.vercel.app/mcp
```

No key, no OAuth — the endpoint is open.

## Live site

The hosted tools and an email list live at [https://sheetshift-unwindmeinstead-gmailcoms-projects.vercel.app](https://sheetshift-unwindmeinstead-gmailcoms-projects.vercel.app).

## Input limits

- PDF inputs: max 50 pages, max 10 MB (text-layer PDFs only; scanned images without a text layer return a clear error — OCR is not part of this build).
- Single file per call.

These caps exist because the serverless host has a ~10-second execution timeout; oversized input gets a clean error, not a hang.

## Run it locally

Requires Python 3.12.

```bash
pip install -r requirements.txt
```

Each tool module under `sheetshift_lib/tools/` is dependency-light (stdlib + `pypdf` + `openpyxl`) and runs standalone via its `__main__` self-test, e.g.:

```bash
python -m sheetshift_lib.tools.pdf_to_xlsx
```

## Agents / API tier

Machine callers can use the same tools over a pay-per-call API at `/api/agent/*`, metered in USDC on Base at $0.01 per call (x402). Human-facing tools through the plugin, the MCP endpoint, and the site are free with no limits.

## Compliance note

The ChatGPT plugin is a free, complete tool: no pricing, no subscription or upgrade language, no checkout links, and no email capture inside the plugin. The plugin's only external link is an informational plans page. Details in `terms.html` / `privacy.html` on the site.

## License

MIT, with a liability disclaimer — see [LICENSE](LICENSE). The converter is a format tool, not financial, tax, or legal advice. If you run `statement_extract` on a bank statement, verify the totals yourself before you rely on them.

## Liability in one paragraph

Documents are processed in memory and never stored. This software is provided as-is with no warranty of any kind. Always verify financial outputs.