MCP Excel Reader

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Lector de Excel MCP

Un servidor de Protocolo de Contexto de Modelo (MCP) para leer archivos de Excel con fragmentación y paginación automáticas. Desarrollada con SheetJS y TypeScript, esta herramienta le ayuda a gestionar archivos grandes de Excel de forma eficiente, dividiéndolos automáticamente en fragmentos manejables.

Características

  • 📊 Leer archivos Excel (.xlsx, .xls) con límites de tamaño automáticos
  • 🔄 Fragmentación automática para grandes conjuntos de datos
  • 📑 Selección de hojas y paginación de filas
  • 📅 Manejo adecuado de fechas
  • ⚡ Optimizado para archivos grandes
  • 🛡️ Manejo de errores y validación

Instalación

Instalación mediante herrería

Para instalar Excel Reader para Claude Desktop automáticamente a través de Smithery :

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

Como servidor MCP

  1. Instalar globalmente:
npm install -g @archimdescrypto/excel-reader
  1. Agregue a su archivo de configuración de MCP (generalmente en ~/.config/claude/settings.json o equivalente):
{ "mcpServers": { "excel-reader": { "command": "excel-reader", "env": {} } } }

Para el desarrollo

  1. Clonar el repositorio:
git clone https://github.com/ArchimdesCrypto/mcp-excel-reader.git cd mcp-excel-reader
  1. Instalar dependencias:
npm install
  1. Construir el proyecto:
npm run build

Uso

Uso

El lector de Excel proporciona una única herramienta read_excel con los siguientes parámetros:

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[]; }; }; }

Uso básico

Cuando se utiliza con Claude u otra IA compatible con MCP:

Read the Excel file at path/to/file.xlsx

La IA utilizará la herramienta para leer el archivo y gestionará automáticamente la fragmentación de archivos grandes.

Características

  1. Fragmentación automática
    • Divide automáticamente archivos grandes en fragmentos manejables
    • Tamaño de fragmento predeterminado de 100 KB
    • Proporciona metadatos para la paginación.
  2. Selección de hojas
    • Leer hojas específicas por nombre
    • El valor predeterminado es la primera hoja si no se especifica
  3. Paginación por filas
    • Controle qué filas leer con startRow y maxRows
    • Obtenga información del siguiente fragmento para una lectura continua
  4. Manejo de errores
    • Valida la existencia y el formato del archivo.
    • Proporciona mensajes de error claros
    • Maneja archivos de Excel malformados con elegancia

Ampliación con funciones de SheetJS

El lector de Excel está basado en SheetJS y se puede ampliar con sus potentes funciones:

Extensiones disponibles

  1. Manejo de fórmulas
    // Enable formula parsing const wb = XLSX.read(data, { cellFormula: true, cellNF: true });
  2. Formato de celda
    // Access cell styles and formatting const styles = Object.keys(worksheet) .filter(key => key[0] !== '!') .map(key => ({ cell: key, style: worksheet[key].s }));
  3. Validación de datos
    // Access data validation rules const validation = worksheet['!dataValidation'];
  4. Características de la hoja
    • Celdas fusionadas: worksheet['!merges']
    • Filas/columnas ocultas: worksheet['!rows'] , worksheet['!cols']
    • Protección de hoja: worksheet['!protect']

Para conocer más funciones y documentación detallada, visita la Documentación de SheetJS .

Contribuyendo

  1. Bifurcar el repositorio
  2. Crea tu rama de funciones ( git checkout -b feature/amazing-feature )
  3. Confirme sus cambios ( git commit -m 'Add some amazing feature' )
  4. Empujar a la rama ( git push origin feature/amazing-feature )
  5. Abrir una solicitud de extracción

Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

Expresiones de gratitud

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Proporciona un manejo eficiente de archivos grandes de Excel a través de la fragmentación y paginación automáticas, utilizando MCP para permitir la lectura fluida de archivos y funciones de administración como selección de hojas y manejo de errores.

  1. Features
    1. Installation
      1. Installing via Smithery
      2. As an MCP Server
      3. For Development
    2. Usage
      1. Usage
        1. Basic Usage
        2. Features
      2. Extending with SheetJS Features
        1. Available Extensions
      3. Contributing
        1. License
          1. Acknowledgments
            ID: jr2ggpdk3a