excel-mcp-server

MCP.Pizza Chef: negokaz

The excel-mcp-server is a Model Context Protocol server designed to read and write Microsoft Excel data, including text values, formulas, and sheet creation. It supports multiple Excel file formats such as xlsx, xlsm, xltx, and xltm. Windows users benefit from live editing and screen capture features. This server enables seamless integration of Excel data manipulation within MCP-enabled AI workflows.

Use This MCP server To

Read and write Excel cell values and formulas programmatically Create new sheets within existing Excel workbooks Integrate Excel data into AI workflows for real-time analysis Enable live editing of Excel sheets on Windows environments Capture screenshots of Excel sheets for documentation or reporting Automate Excel data updates from natural language commands Support Excel macro-enabled files in AI-driven processes

README

Excel MCP Server

NPM Version smithery badge

A Model Context Protocol (MCP) server that reads and writes MS Excel data.

Features

  • Read/Write text values
  • Read/Write formulas
  • Create new sheets

🪟Windows only:

  • Live editing
  • Capture screen image from a sheet

For more details, see the tools section.

Requirements

  • Node.js 20.x or later

Supported file formats

  • xlsx (Excel book)
  • xlsm (Excel macro-enabled book)
  • xltx (Excel template)
  • xltm (Excel macro-enabled template)

Installation

Installing via NPM

excel-mcp-server is automatically installed by adding the following configuration to the MCP servers configuration.

For Windows:

{
    "mcpServers": {
        "excel": {
            "command": "cmd",
            "args": ["/c", "npx", "--yes", "@negokaz/excel-mcp-server"],
            "env": {
                "EXCEL_MCP_PAGING_CELLS_LIMIT": "4000"
            }
        }
    }
}

For other platforms:

{
    "mcpServers": {
        "excel": {
            "command": "npx",
            "args": ["--yes", "@negokaz/excel-mcp-server"],
            "env": {
                "EXCEL_MCP_PAGING_CELLS_LIMIT": "4000"
            }
        }
    }
}

Installing via Smithery

To install Excel MCP Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @negokaz/excel-mcp-server --client claude

Tools

excel_describe_sheets

List all sheet information of specified Excel file.

Arguments:

  • fileAbsolutePath
    • Absolute path to the Excel file

excel_read_sheet

Read values from Excel sheet with pagination.

Arguments:

  • fileAbsolutePath
    • Absolute path to the Excel file
  • sheetName
    • Sheet name in the Excel file
  • range
    • Range of cells to read in the Excel sheet (e.g., "A1:C10"). [default: first paging range]
  • knownPagingRanges
    • List of already read paging ranges
  • showFormula
    • Show formula instead of value

excel_screen_capture

[Windows only] Take a screenshot of the Excel sheet with pagination.

Arguments:

  • fileAbsolutePath
    • Absolute path to the Excel file
  • sheetName
    • Sheet name in the Excel file
  • range
    • Range of cells to read in the Excel sheet (e.g., "A1:C10"). [default: first paging range]
  • knownPagingRanges
    • List of already read paging ranges

excel_write_to_sheet

Write values to the Excel sheet.

Arguments:

  • fileAbsolutePath
    • Absolute path to the Excel file
  • sheetName
    • Sheet name in the Excel file
  • newSheet
    • Create a new sheet if true, otherwise write to the existing sheet
  • range
    • Range of cells to read in the Excel sheet (e.g., "A1:C10").
  • values
    • Values to write to the Excel sheet. If the value is a formula, it should start with "="

excel_create_table

Create a table in the Excel sheet

Arguments:

  • fileAbsolutePath
    • Absolute path to the Excel file
  • sheetName
    • Sheet name where the table is created
  • range
    • Range to be a table (e.g., "A1:C10")
  • tableName
    • Table name to be created

excel_copy_sheet

Copy existing sheet to a new sheet

Arguments:

  • fileAbsolutePath
    • Absolute path to the Excel file
  • srcSheetName
    • Source sheet name in the Excel file
  • dstSheetName
    • Sheet name to be copied

Configuration

You can change the MCP Server behaviors by the following environment variables:

EXCEL_MCP_PAGING_CELLS_LIMIT

The maximum number of cells to read in a single paging operation.
[default: 4000]

License

Copyright (c) 2025 Kazuki Negoro

excel-mcp-server is released under the MIT License

excel-mcp-server FAQ

What Excel file formats does excel-mcp-server support?
It supports xlsx, xlsm, xltx, and xltm file formats.
Can excel-mcp-server handle Excel formulas?
Yes, it can read and write formulas within Excel sheets.
Is live editing available on all platforms?
No, live editing and screen capture features are currently Windows only.
What are the system requirements for running excel-mcp-server?
It requires Node.js version 20.x or later.
How does excel-mcp-server integrate with MCP workflows?
It exposes Excel data and operations as structured context for LLMs to interact with.
Can I create new sheets in an Excel workbook using this server?
Yes, creating new sheets is fully supported.
Does excel-mcp-server support macro-enabled Excel files?
Yes, both xlsm and xltm macro-enabled formats are supported.
Is this server compatible with multiple LLM providers?
Yes, it works with any MCP-compatible LLM provider like OpenAI, Claude, and Gemini.