mcp-server-xlwings
@geniuskey
MCP server for Excel automation via xlwings COM. Works with DRM-protected files.
Overview
What is mcp-server-xlwings?
mcp-server-xlwings is an MCP server that automates Excel via xlwings COM, enabling interaction with live Excel sessions, including DRM-protected files. It is designed for enterprise users who need to read/write Excel data that other libraries (like openpyxl or pandas) cannot access due to encryption, locked files, or running macros.
How to use mcp-server-xlwings?
Install with uvx mcp-server-xlwings (recommended) or pip install mcp-server-xlwings. Configure your MCP client (e.g., Claude Desktop, Claude Code, Roo Code, Cursor, Windsurf, Continue) by adding a JSON or YAML entry pointing to the uvx command and server name. All tools default to the active workbook when no workbook is specified.
Key features of mcp-server-xlwings
- Uses COM automation for live Excel interaction
- Works with DRM-protected and locked files
- Reads current selection and active workbook
- Runs VBA macros and returns values
- Sets formulas with live calculated results
- Provides 11 tools for read, write, format, sheet, and macro actions
Use cases of mcp-server-xlwings
- See what the user is working on in their open spreadsheet
- Summarize selected data directly from the active workbook
- Run existing VBA macros and retrieve return values
- Add formulas and formatting to enterprise Excel files
- Read formulas with their calculated values across multiple sheets
FAQ from mcp-server-xlwings
What makes mcp-server-xlwings different from openpyxl/pandas?
openpyxl and pandas read .xlsx files directly from disk. mcp-server-xlwings uses COM automation to talk to the running Excel process, allowing it to open DRM-protected files, interact with live formulas and macros, and work with files locked by other processes.
What are the system requirements?
Windows (Excel COM automation is Windows-only), Microsoft Excel installed, and Python 3.10 or higher.
Can it run VBA macros?
Yes. The run_macro tool executes a VBA macro and returns its return value.
Does it support reading the user's current selection?
Yes. The get_active_workbook tool returns the workbook name, sheets, and the current selection data.
Is mcp-server-xlwings cross-platform?
No. It requires Windows because of its dependency on COM automation for Microsoft Excel.