The Excel MCP Server is a tool for reading, writing, analyzing, and managing Excel files efficiently via the Model Context Protocol.
๐ Read Excel Files: Get worksheet lists, specific sheet data, or data from all sheets
โ๏ธ Write Excel Files: Create new files, write to specific sheets, with support for multiple worksheets
๐ Analyze Excel Structure: Analyze worksheet structure and export it to a new file
๐พ Cache Management: Automatically cache file content with scheduled cleanup and manual clearing options
๐ Log Management: Automatically log operations with periodic cleanup
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Excel MCP Serverread the sales data from Q1_2024.xlsx and show me the summary"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Excel MCP Server
็ฎไฝไธญๆ | English
Excel file processing server based on Model Context Protocol (MCP), providing functionalities for reading, writing, and analyzing Excel files.
Features
๐ Read Excel Files
Get worksheet list
Read specific worksheet data
Read all worksheets data
โ๏ธ Write Excel Files
Create new Excel files
Write to specific worksheet
Support multiple worksheets
๐ Analyze Excel Structure
Analyze worksheet structure
Export structure to new file
๐พ Cache Management
Automatic file content caching
Scheduled cache cleanup
Manual cache clearing
๐ Log Management
Automatic operation logging
Periodic log cleanup
Related MCP server: Excel MCP Server
Installation
Installing via Smithery
To install excel-mcp-server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @zhiwei5576/excel-mcp-server --client claudeInstalling Manually
Installing via NPM excel-mcp-server can be automatically installed by adding the following configuration to the MCP servers configuration.
Windows Platform:
{
"mcpServers": {
"excel": {
"command": "cmd",
"args": ["/c", "npx", "--yes", "@zhiweixu/excel-mcp-server"],
"env": {
"LOG_PATH": "[set an accessible absolute path]",
"CACHE_MAX_AGE": "1",
"CACHE_CLEANUP_INTERVAL": "4",
"LOG_RETENTION_DAYS": "7",
"LOG_CLEANUP_INTERVAL": "24"
}
}
}Other Platforms:
{
"mcpServers": {
"excel": {
"command": "npx",
"args": ["--yes", "@zhiweixu/excel-mcp-server"],
"env": {
"LOG_PATH": "[set an accessible absolute path]",
"CACHE_MAX_AGE": "1",
"CACHE_CLEANUP_INTERVAL": "4",
"LOG_RETENTION_DAYS": "7",
"LOG_CLEANUP_INTERVAL": "24"
}
}
}Note: LOG_PATH is optional. If not set, logs will be stored in the 'logs' folder under the application root directory.other arguments are optional.
API Tools
Structure Tools
analyzeExcelStructure
Function: Get Excel file structure including sheet list and column headers in JSON format
Parameters:
fileAbsolutePath: Absolute path of the Excel file
headerRows: Number of header rows (default: 1)
exportExcelStructure
Function: Export Excel file structure (sheets and headers) to a new Excel template file
Parameters:
sourceFilePath: Source Excel file path
targetFilePath: Target Excel file path
headerRows: Number of header rows (default: 1)
Read Tools
readSheetNames
Function: Get all sheet names from the Excel file
Parameters:
fileAbsolutePath: Absolute path of the Excel file
readDataBySheetName
Function: Get data from a specific sheet in the Excel file
Parameters:
fileAbsolutePath: Absolute path of the Excel file
sheetName: Name of the sheet to read
headerRow: Header row number (default: 1)
dataStartRow: Data start row number (default: 2)
readSheetData
Function: Get data from all sheets in the Excel file
Parameters:
fileAbsolutePath: Absolute path of the Excel file
headerRow: Header row number (default: 1)
dataStartRow: Data start row number (default: 2)
Write Tools
writeDataBySheetName
Function: Write data to a specific sheet in the Excel file (overwrites if sheet exists)
Parameters:
fileAbsolutePath: Absolute path of the Excel file
sheetName: Name of the sheet to write
data: Array of data to write
writeSheetData
Function: Create a new Excel file with provided data
Parameters:
fileAbsolutePath: Absolute path for the new Excel file
data: Object containing multiple sheet data
Cache Tools
clearFileCache
Function: Clear cached data for the specified Excel file
Parameters:
fileAbsolutePath: Absolute path of the Excel file to clear from cache
Configuration
Environment Variables
LOG_PATH: Log files storage pathOptional
Default: 'logs' folder under application root directory
CACHE_MAX_AGE: Cache expiration time (hours)Optional
Default: 1
CACHE_CLEANUP_INTERVAL: Cache cleanup interval (hours)Optional
Default: 4
LOG_RETENTION_DAYS: Log retention daysOptional
Default: 7
LOG_CLEANUP_INTERVAL: Log cleanup interval (hours)Optional
Default: 24
Default Configuration
Cache Configuration
Cache expiration time: 1 hour
Cache cleanup interval: 4 hours
Log Configuration
Log retention days: 7 days
Cleanup interval: 24 hours
Dependencies
@modelcontextprotocol/sdk: ^1.7.0
xlsx: ^0.18.5
typescript: ^5.8.2
Development Dependencies
@types/node: ^22.13.10
nodemon: ^3.1.9
ts-node: ^10.9.2
License
This project is licensed under the MIT License. This means you are free to:
Use the software for commercial or non-commercial purposes
Modify the source code
Distribute original or modified code Requirements:
Retain the original copyright notice
No liability can be claimed against the authors for software use For detailed license information,please see the LICENSE file.
Resources
Looking for Admin?
Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.
Appeared in Searches
- A server for finding information about Excel
- Information about Microsoft Excel or general excel-related content
- Excel and Visual Basic permissions for reading, writing, updating, and deleting data in spreadsheets
- How to Read an Excel File
- Exploring and Analyzing CSV Data with Statistics, Filters, and Aggregation