Skip to content

KitchenSink4XL 1.0.0

Choose a tag to compare

@nometalalchemist nometalalchemist released this 05 Sep 20:23
· 12 commits to main since this release

KitchenSink4XL 1.0.0

First release, and there is no beta tag on it. That is a claim, not an oversight: this server was built, attacked, and repaired through 10 adversarial and stress rounds before it ever wore a version number. 129 operations across 69 tools, 1,046 tests, zero corruptions across every round on record.

What it is. Everything plus the kitchen sink for .xlsx: cells and ranges, formulas with an honest answer about cached values, formatting, tables, validation, sort and filter, import and export, and an optional COM tier that drives a private hidden Excel for real pivot tables, true recalculation, rendering, PDF export, and format conversion. It starts lite and loads capability packs on demand.

The headline guarantee. A spreadsheet remembers its answers, not its thinking, so a stale number looks exactly like a live one. This server labels every value it hands back as calculated, cached, or absent, names the cells that went stale, and asks Excel itself to recalculate when it matters. When it cannot back a number, it says so instead of guessing.

Young, and tested like it isn't. The version is new; the testing is not gentle:

  • A mutation round sabotaged the safety core 441 ways. Every gap it exposed is now a test that would catch the sabotage, and it flushed out two real fixes: sheet-name validation that was never wired in, and a case-variant output path that could have overwritten a source workbook during format conversion.
  • A three-oracle round judged this server against openpyxl and LibreOffice, with Excel as the referee. Zero findings against this server; three against openpyxl that this server does not inherit.
  • Metamorphic and geriatric rounds fed it floating-point edge cases and decades of legacy file quirks, from 1904 date systems to genuine .xls files wearing .xlsx names. The fixes are in, and each is pinned by the test that would catch a regression.
  • The release gates re-run that adversarial history every time: three batteries pass outright, and the fourth passes with one check skipped for a named environmental cause (a clipboard closed to every process on the build machine), with corruption guarantees unaffected.

House rules. Verify-after-write on every mutation. Automatic backups with a session-start anchor. A round-trip hazard scan before edits that could silently drop content. Refusals that name the reason and the remedy. The server checks PyPI for a newer release at most every 14 days, prints one calm line when one exists, never installs anything, and the check turns off with one environment variable.

Install. Claude Desktop: the attached .mcpb bundle. Anywhere else: uvx kitchensink4xl or pip install kitchensink4xl. Python 3.12+. The COM tier needs Windows and Excel and stays off unless you enable it.

Not affiliated with Microsoft Corporation.