Edit Excel files from Python — with the macros still there.
One package opens, edits, recalculates and saves .xlsx and .xlsm, reads .docx and adds slides to .pptx. The SumSheet, SumDoc and SumSlide cores ship inside the wheel: nothing compiles on install, no Microsoft Office, no LibreOffice, no document server. Your file never leaves your machine.
Install
Release in preparation. The package is not on PyPI yet; this command will work from the day of the release:
Wheels for macOS (Apple silicon and Intel), Linux x86-64 and aarch64 (glibc 2.28 or newer) and Windows x64, Python 3.10 and newer. Each wheel is under 50 MB.
First result in five lines
The VBA project, Power Query parts and images stay in the saved file byte for byte; the package never rewrites parts it did not change.
Three examples
1. Change a cell in a macro workbook and keep the macros.
2. Recalculate and read the results back.
3. Read a Word document; add a slide to a deck.
Use it from Claude Desktop or Cursor
The package includes a local MCP server. It works only with files on your computer, only inside your home folder by default, and never overwrites the source file: edits come back as a copy.
Desktop apps do not read your shell's PATH: take the full path from which sumoffice-mcp (Windows: where sumoffice-mcp). Claude Desktop: Settings → Developer → Edit Config, then restart the app. Tools: open_workbook, read_range, write_cells, recalc, save_copy, document_text. Other folders: SUMOFFICE_MCP_ROOTS. For files that should open in a remote editor cabin instead, see the hosted MCP server.
What is free
| Without a key | 200 documents per day, no expiry. |
|---|---|
| Developer key | 10,000 documents per day for 90 days from issue. To request one, write to hello@sumoffice.com with the subject “Developer key”. Put the key in SUMOFFICE_LICENSE, or the path to the key file in SUMOFFICE_LICENSE_FILE. |
| When the quota is used up | LicenseQuotaError right away, with a link to this section. No waiting, no slowdown. |
| What counts | One document opening, however many cells you change. Today the Word core counts documents; spreadsheets and presentations are not counted yet. |
What it does not do
- Run VBA macros. It keeps them, byte for byte.
- Convert to PDF or render page images in this release:
convert()andpreview()raise a typed error and create no file. - Edit Word text through the short API. Reading is one call; editing goes through the low-level
Session. - Embed fonts. The Word core uses system fonts; on a font-less server set
FASTDOC_FONT_DIR.