Excel MCP Server

Local setup required. This server has to be cloned and prepared on your machine before you register it in Claude Code.
1

Set the server up locally

Run this once to clone and prepare the server before adding it to Claude Code.

Run in terminal
git clone https://github.com/kousunh/excel-mcp-server.git
cd excel-mcp-server
npm install
pip install -r scripts/requirements.txt
2

Register it in Claude Code

After the local setup is done, run this command to point Claude Code at the built server.

Run in terminal
claude mcp add excel-mcp -- node "<FULL_PATH_TO_EXCEL_MCP_SERVER>/dist/index.js"

Replace <FULL_PATH_TO_EXCEL_MCP_SERVER>/dist/index.js with the actual folder you prepared in step 1.

README.md

A cross-platform MCP server for reading, writing, and formatting Excel files.

日本語 README

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 xlwings
  • path — 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 workbook mode and execute_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

Tools (5)

get_excel_infoRetrieves information about the current Excel environment.
read_cellsReads data from a specified range in an Excel file or workbook.
write_cellsWrites values to a specified range in an Excel file or workbook.
format_cellsApplies formatting to a specified range of cells.
execute_vbaExecutes VBA code within an open Excel workbook.

Environment Variables

EXCEL_MCP_PYTHONPath to the specific Python executable to use.

Configuration

claude_desktop_config.json
{"mcpServers": {"excel-mcp": {"command": "node", "args": ["/path/to/excel-mcp-server/src/index.js"]}}}

Try it

Read the data from range A1:D20 in the file /data/report.xlsx.
Write the following data to the open workbook Sales.xlsx starting at cell G2: [['Name', 'Age'], ['Alice', 30]].
Format the range A1:C1 in /data/report.xlsx to have a bold font and a blue background.
Execute a VBA macro in Sales.xlsx to apply an AutoFilter to the range A1:G10.

Frequently Asked Questions

What are the key features of Excel MCP Server?

Operates on open Excel workbooks in real-time via xlwings.. Edits closed .xlsx files directly without requiring Excel to be installed.. Preserves images, charts, and all embedded content in .xlsx files.. Supports VBA code execution for advanced automation.. Cross-platform support for Windows, macOS, and Linux (path mode)..

What can I use Excel MCP Server for?

Automating data entry into existing Excel reports without opening the application.. Performing complex data analysis on closed spreadsheets using AI-driven cell reading.. Applying consistent formatting styles across multiple Excel files programmatically.. Triggering existing VBA macros within open workbooks via natural language commands..

How do I install Excel MCP Server?

Install Excel MCP Server by running: git clone https://github.com/kousunh/excel-mcp-server.git && cd excel-mcp-server && npm install && pip install -r scripts/requirements.txt

What MCP clients work with Excel MCP Server?

Excel MCP Server works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Excel MCP Server docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare