Server facts
Excel MCP Server
Project
- Author
- haris-musa
- Repository
- github.com/haris-musa/excel-mcp-server
- Website
- excelmcpserver.com
- License
- MIT
- Category
- Data & Analytics
Tech
- Runtime / language
- python
- Transports
- stdio
- Remote available
- No
- Authentication
- Not specified
Activity
- GitHub stars
- 4,244
- Last commit
- Data as of
Tags
- Charts
- Excel
- Pivot Tables
- Spreadsheets
Overview
Excel MCP Server connects AI agents to spreadsheet operations without requiring Microsoft Excel on the machine. Its documented capabilities span creating and reading workbooks, updating worksheets, applying formulas, and organizing data into Excel tables. Formatting options include fonts, colors, borders, alignment, and conditional rules. Chart creation and pivot tables extend the workflow beyond basic cell updates into visual summaries and data analysis. The project also describes validation for ranges, formulas, and data integrity, making it relevant when spreadsheet changes need more structure than a simple text export.
The server offers stdio for local execution and Streamable HTTP for remote clients. SSE remains documented but is marked deprecated. With stdio, each tool request supplies its own file path, so a server-wide spreadsheet directory is unnecessary. Network transports instead use a configured file directory and require tool paths to stay relative to it; absolute paths and traversal attempts are rejected. The README gives EXCEL_FILES_PATH as the directory setting and FASTMCP_PORT for choosing a listening port. Its sample connection URLs and stated default port differ, so a deployment should use the actual configured port rather than assuming the examples establish a single default. Individual tool identifiers are not listed in the supplied README; it points to separate tool documentation for that inventory.
Install & configure
Requirements
- uvx
- An MCP-compatible client
uvx excel-mcp-server stdioStdio accepts a path in each tool call. For remote operation use the documented streamable-http mode, configure EXCEL_FILES_PATH, and keep tool paths relative to that directory. SSE is deprecated.
Examples are translated from the published configuration. Supply your own credentials and verify requirements in the upstream README. Remote connectors are shown only where a supported configuration format is known.
Config file · macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Use Settings → Developer → Edit Config when available. Do not assume a Linux configuration path; check the client documentation for your platform. Remote servers use the app’s connector flow when supported, not the local stdio file shown here. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"excel-mcp-server": {
"command": "uvx",
"args": [
"excel-mcp-server",
"stdio"
],
"env": {}
}
}
}Config file · Project: .cursor/mcp.json
User: ~/.cursor/mcp.json
The project path is relative to the workspace root. The tilde denotes your user home directory. Use Cursor’s MCP settings to confirm which configuration and scope your installed version is reading. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"excel-mcp-server": {
"command": "uvx",
"args": [
"excel-mcp-server",
"stdio"
],
"env": {}
}
}
}Config file · Workspace: .vscode/mcp.json
For user scope, use the “MCP: Open User Configuration” command if available. Do not guess a user configuration path across operating systems, profiles, containers, or remote workspaces; check the client documentation. Merge this example with existing settings; do not overwrite unrelated servers.
{
"servers": {
"excel-mcp-server": {
"type": "stdio",
"command": "uvx",
"args": [
"excel-mcp-server",
"stdio"
],
"env": {}
}
}
}Config file · macOS/Linux: ~/.codeium/windsurf/mcp_config.json
Windows: %USERPROFILE%\.codeium\windsurf\mcp_config.json
Open the MCP configuration through Windsurf’s settings when possible to confirm the active file. Paths can differ in managed or future releases; check the client documentation if this location is not present. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"excel-mcp-server": {
"command": "uvx",
"args": [
"excel-mcp-server",
"stdio"
],
"env": {}
}
}
}Config file · Project scope: .mcp.json at the repository root
The project file uses mcpServers. For user scope, use claude mcp add --scope user rather than assuming .mcp.json in your home directory is the user configuration. Check the client documentation for managed settings and storage details. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"excel-mcp-server": {
"type": "stdio",
"command": "uvx",
"args": [
"excel-mcp-server",
"stdio"
],
"env": {}
}
}
}Examples are translated from the published configuration. Supply your own credentials and verify requirements in the upstream README. Remote connectors are shown only where a supported configuration format is known.
Tools
No individual tool names were confirmed in the source material. Check the repository for its current tool list.
Names, permissions, and defaults can change. Check the current upstream documentation before granting access.
Use cases
- Create workbooks and manage worksheet names or copies.
- Apply formulas and conditional spreadsheet formatting.
- Build charts and pivot tables for data analysis.
- Expose spreadsheet operations to a remote MCP client.
Strengths
- Does not require Microsoft Excel to be installed.
- Supports both local stdio and remote HTTP workflows.
- Includes table styling, chart generation, and validation features.
Limitations
- SSE is deprecated.
- The supplied README delegates individual tool details to a separate document.
- Example connection ports differ from the stated default port.
Frequently asked questions
Independent listing, not an affiliation or security review. Grant the least access needed and verify the upstream instructions before running code.