The formatted-table and dashboard tools take number formats, header styling and chart placement as arguments, so a report comes out looking finished rather than as raw values you then have to style by hand. The dependency shape is the thing to check first: it is a Node package that shells into Python, so a missing or wrong Python on `PATH` is the most common reason it will not start.
An MCP server that manipulates Excel files directly through openpyxl and pandas, so no copy of Excel is involved. It creates and opens workbooks, manages sheets, writes data and formulas, builds formatted tables and charts, assembles multi-visualisation dashboards, and moves data in and out of other formats. Full formula support runs through every write operation.
- Workbooks created, opened, saved and enumerated across XLSX, XLSM, XLTX and XLTM — `create_workbook_tool`, `open_workbook_tool`, `save_workbook_tool`, `list_sheets_tool`
- Worksheets added, deleted and renamed — `add_sheet_tool`, `delete_sheet_tool`, `rename_sheet_tool`
- Data and formulas written by range or single cell, and read back with pagination — `write_sheet_data_tool`, `update_cell_tool`
- Excel tables created plainly or with number formats, header styling and a table style applied in one call — `add_table_tool`, `create_formatted_table_tool`
- Charts in column, bar, line, pie and scatter form, and dashboards combining several tables and charts across sheets — `add_chart_tool`, `create_dashboard_tool`
- Rows filtered by value lists and comparisons against a named table — `filter_data_tool`
- Data imported from CSV, JSON and SQL and exported to CSV, JSON and PDF, including per-sheet and multi-sheet PDF export — `import_data_tool`, `export_data_tool`, `export_single_sheet_pdf_tool`, `export_sheets_pdf_tool`
- Automatic column-width adjustment, row-height optimisation for wrapped text, and chart styles such as `colorful-1` and `dark-blue`
No account and no key. Node.js 14.0 or higher and Python 3.8 or higher — the launcher is Node, the work is Python. Run it with `npx @guillehr2/excel-mcp-server@latest` or install globally with npm; the published package is `@guillehr2/excel-mcp-server` 1.0.7 with an `excel-mcp-server` binary. Python dependencies — fastmcp, openpyxl, pandas, numpy, matplotlib, xlsxwriter, xlrd and xlwt — are installed automatically on first run, which is why Python must already be on your `PATH`. Windows, macOS and Linux.
One command — npx @guillehr2/excel-mcp-server@latest
