Excel MCP Server logo

Excel MCP Server

by haris-musa

Creates, reads, edits, formats, and analyzes Excel workbooks with charts, formulas, tables, and PivotTables.

Install Excel MCP Server

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "haris-musa-excel-mcp-server": {
      "command": "uvx",
      "args": [
        "excel-mcp-server"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

haris-musa/excel-mcp-server MCP server lets AI clients create, read, and edit Excel workbooks without Microsoft Excel. It uses openpyxl and includes support for formulas, charts, PivotTables, tables, formatting, validation, and workbook file operations. The server runs locally through stdio or as a streamable HTTP service, with optional folder restrictions and read-only mode. Reach for it when an agent needs to inspect or automate `.xlsx`, `.xlsm`, `.xltx`, or `.xltm` files.

Use cases

  • Create formatted Excel reports from structured data
  • Read and summarize workbook ranges for an AI workflow
  • Update formulas, tables, charts, and PivotTables
  • Validate and transform spreadsheet data
  • Apply repeatable formatting and workbook edits

Key features

  • Excel workbook creation and editing
  • Formula calculation and dynamic arrays
  • Charts and PivotTables
  • Tables, validation, filtering, and formatting
  • Read-only and folder-constrained operation
  • Stdio and streamable HTTP modes

Tools7

What Excel MCP Server lets your agent do. Expand a tool for its parameters.

Self-reported~11 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

30/30 checks healthy over the last 77d

Supply-chain signal

1 high-severity advisory on record for this package. Most advisories affect transitive dependencies and may not be exploitable in this server's actual usage — this is a directional signal, not a security audit.

Critical 1High 0Medium 0Low 1

Scanned 7d ago via OSV.dev · excel-mcp-server (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars4.3kStargazers on the source repository.
Last commitTodayMost recent push to the default branch.
Tools exposed7Callable tools this server registers over MCP.
Directory activity14 viewsConfig copies, upvotes, and views on AllMCPs.

How Excel MCP Server works

What haris-musa/excel-mcp-server MCP server does

haris-musa/excel-mcp-server MCP server connects AI clients to Excel workbook files through the Model Context Protocol. It can create workbooks, inspect and modify cells, manage worksheets, apply formatting, and work with tables, formulas, charts, and PivotTables. Microsoft Excel is not required because the server is built on openpyxl and includes a formula calculation engine.

The server supports .xlsx, .xlsm, .xltx, and .xltm files. Macro-enabled files retain their macros, while reading VBA is supported and writing VBA requires an explicit opt-in. The server does not execute macros. Existing workbook content that its tools do not edit, including shapes and form controls, is preserved.

This fits the Workplace & Productivity category for tasks such as updating reports, extracting spreadsheet data, preparing formatted workbooks, and applying repeatable spreadsheet transformations from an AI client.

How it works

The normal operating mode is stdio. A client starts the package with uvx excel-mcp-server stdio, and the server exposes workbook operations over MCP. Files can be limited to one or more approved folders with --allow-dir; subfolders are included, and relative workbook paths resolve from the approved location. The EXCEL_FILES_PATH environment variable provides an alternative folder configuration.

A streamable HTTP mode is also available. It listens at /mcp, uses localhost by default, and stores workbooks in the configured directory. export_workbook and import_workbook move files between the client and server. Remote access requires configuring a host and bearer token, and the documentation recommends placing TLS in front of network use.

Large sheets are read in pages, and calls are bounded by configurable file and cell limits. Atomic saves help prevent partially written workbooks. The server can also refuse unsafe or oversized workbook packages.

Setup and configuration

Install uv before starting the server. Cursor and clients using an mcpServers configuration can launch it with a command such as uvx excel-mcp-server stdio --allow-dir /path/to/workbooks. VS Code uses an MCP configuration with a servers key. Claude Desktop can use the provided MCP bundle or a manual configuration, while Claude Code, Codex, and Gemini CLI provide command-line registration examples.

Useful options include:

  • --read-only exposes only operations that do not change files.
  • --allow-vba-write enables VBA-writing tools and is ignored in read-only mode.
  • --tools restricts exposed tool areas to reduce context usage.
  • --max-file-mb, --max-cells, and --max-pivot-cells control resource limits.
  • EXCEL_MCP_AUTH_TOKEN protects streamable HTTP connections when authentication is enabled.

Tools and capabilities

haris-musa/excel-mcp-server MCP server provides workbook creation and cell-level read and write operations, including dates and hyperlinks. Its spreadsheet features include formulas, dynamic arrays, formula tracing, stepwise formula evaluation, and Goal Seek. It can create and modify charts such as column, line, pie, scatter, bubble, waterfall, histogram, treemap, sunburst, and funnel charts.

The server also handles PivotTables, slicers, timelines, tables, totals rows, calculated columns, conditional formatting, data validation, sorting, filtering, find-and-replace, duplicate removal, text-to-columns, fill series, and paste special. Formatting operations cover fonts, fills, borders, number formats, merged cells, frozen panes, grouping, print setup, sheet protection, images, notes, and defined names.

Row and column insertion or deletion updates workbook references. Streaming reads help with sheets containing hundreds of thousands of rows, while per-call limits constrain the amount processed at once.

Limitations and notes

The server does not require or launch Microsoft Excel, so behavior depends on its openpyxl-based implementation and built-in formula engine. VBA writing is disabled unless explicitly enabled, and macros are never run by the server. Read-only mode prevents file-changing operations.

Without --allow-dir, stdio accepts absolute Excel file paths. With folder confinement enabled, only workbooks inside the approved directories can be opened. The server does not silently overwrite an existing workbook. HTTP mode binds to localhost by default; exposing it to other machines requires deliberate host, token, and network configuration.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Excel MCP Server

haris-musa/excel-mcp-server is an MCP server that connects AI clients to Excel workbooks without requiring Microsoft Excel. Its main tools create, read, edit, format, and analyze files, including cells, formulas, tables, charts, PivotTables, validation rules, and workbook structure.

Install uv, then run `uvx excel-mcp-server stdio --allow-dir /path/to/workbooks` from an MCP client configuration. The README also provides setup commands for Claude Code, Codex, and Gemini CLI, plus configuration examples for Cursor and VS Code.

Yes, haris-musa/excel-mcp-server works with Cursor through its `mcp.json` configuration. Set the command to `uvx`, pass `excel-mcp-server`, `stdio`, and an approved workbook directory in the arguments.

Yes, it can open and edit `.xlsm` files while preserving macros. Reading VBA is supported, but writing VBA requires `--allow-vba-write`, and the server never executes macros.

Run `uvx excel-mcp-server streamable-http --allow-dir /srv/workbooks` and connect to `http://127.0.0.1:8017/mcp`. For access beyond localhost, configure a host and `EXCEL_MCP_AUTH_TOKEN`, then send a bearer token with client requests.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewExcel MCP Server AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/haris-musa-excel-mcp-server?style=directory)](https://allmcps.com/mcp/haris-musa-excel-mcp-server)
HTML Embed
<a href="https://allmcps.com/mcp/haris-musa-excel-mcp-server"><img src="https://allmcps.com/api/badge/haris-musa-excel-mcp-server?style=directory" alt="Excel MCP Server on AllMCPs" /></a>