/ Directorio / Playground / excel-mcp-server
● Comunidad haris-musa ⚡ Instantáneo

excel-mcp-server

por haris-musa · haris-musa/excel-mcp-server

Crea, lee y edita archivos .xlsx reales desde el chat — fórmulas, tablas, gráficos, tablas dinámicas, formato condicional.

excel-mcp-server (haris-musa) es un MCP en Python que manipula libros de Excel mediante openpyxl. Funciona con archivos .xlsx locales o como servicio HTTP remoto. Admite fórmulas, generación de gráficos, tablas dinámicas, formato y validación de datos.

Por qué usarlo

Características clave

Demo en vivo

Cómo se ve en la práctica

excel.replay ▶ listo
0/0

Instalar

Elige tu cliente

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "excel": {
      "command": "uvx",
      "args": [
        "excel-mcp-server"
      ],
      "_inferred": true
    }
  }
}

Abre Claude Desktop → Settings → Developer → Edit Config. Reinicia después de guardar.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "excel": {
      "command": "uvx",
      "args": [
        "excel-mcp-server"
      ],
      "_inferred": true
    }
  }
}

Cursor usa el mismo esquema mcpServers que Claude Desktop. La configuración del proyecto prevalece sobre la global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "excel": {
      "command": "uvx",
      "args": [
        "excel-mcp-server"
      ],
      "_inferred": true
    }
  }
}

Haz clic en el icono MCP Servers de la barra lateral de Cline y luego en "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "excel": {
      "command": "uvx",
      "args": [
        "excel-mcp-server"
      ],
      "_inferred": true
    }
  }
}

Mismo formato que Claude Desktop. Reinicia Windsurf para aplicar.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "excel",
      "command": "uvx",
      "args": [
        "excel-mcp-server"
      ]
    }
  ]
}

Continue usa un array de objetos de servidor en lugar de un mapa.

~/.config/zed/settings.json
{
  "context_servers": {
    "excel": {
      "command": {
        "path": "uvx",
        "args": [
          "excel-mcp-server"
        ]
      }
    }
  }
}

Añádelo a context_servers. Zed recarga en caliente al guardar.

claude mcp add excel -- uvx excel-mcp-server

Un solo comando. Verifica con claude mcp list. Quita con claude mcp remove.

Casos de uso

Usos del mundo real: excel-mcp-server

Cómo generar un informe mensual en Excel desde un prompt

👤 Operaciones, finanzas, cualquiera que envíe Excel a interesados no técnicos ⏱ ~20 min intermediate

Cuándo usarlo: Cada fin de mes cuando actualizas 'la hoja que todos piden'.

Requisitos previos
  • uv instalado — curl -LsSf https://astral.sh/uv/install.sh | sh
  • Una fuente de verdad (CSV, consulta de BD o archivo del mes anterior) — Exporta a CSV o combina con postgres MCP
Flujo
  1. Crear el libro de trabajo
    Crea /reports/2026-04.xlsx con pestañas 'Summary', 'Revenue', 'Costs', 'Charts'.✓ Copiado
    → Archivo creado, hojas existen
  2. Rellenar datos
    Rellena 'Revenue' desde /data/apr-revenue.csv; agrega una fila total con fórmulas SUM.✓ Copiado
    → Filas + totales presentes
  3. Agregar gráficos
    En la pestaña 'Charts' agrega un gráfico de línea del revenue diario de 'Revenue' A2:B31 titulado 'April Revenue'.✓ Copiado
    → Gráfico visible al abrir en Excel
  4. Aplicar formato
    En 'Summary', pon en negrita los encabezados, aplica separadores de miles a la moneda y aplica formato condicional a cualquier valor en rojo (negativo).✓ Copiado
    → Archivo formateado profesionalmente

Resultado: Un .xlsx listo para revisar con fórmulas activas y gráficos.

Errores comunes
  • Pegar 100k filas mediante prompt agota la ventana de contexto — Haz que el MCP lea el CSV directamente desde el disco en lugar de pegar valores
  • Las tablas dinámicas escritas por openpyxl no se actualizan automáticamente al abrir en algunas versiones de Excel — Indica a los usuarios que hagan clic derecho Actualizar; o usa un resumen basado en fórmulas en su lugar
Combinar con: postgres · filesystem

Cómo extraer tablas de un deck de Excel a markdown

👤 Ingenieros que convierten hojas de cálculo financieras en documentación ⏱ ~10 min beginner

Cuándo usarlo: Un interesado te envía un libro de trabajo y lo necesitas en una wiki.

Flujo
  1. Enumerar hojas
    Abre /inbox/Q1-plan.xlsx y lista hojas + dimensiones.✓ Copiado
    → Índice de hojas
  2. Extraer cada una como markdown
    Para cada hoja, lee el rango utilizado y renderiza como tabla markdown.✓ Copiado
    → Bloque markdown listo para pegar

Resultado: Tablas listas para wiki.

Errores comunes
  • Las celdas combinadas arruinan la representación markdown — Descombia antes de exportar o maneja explícitamente las regiones combinadas
Combinar con: markdownify · notion

Cómo limpiar un archivo Excel desordenado en un paso

👤 Especialistas en limpieza de datos ⏱ ~15 min intermediate

Cuándo usarlo: Un socio envía una hoja con fechas inconsistentes, espacios en blanco al final y encabezados duplicados.

Flujo
  1. Perfilar los problemas
    Audita /inbox/vendors.xlsx — columnas con tipos mixtos, espacios en blanco, filas duplicadas.✓ Copiado
    → Informe de problemas
  2. Aplicar correcciones
    Elimina espacios en blanco, analiza la columna E como fechas en ISO, elimina filas completamente duplicadas. Guarda en /cleaned/vendors.xlsx.✓ Copiado
    → Archivo limpio guardado

Resultado: Un libro de trabajo limpio listo para ingesta.

Errores comunes
  • 'Corregir' fechas que eran intencionalmente texto pierde significado — Confirma con el propietario antes de coerciones agresivas
Combinar con: postgres

Combinaciones

Combínalo con otros MCPs para multiplicar por 10

excel + postgres

Consulta la BD y escribe el resultado en Excel para los interesados

Ejecuta SELECT * FROM monthly_revenue WHERE month = '2026-04' y escribe el resultado en /reports/apr.xlsx con un gráfico.✓ Copiado
excel + filesystem

Procesa en lote cada xlsx en una carpeta

Para cada archivo en /inbox/vendors/, unifica los encabezados a {vendor,sku,qty,price} y escribe en /cleaned/.✓ Copiado
excel + markdownify

Convierte tablas xlsx a documentos markdown

Extrae cada hoja de /inbox/plan.xlsx a secciones markdown y escribe /docs/plan.md.✓ Copiado

Herramientas

Lo que expone este MCP

HerramientaEntradasCuándo llamarCoste
create_workbook path: str Iniciar un nuevo .xlsx free
create_worksheet path, name Agregar una pestaña free
write_data_to_excel path, sheet, start_cell, data: 2d array Rellenar un rango free
read_data_from_excel path, sheet, range Extraer valores free
apply_formula path, sheet, cell, formula Agregar una fórmula free
create_chart path, sheet, chart_type, range, title Insertar un gráfico free
create_pivot_table path, source, rows, cols, values Resumir datos free
format_range path, sheet, range, styles Aplicar estilos free
apply_conditional_formatting path, sheet, range, rule Codificar por color celdas free

Coste y límites

Lo que cuesta ejecutarlo

Cuota de API
Ninguno — todo local
Tokens por llamada
Depende de cuántos datos fluyen a través del prompt; prefiere operaciones de ruta de archivo
Monetario
Gratuito (MIT)
Consejo
Lee rangos, no hojas completas, cuando un archivo tiene 100k+ filas.

Seguridad

Permisos, secretos, alcance

Ámbitos mínimos: Lectura/escritura del sistema de archivos en la carpeta que contiene los libros de trabajo
Almacenamiento de credenciales: Ninguno
Salida de datos: Solo E/S de archivos locales; los datos solo salen de tu máquina a través de tu proveedor LLM
No conceder nunca: Acceso de escritura fuera de una carpeta aislada cuando ejecutas prompts no confiables

Resolución de problemas

Errores comunes y soluciones

Permiso denegado al escribir archivo

Otro programa tiene el archivo abierto (a menudo Excel mismo). Ciérralo e intenta de nuevo.

Verificar: lsof path/to/file.xlsx
Fórmula almacenada como texto

Prefija cadenas que comienzan con '=' usando apply_formula, no write_data_to_excel.

El gráfico no se representa en Excel

Verifica que el rango de datos cubra las columnas de origen con encabezados; Excel necesita 2+ filas.

Archivo guardado pero Excel dice 'corrupto'

Generalmente mezclar write_data y fórmulas en la misma celda. Recrea el archivo, construye de abajo hacia arriba.

Alternativas

excel-mcp-server vs otros

AlternativaCuándo usarlaContrapartida
Google Sheets vía google-workspace MCPQuieres hojas en la nube colaborativas, no .xlsx localesRequiere OAuth; no es un reemplazo para xlsx sin conexión
LibreOffice MCP sin interfazNecesitas ejecución de macros o conversión a PDFInstalación pesada; más lento

Más

Recursos

📖 Lee el README oficial en GitHub

🐙 Ver issues abiertas

🔍 Ver todos los 400+ servidores MCP y Skills