Excel MCP Server
Interact with Microsoft Excel to read data, edit cells, execute VBA code, and manage worksheets.
Excel MCP Server
A cross-platform MCP server for reading, writing, and formatting Excel files. Works with both open Excel workbooks (live) and closed .xlsx files (no Excel needed).
Two Modes
workbook— Operate on an open Excel workbook in real-time via xlwingspath— Edit closed .xlsx files directly using pure Python (preserves images, charts, and all embedded content)
Tools
| Tool | workbook | path | Required |
|---|---|---|---|
get_excel_info | - | - | (none) |
read_cells | OK | OK | range |
write_cells | OK | OK | range, value |
format_cells | OK | OK | range, format |
execute_vba | OK | - | workbook, code |
Requirements
- Node.js 18+
- Python 3.8+
- xlwings (for live Excel mode —
pip install xlwings) - Microsoft Excel (only needed for
workbookmode andexecute_vba)
Works on Windows and macOS. The path mode also works on Linux.
Installation
git clone https://github.com/kousunh/excel-mcp-server.git
cd excel-mcp-server
npm install
pip install -r scripts/requirements.txt
Configure MCP Client
Add to your MCP client config (Claude Desktop, Cursor, etc.):
{
"mcpServers": {
"excel-mcp": {
"command": "node",
"args": ["/path/to/excel-mcp-server/src/index.js"]
}
}
}
To use a specific Python executable, set the EXCEL_MCP_PYTHON environment variable:
{
"mcpServers": {
"excel-mcp": {
"command": "node",
"args": ["/path/to/excel-mcp-server/src/index.js"],
"env": {
"EXCEL_MCP_PYTHON": "/path/to/python"
}
}
}
}
Usage
Closed files (path mode)
read_cells path="/data/report.xlsx" range="A1:D20" formats=true
write_cells path="/data/report.xlsx" range="A1:C3" value=[["Name","Age","City"],["Alice",30,"NYC"],["Bob",25,"LA"]]
format_cells path="/data/report.xlsx" range="A1:C1" format={"bold":true,"backgroundColor":"#4472C4","fontColor":"#FFFFFF"}
No Excel installation required. Images, charts, and shapes are preserved.
Open workbooks (workbook mode)
get_excel_info
read_cells workbook="Sales.xlsx" range="B2:F10"
write_cells workbook="Sales.xlsx" range="G2" value="=SUM(B2:F2)"
execute_vba workbook="Sales.xlsx" code="Range(\"A1:G10\").AutoFilter"
Requires Excel to be running with the workbook open.
License
MIT
Related Servers
Unified MCP Suite
A collection of MCP servers for media tools, information retrieval, PDF creation, and presentation generation.
Excel MCP Server
Manipulate Excel files (XLSX, XLSM, etc.) without needing Microsoft Excel, featuring an integrated AI assistant.
WxO Agent MCP
Simple MCP (Model Context Protocol) server that invokes a single Watson Orchestrate agent remotely. The agent is defined once via environment variables or MCP config. Use this when you want a lightweight MCP that only chats with one agent—no tool management, no agent listing, no flows. Just invoke_agent(message) and get_agent().
Kanka MCP Server
A MCP server to manage entries in Kanka platform.
Freee MCP Scalar
AI-driven integration with the freee accounting service via the Model Context Protocol.
HireBase
Interact with the HireBase Job API to manage job listings and applications.
Brandfolio - Make Your Brand Machine-Readable for AI
Your brand deserves consistency across every AI interaction. Brandfolio transforms your brand identity into a format that works with AI on every platform.
UnifAI
Dynamically search and call tools using UnifAI Network
Siri Shortcuts
List, open, and run shortcuts from the macOS Shortcuts app.
LibreOffice
Provides tools and resources for interacting with LibreOffice documents.