article
README
🚀 MCP Excel 文件阅读器
MCP Excel 文件阅读器是一个基于 Model Context Protocol (MCP) 的服务器工具,借助 SheetJS 和 TypeScript 构建。它能高效读取 Excel 文件,自动进行分块和分页处理,帮助您轻松应对大型 Excel 文件。
🚀 快速开始
MCP Excel 文件阅读器是一个强大的工具,可帮助您高效处理 Excel 文件。以下是不同场景下的安装和使用方法。
✨ 主要特性
- 📊 支持读取 .xlsx 和 .xls 格式的 Excel 文件
- 🔄 自动分块处理大文件
- 📑 支持工作表选择和行分页
- 📅 正确处理日期格式
- ⚡ 优化以支持大型文件
- 🛡️ 强壮的错误处理和验证
📦 安装指南
使用 Smithery 安装
通过 Smithery 自动安装 Excel Reader for Claude Desktop:
npx -y @smithery/cli install @ArchimedesCrypto/excel-reader-mcp-chunked --client claude
作为 MCP 服务器使用
- 全局安装:
npm install -g @archimdescrypto/excel-reader
- 添加到您的 MCP 设置文件(通常位于
~/.config/claude/settings.json或类似路径):
{
"mcpServers": {
"excel-reader": {
"command": "excel-reader",
"env": {}
}
}
}
开发使用
- 克隆仓库:
git clone https://github.com/ArchimdesCrypto/mcp-excel-reader.git
cd mcp-excel-reader
- 安装依赖项:
npm install
- 启动开发服务器:
npm start
💻 使用示例
基础用法
接口定义
请求参数:
interface ReadExcelRequest {
file: File; // 需要读取的 Excel 文件
sheetName?: string; // 可选:指定需要读取的工作表名称
headers?: boolean; // 可选:是否包含标题行
}
响应格式:
interface ReadExcelResponse {
data: any[][]; // 包含数据的二维数组
headers?: string[]; // 可选:包含标题行的数组
error?: string; // 可选:错误信息(若有)
}
示例代码
import { readExcel } from '@archimdescrypto/excel-reader';
const file = document.getElementById('fileInput') as HTMLInputElement;
const result = await readExcel({
file: file.files[0],
headers: true,
});
if (result.error) {
console.error('读取文件时发生错误:', result.error);
} else {
console.log('数据已成功读取:', result.data);
if (result.headers) {
console.log('标题行:', result.headers);
}
}
📚 详细文档
MCP Excel Reader 基于强大的 SheetJS 库构建,支持以下高级功能:
- 公式处理:直接读取和计算单元格中的公式。
- 单元格样式:保留和操作单元格的格式信息(如字体、颜色等)。
- 数据验证:定义和检查单元格的数据有效性规则。
- 工作表保护:启用或禁用对工作表的编辑保护。
🤝 贡献指南
- 叉仓库
- 创建功能分支 (
git checkout -b feature/amazing-feature) - 提交更改 (
git commit -m 'Add some amazing feature') - 推送到分支 (
git push origin feature/amazing-feature) - 提交拉取请求
📄 许可证
本项目使用 MIT 许可证,具体内容请参阅 LICENSE 文件。
🙏 致谢
- 使用强大的 SheetJS 构建
- 作为 Model Context Protocol 生态系统的一部分
微信扫一扫