{"id":"e1842fe8-fbc2-4390-a0df-9214b8c23047","slug":"fbeelm-excel-mcp-server","kind":"mcp","name":"excel-mcp-server","summary":"","owner":"fbeelm","repoUrl":"https://github.com/fbeelm/excel-mcp-server","license":"MIT","licenseTier":"permissive","trust":"community","stars":3,"match":null,"fewStars":true,"format":"mcp","createdAt":"2025-04-03T10:47:22.000Z","addedAt":"2026-10-15T00:36:26.209Z","logoUrl":"https://avatars.githubusercontent.com/u/275242630?v=4","linkOnly":false,"collection":null,"skillPath":null,"categories":["files-documents","cloud-infra"],"tags":[],"runtime":"node","local":true,"cloudCapable":false,"cloudCapability":"unknown","cloudReadyOnPlatform":false,"needsApiKey":false,"reviewed":false,"syncedAt":"2026-10-15T00:36:26.203Z","sample":false,"url":"https://conduits.dev/tools/fbeelm-excel-mcp-server","language":"Go","transports":["stdio"],"install":{"npm":"@fbeawels/excel-mcp-server"},"requirements":{"env":[],"upstreamMayCharge":false},"tools":null,"readme":"# Excel MCP Server\n\n<img src=\"docs/img/icon-800.png\" width=\"128\">\n\n[![NPM Version](https://img.shields.io/npm/v/@fbeawels/excel-mcp-server)](https://www.npmjs.com/package/@fbeawels/excel-mcp-server)\n[![smithery badge](https://smithery.ai/badge/@fbeawels/excel-mcp-server)](https://smithery.ai/server/@fbeawels/excel-mcp-server)\n\nA Model Context Protocol (MCP) server that reads and writes MS Excel data.\n\n## Features\n\n- Read text values from MS Excel file\n- Write text values to MS Excel file\n- Read formulas from MS Excel file\n- Write formulas to MS Excel file\n- Capture screen image from MS Excel file (Windows only)\n\nFor more details, see the [tools](#tools) section.\n\n## Requirements\n\n- Node.js 20.x or later\n\n## Supported file formats\n\n- xlsx (Excel book)\n- xlsm (Excel macro-enabled book)\n- xltx (Excel template)\n- xltm (Excel macro-enabled template)\n\n## Installation\n\n### Installing via NPM\n\nexcel-mcp-server is automatically installed by adding the following configuration to the MCP servers configuration.\n\n#### Using stdio transport (default)\n\nFor Windows:\n```json\n{\n    \"mcpServers\": {\n        \"excel\": {\n            \"command\": \"cmd\",\n            \"args\": [\"/c\", \"npx\", \"--yes\", \"@fbeawels/excel-mcp-server\"],\n            \"env\": {\n                \"EXCEL_MCP_PAGING_CELLS_LIMIT\": \"4000\"\n            }\n        }\n    }\n}\n```\n\nFor other platforms:\n```json\n{\n    \"mcpServers\": {\n        \"excel\": {\n            \"command\": \"npx\",\n            \"args\": [\"--yes\", \"@fbeawels/excel-mcp-server\"],\n            \"env\": {\n                \"EXCEL_MCP_PAGING_CELLS_LIMIT\": \"4000\"\n            }\n        }\n    }\n}\n```\n\n#### Using SSE transport\n\nFor Windows:\n```json\n{\n    \"mcpServers\": {\n        \"excel\": {\n            \"command\": \"cmd\",\n            \"args\": [\"/c\", \"npx\", \"--yes\", \"@fbeawels/excel-mcp-server\"],\n            \"env\": {\n                \"EXCEL_MCP_PAGING_CELLS_LIMIT\": \"4000\",\n                \"EXCEL_MCP_TRANSPORT\": \"sse\",\n                \"EXCEL_MCP_HOST\": \"0.0.0.0\",\n                \"EXCEL_MCP_PORT\": \"8000\"\n            }\n        }\n    }\n}\n```\n\nFor other platforms:\n```json\n{\n    \"mcpServers\": {\n        \"excel\": {\n            \"command\": \"npx\",\n            \"args\": [\"--yes\", \"@fbeawels/excel-mcp-server\"],\n            \"env\": {\n                \"EXCEL_MCP_PAGING_CELLS_LIMIT\": \"4000\",\n                \"EXCEL_MCP_TRANSPORT\": \"sse\",\n                \"EXCEL_MCP_HOST\": \"0.0.0.0\",\n                \"EXCEL_MCP_PORT\": \"8000\"\n            }\n        }\n    }\n}\n```\n\nWhen using SSE transport, the server will start an HTTP server with the following endpoints:\n- `/sse` - SSE endpoint for receiving events from the server\n- `/command` - POST endpoint for sending commands to the server\n- `/status` - GET endpoint for checking server status\n\n### Installing via Smithery\n\nTo install Excel MCP Server for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@fbeawels/excel-mcp-server):\n\n```bash\nnpx -y @smithery/cli install @fbeawels/excel-mcp-server --client claude\n```\n\n<h2 id=\"tools\">Tools</h2>\n\n### `read_sheet_names`\n\nList all sheet names in an Excel file.\n\n**Arguments:**\n- `fileAbsolutePath`\n    - Absolute path to the Excel file\n\n### `read_sheet_data`\n\nRead data from Excel sheet with pagination.\n\n**Arguments:**\n- `fileAbsolutePath`\n    - Absolute path to the Excel file\n- `sheetName`\n    - Sheet name in the Excel file\n- `range`\n    - Range of cells to read in the Excel sheet (e.g., \"A1:C10\"). [default: first paging range]\n- `knownPagingRanges`\n    - List of already read paging ranges\n\n### `read_sheet_formula`\n\nRead formulas from Excel sheet with pagination.\n\n**Arguments:**\n- `fileAbsolutePath`\n    - Absolute path to the Excel file\n- `sheetName`\n    - Sheet name in the Excel file\n- `range`\n    - Range of cells to read in the Excel sheet (e.g., \"A1:C10\"). [default: first paging range]\n- `knownPagingRanges`\n    - List of already read paging ranges\n\n### `read_sheet_image`\n\n**[Windows only]** Read data as an image from the Excel sheet with pagination.\n\n**Arguments:**\n- `fileAbsolutePath`\n    - Absolute path to the Excel file\n- `sheetName`\n    - Sheet name in the Excel file\n- `range`\n    - Range of cells to read in the Excel sheet (e.g., \"A1:C10\"). [default: first paging range]\n- `knownPagingRanges`\n    - List of already read paging ranges\n\n### `write_sheet_data`\n\nWrite data to the Excel sheet.\n\n**Arguments:**\n- `fileAbsolutePath`\n    - Absolute path to the Excel file\n- `sheetName`\n    - Sheet name in the Excel file\n- `range`\n    - Range of cells to read in the Excel sheet (e.g., \"A1:C10\").\n- `data`\n    - Data to write to the Excel sheet\n\n### `write_sheet_formula`\n\nWrite formulas to the Excel sheet.\n\n**Arguments:**\n- `fileAbsolutePath`\n    - Absolute path to the Excel file\n- `sheetName`\n    - Sheet name in the Excel file\n- `range`\n    - Range of cells to read in the Excel sheet (e.g., \"A1:C10\").\n- `formulas`\n    - Formulas to write to the Excel sheet (e.g., \"=A1+B1\")\n\n<h2 id=\"tools\">Configuration</h2>\n\n### Command-line Arguments\n\nThe following command-line arguments are available:\n\n```\n--transport <type>   Transport type (stdio or sse)\n--host <address>     Host address to listen on for SSE transport (default: all interfaces)\n--port <number>      Port for SSE transport (default: 8000)\n```\n\nExample usage:\n```bash\nnpx @fbeawels/excel-mcp-server --transport sse --host 0.0.0.0 --port 8000\n```\n\n### Environment Variables\n\nYou can also change the MCP Server behaviors by the following environment variables:\n\n### `EXCEL_MCP_PAGING_CELLS_LIMIT`\n\nThe maximum number of cells to read in a single paging operation.  \n[default: 4000]\n\n### `EXCEL_MCP_TRANSPORT`\n\nThe transport mechanism to use for communication.  \nPossible values: `stdio`, `sse`  \n[default: stdio]\n\n### `EXCEL_MCP_HOST`\n\nThe host address to bind to when using SSE transport.  \n[default: \"\"] (all interfaces)\n\n### `EXCEL_MCP_PORT`\n\nThe port to use for the HTTP server when using SSE transport.  \n[default: 8000]\n\n## License\n\nCopyright (c) 2025 Franck Besnard\n\nexcel-mcp-server is released under the [MIT License](LICENSE)\n"}