A Python MCP server that lets AI agents manipulate Excel files without Excel installed, via stdio, SSE, or streamable HTTP transports. Includes tools for workbook/worksheet operations, charts, pivots, formatting, and validation.
Collecting history — the radar snapshots this repo daily. The trend line appears after 3 days of data (1 so far).
What it is
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.
How it works
Provides three transport methods to communicate with the server:
- Stdio Transport: run locally with commands like
uvx excel-mcp-server stdioand pass per-call file paths. - SSE Transport: Server-Sent Events (deprecated).
- Streamable HTTP Transport: remote-friendly transport using HTTP; requires EXCEL_FILES_PATH on server for file storage and relative paths for tool file references. FastMCP can control the port via FASTMCP_PORT.
The README specifies environment handling rules for SSE/Streamable HTTP transports and per-call file paths for stdio-driven usage.
Getting started
Usage examples from the README:
- Stdio:
uvx excel-mcp-server stdio{ "mcpServers": { "excel": { "command": "uvx", "args": ["excel-mcp-server", "stdio"] } } } - SSE (deprecated):
uvx excel-mcp-server sse{ "mcpServers": { "excel": { "url": "http://localhost:8000/sse", } } } - Streamable HTTP:
uvx excel-mcp-server streamable-http{ "mcpServers": { "excel": { "url": "http://localhost:8000/mcp", } } }
Environment variables:
- SSE/Streamable HTTP require EXCEL_FILES_PATH on the server; defaults to ./excel_files if not set. Absolute paths are rejected; relative paths are used.
- FASTMCP_PORT can set the listening port (default 8017).
Stdio transport uses per-call file paths, not a server-wide EXCEL_FILES_PATH.
Recent releases
- v0.1.8 (2026-04-12): Security fix for path traversal vulnerability in SSE/streamable-http transports; added tool annotations for improved LLM tool understanding.
- v0.1.7 (2025-08-06): Fix host/port configuration issues.
- v0.1.6 (2025-08-01): Added functions to insert/delete rows and columns; other fixes.
- v0.1.5 (2025-07-05): Enhanced chart functionality; added new tool.
- v0.1.4 (2025-06-10): Add create_excel_table function; fix data reading behavior.
Traction
Stars: 4091; Forks: 448; Open issues: 68
Caveats
License: MIT Created: 2025-02-12; Last push: 2026-04-12. SSE transport is deprecated; environment handling and path traversal fixes exist in latest release.






