返回市场
Excel读取器-MCP

Excel读取器-MCP

作者:ArchimedesCrypto26 星标更新:2025-07-29

项目介绍

MseeP.ai 安全评估徽章

MCP Excel Reader

smithery 徽章 这是一个用于读取Excel文件的模型上下文协议(MCP)服务器,支持自动分块和分页。该工具使用SheetJS和TypeScript构建,通过自动将大型Excel文件分割成可管理的小块来帮助您高效处理这些文件。

<a href="https://glama.ai/mcp/servers/jr2ggpdk3a"><img width="380" height="200" src="https://gips0.baidu.com/it/u=1326553573,2653715280&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Excel Reader MCP 服务器" /></a>

功能

  • 📊 自动大小限制读取Excel文件(.xlsx, .xls)
  • 🔄 大数据集的自动分块
  • 📑 工作表选择和行分页
  • 📅 正确处理日期
  • ⚡ 优化处理大型文件
  • 🛡️ 错误处理和验证

安装

通过 Smithery 安装

要通过 Smithery 自动安装 Excel Reader for Claude Desktop:

npx -y @smithery/cli install @ArchimedesCrypto/excel-reader-mcp-chunked --client claude

作为 MCP 服务器

  1. 全局安装:
npm install -g @archimdescrypto/excel-reader
  1. 添加到您的 MCP 设置文件(通常位于 ~/.config/claude/settings.json 或类似位置):
{
  "mcpServers": {
    "excel-reader": {
      "command": "excel-reader",
      "env": {}
    }
  }
}

开发用途

  1. 克隆仓库:
git clone https://github.com/ArchimdesCrypto/mcp-excel-reader.git
cd mcp-excel-reader
  1. 安装依赖项:
npm install
  1. 构建项目:
npm run build

使用方法

Excel Reader 提供了一个名为 read_excel 的单一工具,其参数如下:

interface ReadExcelArgs {
  filePath: string;      // Excel 文件路径
  sheetName?: string;    // 可选的工作表名称(默认为第一个工作表)
  startRow?: number;     // 可选的起始行数(用于分页)
  maxRows?: number;      // 可选的最大行数
}

// 响应格式
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[];
    };
  };
}

基本用法

当与 Claude 或其他兼容 MCP 的 AI 一起使用时:

读取位于 path/to/file.xlsx 的 Excel 文件

AI 将使用此工具读取文件,并自动处理大型文件的分块。

功能

  1. 自动分块

    • 自动将大型文件分割成可管理的小块
    • 默认分块大小为 100KB
    • 提供分页元数据
  2. 工作表选择

    • 按名称读取特定的工作表
    • 如果未指定,默认为第一个工作表
  3. 行分页

    • 使用 startRow 和 maxRows 控制要读取的行
    • 获取下一区块信息以实现连续读取
  4. 错误处理

    • 验证文件存在和格式
    • 提供清晰的错误消息
    • 优雅地处理格式不正确的 Excel 文件

扩展功能使用 SheetJS 特性

Excel Reader 是基于 SheetJS 构建的,可以扩展其强大的特性:

可用扩展

  1. 公式处理

    // 启用公式解析
    const wb = XLSX.read(data, {
      cellFormula: true,
      cellNF: true
    });
    
  2. 单元格格式化

    // 访问单元格样式和格式
    const styles = Object.keys(worksheet)
      .filter(key => key[0] !== '!')
      .map(key => ({
        cell: key,
        style: worksheet[key].s
      }));
    
  3. 数据验证

    // 访问数据验证规则
    const validation = worksheet['!dataValidation'];
    
  4. 工作表特性

    • 合并单元格:worksheet['!merges']
    • 隐藏行/列:worksheet['!rows'], worksheet['!cols']
    • 工作表保护:worksheet['!protect']

更多特性和详细文档,请访问 SheetJS 文档

贡献

  1. 分叉仓库
  2. 创建您的功能分支 (git checkout -b feature/amazing-feature)
  3. 提交更改 (git commit -m '添加一些惊人的功能')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 打开一个拉取请求

许可证

本项目采用 MIT 许可证 - 详情见 LICENSE 文件。

致谢