MCP Excel Reader
About
Integrates with Excel files to enable efficient processing and analysis of large spreadsheet datasets through automatic chunking and pagination.
Details
- Author
- archimedescrypto
- GitHub stars
- 29
- Downloads
- 436
- Categories
- File Management, Other, Productivity, Developer Tools, Design, AI, Frontend, Infrastructure, Project Management
- Tags
- #file-conversion, #data-analysis, #spreadsheet
Jump to
1. Automatic Chunking
- Automatically splits large files into manageable chunks
- Default chunk size of 100KB
- Provides metadata for pagination
2. Sheet Selection
- Read specific sheets by name
- Defaults to first sheet if not specified
3. Row Pagination
- Control which rows to read with startRow and maxRows
- Get next chunk information for continuous reading
4. Error Handling
- Validates file existence and format
- Provides clear error messages
- Handles malformed Excel files gracefully
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
MCP Excel ReaderCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
The Excel Reader provides a single tool read_excel with the following parameters:
interface ReadExcelArgs {
filePath: string; // Path to Excel file
sheetName?: string; // Optional sheet name (defaults to first sheet)
startRow?: number; // Optional starting row for pagination
maxRows?: number; // Optional maximum rows to read
}
// Response format
interface ExcelResponse {
fileName: string;
totalSheets: number;
currentSheet: {
name: string;
totalRows: number;
totalColumns: number;
chunk: {
rowStart: number;
rowEnd: number;
columns: string[];
data: Record<string, any>[];
};
hasMore: boolean;
nextChunk?: {
rowStart: number;
columns: string[];
};
};
}
To install Excel Reader for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @ArchimedesCrypto/excel-reader-mcp-chunked --client claude
When used with Claude or another MCP-compatible AI:
Read the Excel file at path/to/file.xlsx
The AI will use the tool to read the file, automatically handling chunking for large files.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"mcp excel reader": {
"excel-reader-mcp": {
"command": "npx",
"args": [
"-y",
"@smithery/cli",
"install",
"@ArchimedesCrypto/excel-reader-mcp-chunked",
"--client",
"claude"
]
}
}
}
}
McpServers
{
"excel-reader-mcp": {
"command": "npx",
"args": [
"-y",
"@smithery/cli",
"install",
"@ArchimedesCrypto/excel-reader-mcp-chunked",
"--client",
"claude"
]
}
}
Read large Excel files with automatic chunking and pagination support.
- π Read Excel files (.xlsx, .xls) with automatic size limits
- π Automatic chunking for large datasets
- π Sheet selection and row pagination
- π
Proper date handling
- β‘ Optimized for large files
- π‘οΈ Error handling and validation
To install Excel Reader for Claude Desktop automatically viaSmithery:
npx -y @smithery/cli install @ArchimedesCrypto/excel-reader-mcp-chunked --client claude
npm install -g @archimdescrypto/excel-reader
- Add to your MCP settings file (usually at~/.config/claude/settings.jsonor equivalent):
{ "mcpServers": { "excel-reader": { "command": "excel-reader", "env": {} } } }
git clone https://github.com/ArchimdesCrypto/mcp-excel-reader.git cd mcp-excel-reader
The Excel Reader provides a single toolread_excelwith the following parameters:
interface ReadExcelArgs { filePath: string; // Path to Excel file sheetName?: string; // Optional sheet name (defaults to first sheet) startRow?: number; // Optional starting row for pagination maxRows?: number; // Optional maximum rows to read } // Response format interface ExcelResponse { fileName: string; totalSheets: number; currentSheet: { name: string; totalRows: number; totalColumns: number; chunk: { rowStart: number; rowEnd: number; columns: string[]; data: Record<string, any>[]; }; hasMore: boolean; nextChunk?: { rowStart: number; columns: string[]; }; }; }
When used with Claude or another MCP-compatible AI:
Read the Excel file at path/to/file.xlsx
The AI will use the tool to read the file, automatically handling chunking for large files.
- Automatically splits large files into manageable chunks
- Default chunk size of 100KB
- Provides metadata for pagination
- Read specific sheets by name
- Defaults to first sheet if not specified
- Control which rows to read with startRow and maxRows
- Get next chunk information for continuous reading
- Validates file existence and format
- Provides clear error messages
- Handles malformed Excel files gracefully
The Excel Reader is built on SheetJS and can be extended with its powerful features:
// Enable formula parsing const wb = XLSX.read(data, { cellFormula: true, cellNF: true });
// Access cell styles and formatting const styles = Object.keys(worksheet) .filter(key => key[0] !== '!') .map(key => ({ cell: key, style: worksheet[key].s }));
// Access data validation rules const validation = worksheet['!dataValidation'];
- Merged Cells:worksheet['!merges']
- Hidden Rows/Columns:worksheet['!rows'],worksheet['!cols']
- Sheet Protection:worksheet['!protect']
For more features and detailed documentation, visit theSheetJS Documentation.
- Fork the repository
- Create your feature branch (git checkout -b feature/amazing-feature)
- Commit your changes (git commit -m 'Add some amazing feature')
- Push to the branch (git push origin feature/amazing-feature)
- Open a Pull Request
This project is licensed under the MIT License - see theLICENSEfile for details.
- Built withSheetJS
- Part of theModel Context Protocolecosystem
Read, analyze, and manipulate data in Excel (XLSX, XLS) and CSV files with advanced filtering and analytics.
Interact with VisiData, a terminal spreadsheet multitool for discovering and arranging tabular data in various formats like CSV, JSON, and Excel.
Analyze and extract information from DLIS (Digital Log Interchange Standard) files, including channel data and metadata.
Read and analyze Excel (.xlsx) and CSV (.csv) files with scalable, chunked, and column-specific data access, ideal for large datasets.
An MCP server for manipulating and managing Excel files.
Convert various file formats for documents and images, such as DOCX, PDF, CSV, and more.
An MCP server that wraps the OpenPyXL library, enabling clients to retrieve data from Excel files.
Rust-powered PDF toolkit over MCP: create, read, and analyze PDFs; extract text and entities for RAG; convert to Markdown; split/merge/rotate/reorder pages; manage form fields and annotations; encrypt documents. Runs locally via uvx oxidize-mcp.
A server for AI agents to selectively process and extract content from PDF documents.
Deterministic Korean Saju / Chinese BaZi Four Pillars MCP server β Heavenly Stems, Earthly Branches, Day Master, five elements, and 0-100 compatibility. No AI, no API key.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



