LabscoMCP early access ↗
proomptengMCP SERVER · OFFICIAL PROJECT

Bilig WorkPaper

Give an agent a real spreadsheet engine: write a cell, recalculate the dependent formulas, read the result back, and export or restore the workbook as JSON — no Excel installed.

by proompteng ↗Spreadsheet & Tabular File Analysis✓ Official

LABSCO SUMMARY

Write-then-verify is the loop, and it is the reason this is not just a spreadsheet reader.

The reproducible check in the repository edits Inputs!B3, confirms Summary!B3 moves from 60000 to 96000, exports the document and restarts from disk — that is the shape of every useful interaction here. Two limits stated by the maintainers rather than discovered later: Excel parity is explicitly not proven, and nothing is persisted unless you deliberately pass --writable.

What it is

A headless WorkPaper runtime exposed over MCP. Instead of parsing a spreadsheet into text, it keeps a typed workbook object that recalculates: an agent sets an input cell, the formulas downstream recompute, and it reads the dependent cell to confirm what changed. It runs from a persisted WorkPaper JSON document, from an imported XLSX, or from a built-in demo workbook, and can persist edits back to the same file.

What you get

  • Sheets, ranges and single cells read from the loaded workbook, including the displayed value rather than the raw formula — list_sheets, read_range, read_cell, get_cell_display_value
  • Cell contents written, with a variant that returns the recalculated readback in the same call so the agent does not have to guess whether the formula updated — set_cell_contents, set_cell_contents_and_readback
  • Formula checking before it goes in, and a risk pass over the whole workbook — validate_formula, analyze_workbook_risk
  • The workbook exported as a WorkPaper JSON document that can be restored later — export_workpaper_document
  • MCP resources and prompts so a capable client can discover the workflow before calling anything — bilig://workpaper/agent-handoff, bilig://workpaper/current-document, edit_and_verify_workpaper, debug_workpaper_formula
  • Three ways to load: --workpaper for a persisted JSON document, --from-xlsx to import an existing XLSX into an in-memory workbook, and no flag at all for the built-in demo
  • A remote endpoint at https://bilig.proompteng.ai/mcp, a stateless JSON-only Streamable HTTP surface for tool discovery and write/readback checks

Requirements

Nothing — no account, no key. Node with npm: npm exec --package @bilig/workpaper@latest -- bilig-workpaper-mcp starts the stdio server, and a Docker target is published for MCP directory scanners. Edits stay in memory unless you pass --writable, which persists set_cell_contents and set_cell_contents_and_readback back to the same file; --from-xlsx alone gives readback and throwaway edits without writing a sidecar. It is listed in the official MCP Registry as io.github.proompteng/bilig-workpaper. Read the project's compatibility-limits page before importing real Excel workbooks — the maintainers keep excelParity marked as not proven.

Setup effort

One command — npm install @bilig/workpaper