Prototipo · Versión preliminar: todos los servidores del registro oficial, sincronizados cada 30 minutos. Las reseñas y las cuentas llegarán en una etapa posterior.
PopNx MCPServidores MCP para quienes usan IA · explicados con palabras sencillas

MCP Server Spreadsheet

de marekrostversión 0.3.3i★ –iSe ejecuta en tu computadora
Nombre en el registroio.github.marekrost/mcp-server-spreadsheet

Instalar

Resumen

Descripción del creador (original en inglés)

MCP server for spreadsheet files (.xlsx, .csv, .ods) - cell-level ops + DuckDB SQL engine.

Los tres pilares de PopNx MCP

Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.

Qué puedes hacer con él

Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.

  • Conexión: Se ejecuta en tu computadora
  • Transporte: stdio
  • Categoría: Documentos, hojas de cálculo y oficina

Instalación

Elige la app de IA que usas y copia la configuración.

Antes de instalar

Necesitas

  • PyPIuv de Python instalado (para el comando uvx)

¿Qué app usas?

Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.

Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json

{
  "mcpServers": {
    "spreadsheet": {
      "command": "uvx",
      "args": [
        "mcp-server-spreadsheet"
      ],
      "env": {
        "MCP_SPREADSHEET_ROOT": "your-value"
      }
    }
  }
}

Ejecuta esto en tu terminal

claude mcp add spreadsheet --env MCP_SPREADSHEET_ROOT=your-value -- uvx mcp-server-spreadsheet

Completa los valores vacíos antes de ejecutarlo.

Abrir en Cursor

O copia la configuración tú

Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json

{
  "mcpServers": {
    "spreadsheet": {
      "command": "uvx",
      "args": [
        "mcp-server-spreadsheet"
      ],
      "env": {
        "MCP_SPREADSHEET_ROOT": "your-value"
      }
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Abrir en VS Code

O copia la configuración tú

Pégalo en .vscode/mcp.json de tu proyecto

{
  "servers": {
    "spreadsheet": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "mcp-server-spreadsheet"
      ],
      "env": {
        "MCP_SPREADSHEET_ROOT": "your-value"
      }
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.

Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.

Valores que debes completar

  • MCP_SPREADSHEET_ROOT env
    Optional. Absolute path to a directory; all tool path arguments are restricted to this tree. Unset = no restriction.

Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.

Qué puede hacer

Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.

Revisiones básicasi

Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 6 nov 2026

  • ✓ Superada

    El creador coincide con el repo

    El nombre en el registro se verificó con la cuenta de GitHub marekrost, dueña del repo

  • … Aún sin revisar

    Sigue en mantenimiento

    Todavía no hemos leído este repo en GitHub

  • … Aún sin revisar

    Tiene licencia

    Todavía no hemos leído este repo en GitHub

  • – No aplica

    El endpoint responde

    Este se ejecuta en tu computadora; no hay endpoint en internet

  • – No aplica

    Inicio de sesión con OAuth

    Se ejecuta en tu computadora y usa ajustes locales en su lugar

  • … Aún sin revisar

    Sin instrucciones ocultas en las descripciones de herramientas

    Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet

Comparado con otros en Documentos, hojas de cálculo y oficinai

  • Más estrellas que el 0% de los otros 2174 servidores de esta categoría
  • Publicado en el registro más recientemente que el 25% de los otros 2174 servidores de esta categoría
  • Revisiones básicas iguales o mejores que el 100% de los otros 2174 servidores de esta categoría

Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.

Preguntas frecuentes

¿Es seguro MCP Server Spreadsheet?

Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.

¿Qué claves o códigos necesita?

El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.

¿Se ejecuta en mi computadora o en la nube?

Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).

¿Sigue en mantenimiento?

El repo de GitHub cambió por última vez –, y la última versión (0.3.3) llegó al registro hace 3 meses.

¿Qué apps pueden usarlo?

Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv) en tu computadora.

¿Qué puedo usar en su lugar?

En la misma categoría: Agent-Native Calendar, Excel MCP Server, MCP Server for Excel

Alternativas

Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.

Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi

Agent-Native Google Calendar - manage events, sync, and public booking

Se ejecuta en la nube★ 7620MITActualizado hace 2 meses
Instalar

Excel MCP Server

de haris-musa

Create and edit Excel files with AI: charts, PivotTables, formulas. No Excel needed.

Se ejecuta en tu computadora★ 4276MITActualizado hace 6 días
Instalar

Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.

Se ejecuta en tu computadora★ 847MITActualizado hace 3 días
Instalar

README del creador

Abrir el README

Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.

mcp-server-spreadsheet

mcp-name: io.github.marekrost/mcp-server-spreadsheet

Data-first MCP server for reading and writing spreadsheet files (.xlsx, .csv, .ods).

Key features

  • Multi-format — works with Excel (.xlsx), CSV (.csv), and OpenDocument (.ods) files through a unified tool interface.
  • Dual mode — cell-level workbook operations and a DuckDB-powered SQL query engine, interleaved freely on the same file.
  • Workbook essentials — worksheets, rows, columns, cells, search.
  • Data-only — preserves existing formatting but only reads and writes values.
  • Stateless — every call specifies file and sheet explicitly; no handles or sessions.
  • Atomic saves — writes go to a temp file, then os.replace() into the target path.
  • Type coercion on write — numeric strings become numbers, everything else is text.
  • SQL across sheets — JOINs, GROUP BY, aggregates, subqueries via in-memory DuckDB; mutations write back to the file.
  • CSV as single-sheet workbook — CSV files are treated as a workbook with one sheet named default.

Requirements

  • Python 3.10+

Installation

From PyPI (recommended)

No local checkout needed — just configure your MCP client (see below).

From source (for development)
git clone https://github.com/marekrost/mcp-server-spreadsheet.git

cd mcp-server-spreadsheet uv sync

Usage

Claude Desktop

Add to your claude_desktop_config.json:

Using PyPI (recommended):

{

"mcpServers": { "mcp-server-spreadsheet": { "command": "uvx", "args": ["mcp-server-spreadsheet"] } } }

Using local source:

{

"mcpServers": { "mcp-server-spreadsheet": { "command": "uv", "args": ["run", "--directory", "/path/to/mcp-server-spreadsheet", "main.py"] } } }

Claude Code

Add to your .mcp.json:

Using PyPI (recommended):

{

"mcpServers": { "mcp-server-spreadsheet": { "command": "uvx", "args": ["mcp-server-spreadsheet"] } } }

Using local source:

{

"mcpServers": { "mcp-server-spreadsheet": { "command": "uv", "args": ["run", "--directory", "/path/to/mcp-server-spreadsheet", "main.py"] } } }

Standalone (stdio transport)
# PyPI

uvx mcp-server-spreadsheet

Local source

uv run main.py

Restricting file access to a directory (optional)

Set MCP_SPREADSHEET_ROOT to confine all path arguments to a single directory tree. Paths outside it are rejected with a clear error returned to the agent.

{

"mcpServers": { "mcp-server-spreadsheet": { "command": "uvx", "args": ["mcp-server-spreadsheet"], "env": { "MCP_SPREADSHEET_ROOT": "/home/me/spreadsheets" } } } }

Unset (the default), any path the server process can access is allowed.

Format notes

FormatSheetsFormulasTypes
.xlsxMultiplePreserved as stringsNative (int, float, date, bool)
.odsMultipleNot preservedNative (int, float, date, bool)
.csvSingle (default)N/AInferred on load (int, float, text)

Sheet management tools (add_sheet, delete_sheet, copy_sheet) raise an error for CSV files.

Tools

Workbook Operations
ToolDescription
list_workbooksList all spreadsheet files in a directory (non-recursive)
create_workbook_fileCreate a new empty spreadsheet file (format by extension)
copy_workbookCopy an existing file to a new path
Sheet Operations
ToolDescription
list_sheetsList all sheet names in a workbook
add_sheetAdd a new sheet (optional name and position)
rename_sheetRename an existing sheet
delete_sheetDelete a sheet by name
copy_sheetDuplicate a sheet within a workbook (optional new name and position)
Reading Data
ToolDescription
read_sheetRead entire sheet as rows (optional row/column bounds)
read_cellRead a single cell value, e.g. B3
read_rangeRead a rectangular range, e.g. A1:D10
get_sheet_dimensionsGet row and column count of the used range
Writing Data
ToolDescription
write_cellWrite a value to a single cell
write_rangeWrite a 2D array starting at a given cell
append_rowsAppend rows after the last used row
insert_rowsInsert blank or pre-filled rows at a position (shifts rows down)
delete_rowsDelete rows by index (shifts rows up)
clear_rangeClear values in a range without removing rows/columns
copy_rangeCopy a block of cells to another location (optionally to a different sheet)
Column Operations
ToolDescription
insert_columnsInsert blank columns at a position
delete_columnsDelete columns by index
Search
ToolDescription
search_sheetSearch for a value or regex pattern, returns matching cell references
Table Mode (SQL)
ToolDescription
describe_tableInspect column names, inferred types, row count, and sample values
sql_queryExecute a read-only SQL SELECT (supports JOINs across sheets, GROUP BY, aggregates, subqueries)
sql_executeExecute INSERT INTO, UPDATE, or DELETE FROM — writes changes back to the file

SQL examples:

-- Filter and sort

SELECT name, revenue FROM Sales WHERE status = 'Active' ORDER BY revenue DESC LIMIT 20

-- Cross-sheet JOIN SELECT o.order_id, c.name FROM Orders o JOIN Customers c ON o.customer_id = c.id

-- Aggregate SELECT department, COUNT(*) AS n, AVG(salary) AS avg FROM Employees GROUP BY department

-- Mutate UPDATE Sales SET status = 'Closed' WHERE quarter = 'Q1' AND revenue < 1000 DELETE FROM Logs WHERE date < '2024-01-01'

Sheet names with spaces must be quoted: SELECT * FROM "Q1 Sales".

Sheets whose table doesn't start at row 1

All three SQL tools accept header_row and data_start_row. Each can be an int (applied to every sheet) or a {sheet_name: row} mapping (sheets not listed fall back to the default). Use header_row when column titles live below row 1, and data_start_row when extra rows (e.g. a units row) sit between the header and the data.

# Header on row 3, data follows immediately

sql_query(file, 'SELECT * FROM "People"', header_row=3)

Mixed workbook: People headers at row 3, Orders header at row 1 with a

units row at row 2.

sql_query( file, 'SELECT * FROM "Orders" o JOIN "People" p ON o.name = p.name', header_row={"People": 3, "Orders": 1}, data_start_row={"Orders": 3}, )

sql_execute preserves rows above header_row when writing changes back.

Running tests

uv sync --group dev

uv run pytest

Every tool is exercised against .xlsx, .csv, and .ods fixtures generated into a temp directory.

Common Parameters

Every sheet-level tool accepts:

ParameterRequiredDescription
fileyesPath to the spreadsheet file (.xlsx, .csv, or .ods)
sheetnoSheet name. Defaults to the first sheet in the workbook

All row/column indices are 1-based. Cell references use A1 notation (A1, $B$2).

Pregunta a PopNx