Skip to content

Releases: KitchenSink4AI/KitchenSink4XL

KitchenSink4XL 1.2.6

Choose a tag to compare

@nometalalchemist nometalalchemist released this 13 Oct 09:37

A maintenance release. It updates the documentation, the test fixtures and the package metadata, which now lists KitchenSink4AI as the author. Two small report changes:

  • get_server_info no longer reports an internal build-phase field.
  • measured_against in the limits report now reads Excel.

Install or upgrade with pip install -U kitchensink4xl, or use uvx kitchensink4xl. Claude Desktop users can install the .mcpb file attached below. See the README for every install route.

KitchenSink4XL 1.2.5

Choose a tag to compare

@nometalalchemist nometalalchemist released this 13 Oct 07:47
  • enable_tools now says what to do when a client fixed its tool list at startup. Put a comma list of packs in KS4XL_MODE, restart the app or session, and then start a new worker. Claude Code can instead enable packs in its main session before it starts workers. A locked policy still caps the surface.

KitchenSink4XL 1.2.4

Choose a tag to compare

@nometalalchemist nometalalchemist released this 13 Oct 07:47
  • Documentation and listing only. The MCP Registry entry moves to the io.github.KitchenSink4AI namespace and is published from the release workflow. The bundle manifest carries contact details. No change to tools or behaviour.

KitchenSink4XL 1.2.3

Choose a tag to compare

@nometalalchemist nometalalchemist released this 13 Oct 07:47
  • A workbook mutation that runs longer than ten minutes keeps its write lock. The lock was previously broken on age alone even while the holding process was alive, which let a second writer into the same file and reopened the read-modify-save race the lock exists to close.
  • A lock written by another machine is never reclaimed from this one. A PID number on a network share says nothing about a process on a different computer, so a foreign-host lock now makes the waiter wait and then refuse by name.
  • com_render_sheet renders. It previously returned a success result without producing an image; it now produces the image, or refuses and says why.
  • Charts this server creates are drawn with their axes.

KitchenSink4XL 1.2.2

Choose a tag to compare

@nometalalchemist nometalalchemist released this 13 Oct 07:47
  • The license story is stated correctly and in one place. KitchenSink4XL is dual-licensed: AGPL-3.0 for anyone whose use meets the AGPL's terms, including its source-sharing obligations, and a commercial license for organizations that need to ship it inside a closed product (licensing@kitchensink4.ai). NOTICE.md previously said "free for any use (personal, academic, commercial) under AGPL terms", which contradicted the commercial model.
  • Copyright is attributed: Alvut Consulting, LLC, named at the top of LICENSE, in NOTICE.md, in the README, in the package author field, and as the grantee in the CLA.
  • The landing page serves its fonts itself instead of loading them from Google's CDN.

KitchenSink4XL 1.2.1

Choose a tag to compare

@nometalalchemist nometalalchemist released this 13 Oct 07:47
  • The server says what it is. A connected agent now reads "KitchenSink4XL (kitchensink4xl on PyPI), part of the KitchenSink4AI suite" at the head of the instructions it receives, and get_server_info reports the product name, the package to install, the documentation homepage, and the three sibling packages.
  • Published addresses moved to kitchensink4.ai, and the registry record is republished at this version.
  • The tool figure is stated as measured on every surface: 129 workbook operations across 69 tools, 67 workbook tools plus the two pack toggles.

KitchenSink4XL 1.2.0

Choose a tag to compare

@nometalalchemist nometalalchemist released this 13 Oct 07:47
  • Read responses are dramatically smaller (seven to eleven times on the heavy calls) with nothing lost; the token estimator now matches the wire exactly, and every published figure is re-measured.
  • A performance bug that reopened the workbook per cell is fixed; large cell reads are near-instant.
  • Update notice: a weekly, disclosed check for newer releases, off with KS4XL_UPDATE_CHECK=off.
  • The install screen and info card are rewritten in plain language.

KitchenSink4XL 1.1.0

Choose a tag to compare

@nometalalchemist nometalalchemist released this 13 Oct 07:47

A quality release with many fixes and two features.

Fixed: serverInfo now reports this package's version instead of the framework's. Every tool parameter now carries a real schema (39 previously emitted empty ones, which some clients silently drop tools over). validate's references check now reports passed: false when it finds unknown sheet references; automation keying off passed will see a new false on workbooks that were already broken. query_range refuses a negative offset instead of quietly treating it as 0. Refusals now name the real cause: a file's read-only attribute is distinguished from a file held by Excel, a missing clipboard (service accounts, locked sessions) is named instead of Excel's raw error, and the hazard gate no longer suggests a route that cannot perform the operation. New refusals for reserved Windows device names as output targets, unknown codecs in import_data, out-of-range text_rotation, and constructed filenames beyond 255 characters or bytes. Three quiet-degradation cases (autofilter sort state, allow-edit ranges on protected sheets, and cleared document properties) now refuse honestly or warn by name instead of losing content silently; legacy comments and print setup were re-measured and already round-trip safely.

Added: Six conditional-format rule types: unique, duplicate, above and below average (with the standard-deviation variants), time period, blanks, and errors. Row and column grouping: group, ungroup, collapse levels, and outline reporting on sheets that have one. python -m xlsx_mcp now works alongside python -m xlsx_mcp.server. A bad KS4XL_MODE prints one plain line and exits instead of a traceback.

Not affiliated with Microsoft Corporation.

KitchenSink4XL 1.0.1

Choose a tag to compare

@nometalalchemist nometalalchemist released this 13 Oct 07:47

Patch release, one change: every tool now declares whether it can change anything (readOnlyHint). Claude Desktop uses this to group the harmless tools under 'Read-only tools', where one Always Allow click stops most permission prompts while everything that can change your files still asks first.

KitchenSink4XL 1.0.0

Choose a tag to compare

@nometalalchemist nometalalchemist released this 13 Oct 07:46

First release. 129 operations across 69 tools, 1,046 tests.

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.

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.

Requirements. Python 3.12+. The COM tier needs Windows and Excel and stays off unless you enable it.

Not affiliated with Microsoft Corporation.