MCP Servers · Community project

ExcelMcp

ExcelMcp connects real desktop Excel to MCP through the Microsoft Excel COM API, letting agents work with workbooks, formulas, charts, PivotTables, Power Query, DAX, VBA, and Python in Excel.

802 StarsMITC#Updated today
01

Project overview

ExcelMcp is a local MCP server for Windows desktop sessions. It drives real Microsoft Excel through the COM API instead of bypassing the application to edit workbook files directly. Agents can work with formulas, tables, charts, PivotTables, Power Query, DAX, VBA, and Python in Excel. That reach also inherits the current user's access to local files and Excel, so writes, saves, closes, and macros need explicit boundaries.

02

Core capabilities

01

Workbook and range automation

Create or open workbooks, bulk-read and write values and formulas, and manage named ranges, tables, styles, validation, and calculation state.

02

Reports, charts, and PivotTables

Manage chart lifecycles, trendlines, error bars, data labels, PivotTables, slicers, timelines, and formatting.

03

Power Query and the Data Model

Create, inspect, update, and refresh Power Query, manage connections and the Data Model, and run DAX queries when MSOLAP is installed.

04

VBA and Python in Excel

Manage VBA modules and run macros or invoke Microsoft's Python in Excel service, with distinct permission and data-flow boundaries.

05

Structured MCP results

The 2.1 line uses the official MCP SDK, publishes input and output schemas, and distinguishes argument, state, and execution failures.

Project screenshot of ExcelMcp producing a data table and combo chart in Microsoft Excel
The project screenshot shows a workbook after ExcelMcp automated its table, formatting, and chart.View repository image
03

Setup and connection

Confirm Windows, desktop Excel, and an interactive session first. Then choose the VS Code extension with its bundled server or an npx stdio configuration. Use an empty test workbook for the first check and avoid production files.

AI AGENT INSTALL

Let an AI Agent install it

Send this prompt to Codex, Claude Code, or another AI agent that can work with your local environment.

Help me install and configure ExcelMcp from https://github.com/sbroenne/mcp-server-excel. Read README.md, docs/INSTALLATION.md, docs/INSTALLATION-MCP-SERVER.md, PRIVACY.md, SECURITY.md, and LICENSE first. Confirm Windows 10+, Excel 2016+, an interactive desktop, and Node.js 18+ for npx. Ask which MCP client and configuration scope I want, and do not overwrite existing MCP settings. Prefer the documented `npx -y @sbroenne/mcp-server-excel@latest` stdio configuration; for VS Code, the bundled extension is also acceptable. After setup, create test.xlsx only in the nonsensitive directory I specify, list worksheets, write one value, read it back, and save. Do not open production workbooks, run macros, enable VBA project access, send M or DAX to external formatters, or invoke Python in Excel without separate confirmation. Report every changed configuration, command, path, version, and verification result.
01Before you start
  • Windows 10 or later
  • Microsoft Excel 2016 or later
  • Node.js 18 or later and network access for the npx route
  • VS Code 1.107 or later for the extension route
  • A nonsensitive test directory with target workbooks closed
02Copy the install command or configuration
{"mcpServers":{"excel-mcp":{"command":"npx","args":["-y","@sbroenne/mcp-server-excel@latest"],"env":{}}}}
03Complete the setup steps
  1. 1
    Check Windows and Excel prerequisites

    Verify Windows, Excel, and an interactive desktop session; also check Node.js 18+ and network access for npx.

  2. 2
    Back up and add MCP configuration

    Back up the client's existing settings, set excel-mcp to use npx, and copy the documented package name and arguments.

  3. 3
    Restart the client and inspect the connection

    Restart the MCP client and confirm the Excel tools appear; inspect client logs and version output if startup fails.

  4. 4
    Create an isolated test workbook

    Create test.xlsx in a nonsensitive directory, record the returned session_id, and use only that session.

  5. 5
    Read back and end the session safely

    Write and read one test value, then explicitly save and close; treat every close-without-save action as destructive.

How to verify the setup

Restart the MCP client and confirm excel-mcp is connected. Ask the agent to create an empty test.xlsx, list its worksheets, write one test value, read it back, and save. Passing requires the file and value to match without touching another workbook.

Before using it
  • Run `npx -y @sbroenne/mcp-server-excel@latest --version` to check package startup first.
  • The VS Code extension bundles the MCP server and does not require a separate Node.js or .NET install.
  • The NuGet route targets .NET 10 integration; ordinary MCP clients should prefer npx.
  • The target workbook needs exclusive access and should be closed before verification.
04

Use cases

SCENARIO 01

Automated analysis reports

Write structured data, add formulas, formatting, tables, and charts, and have a person review the workbook before saving.

SCENARIO 02

Power Query refresh workflows

Create or update M queries, load results, and refresh connections while keeping optional external formatting under explicit consent.

SCENARIO 03

PivotTable and DAX analysis

Build PivotTables, slicers, and Data Model measures and run DAX queries when MSOLAP is available.

SCENARIO 04

Bulk updates inside Excel templates

Update designated ranges, formulas, and names while preserving an existing layout, then read back critical results.

05

Assessment

ExcelMcp's strongest point is its use of the official Excel COM API to operate the real desktop application, with common analysis and reporting work grouped into 31 tools and 387 operations. Its installation, privacy, and security documentation clearly describes local file permissions, anonymous telemetry, remote formatting, and Python in Excel data flows. The main constraints are Windows and desktop Excel, exclusive workbook access, no tool-level undo for destructive operations, and extra components or services for some advanced features. This review is based only on the public repository and releases, without installation on Windows.

Why it may be useful

  • Broad coverage across workbooks, charts, PivotTables, Power Query, DAX, VBA, and Python in Excel
  • Multiple installation routes with concrete client configuration examples
  • Public SECURITY and PRIVACY documents covering permissions, telemetry, and external flows
  • MIT license, frequent commits, versioned releases, and a substantial test structure

What to know first

  • Works only with interactive Windows desktop Excel sessions
  • Writes, saves, macros, and closes can create irreversible workbook changes
  • Anonymous telemetry is present and some optional features reach external services
  • Installation and functionality were not tested in this review
06

README

ExcelMcp


Overview

ExcelMcp connects real desktop Excel to MCP through the Microsoft Excel COM API, letting agents work with workbooks, formulas, charts, PivotTables, Power Query, DAX, VBA, and Python in Excel. Automate real Microsoft Excel with AI through an MCP Server or CLI, covering Power Query, DAX, VBA, PivotTables, charts, and 387 operations.

Getting started

  • Confirm Windows, desktop Excel, and an interactive session first. Then choose the VS Code extension with its bundled server or an npx stdio configuration. Use an empty test workbook for the first check and avoid production files.
  • The project groups 387 operations behind 31 domain-oriented MCP tools using action parameters.
  • Workbook sessions can be created, opened, listed, saved, and closed; later calls must use the exact returned session_id.
  • Restart the MCP client and confirm excel-mcp is connected. Ask the agent to create an empty test.xlsx, list its worksheets, write one test value, read it back, and save. Passing requires the file and value to match without touching another workbook.

Configuration

{"mcpServers":{"excel-mcp":{"command":"npx","args":["-y","@sbroenne/mcp-server-excel@latest"],"env":{}}}}
Read the complete README on GitHub →