The Excel MCP Server is a Model Context Protocol server that allows you to manipulate Excel files programmatically without requiring Microsoft Excel to be installed. With this server, you can:
Workbook Operations: Create new workbooks, retrieve metadata about workbooks including sheets and ranges
Worksheet Management: Create, copy, rename, delete, and merge worksheets
Data Manipulation: Read and write data to worksheets, apply formulas, validate formula syntax
Formatting: Apply comprehensive cell formatting (fonts, colors, borders, alignment, number formats, conditional formatting)
Range Operations: Copy, delete, or validate cell ranges
Advanced Features: Create charts (line, bar, pie, scatter), generate pivot tables, create and manage Excel tables with custom styling
Data Validation: Retrieve and manage validation rules applied to cell ranges
The MCP server uses Python and the OpenPyXL library to provide Excel file manipulation capabilities without requiring Microsoft Excel installation
A Model Context Protocol (MCP) server that lets you manipulate Excel files without needing Microsoft Excel installed. Create, read, and modify Excel workbooks with your AI agent.
Features
📊 Excel Operations: Create, read, update workbooks and worksheets
📈 Data Manipulation: Formulas, formatting, charts, pivot tables, and Excel tables
🔍 Data Validation: Built-in validation for ranges, formulas, and data integrity
🎨 Formatting: Font styling, colors, borders, alignment, and conditional formatting
📋 Table Operations: Create and manage Excel tables with custom styling
📊 Chart Creation: Generate various chart types (line, bar, pie, scatter, etc.)
🔄 Pivot Tables: Create dynamic pivot tables for data analysis
🔧 Sheet Management: Copy, rename, delete worksheets with ease
🔌 Triple transport support: stdio, SSE (deprecated), and streamable HTTP
🌐 Remote & Local: Works both locally and as a remote service
Related MCP server: Excel MCP Server
Usage
The server supports three transport methods:
1. Stdio Transport (for local use)
2. SSE Transport (Server-Sent Events - Deprecated)
SSE transport connection:
3. Streamable HTTP Transport (Recommended for remote connections)
Streamable HTTP transport connection:
Environment Variables & File Path Handling
SSE and Streamable HTTP Transports
When running the server with the SSE or Streamable HTTP protocols, you must set the . This variable tells the server where to read and write Excel files.
If not set, it defaults to
./excel_files.
You can also set the FASTMCP_PORT environment variable to control the port the server listens on (default is 8017 if not set).
Example (Windows PowerShell):
$env:EXCEL_FILES_PATH="E:\MyExcelFiles" $env:FASTMCP_PORT="8007" uvx excel-mcp-server streamable-httpExample (Linux/macOS):
EXCEL_FILES_PATH=/path/to/excel_files FASTMCP_PORT=8007 uvx excel-mcp-server streamable-http
Stdio Transport
When using the stdio protocol, the file path is provided with each tool call, so you do not need to set EXCEL_FILES_PATH on the server. The server will use the path sent by the client for each operation.
Available Tools
The server provides a comprehensive set of Excel manipulation tools. See TOOLS.md for complete documentation of all available tools.
Star History
License
MIT License - see LICENSE for details.