The distinction that matters is that output is a real workbook — styles, charts and pivot tables included — so what the assistant produces is what a colleague opens, not something you finish by hand. Because no Excel installation is involved it runs anywhere Python does, including a server. EXCEL_FILES_PATH is worth setting deliberately: it is where every workbook is read from and written to.
An Excel manipulation server built on OpenPyXL. It creates and modifies workbooks, manages worksheets and ranges, applies formatting, and builds charts and pivot tables, all without Microsoft Excel on the machine.
- Workbook and worksheet management — create, modify, and work with named ranges
- Reading and writing data into cells and ranges
- Formatting and styles applied to cells and ranges
- Charts and visualizations
- Pivot tables for data analysis
- Errors come back with messages rather than as a silent failure
Python 3.10 or higher, with MCP SDK 1.2.0+ and OpenPyXL 3.1.2+. Start it with `uv run excel-mcp-server`. EXCEL_FILES_PATH sets the directory where workbooks live, defaulting to `./excel_files`. It starts in SSE mode; clients such as Cursor connect at http://localhost:8000/sse.
Build from source — clone the repository and build it, then point your client at the binary
