spreadsheet-builder
Qué hace este MCP
Loads, inspects, filters, edits, analyzes, and converts XLSX and CSV files.
Herramientas
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['key'], 'properties': {'key': {'type': 'string', 'description': 'License key from checkout, MCPL1.<payload>.<signature>'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['path', 'name'], 'properties': {'name': {'type': 'string', 'description': 'Name of the new column. It must not already exist on the sheet'}, 'path': {'type': 'string', 'description': 'Path to the source .xlsx/.xlsm/.xlsb/.ods/.csv/.tsv file (~ is expanded); it is never modified'}, 'sheet': {'type': 'string', 'description': 'Sheet name; default is the first sheet'}, 'values': {'type': 'array', 'description': 'Explicit values, one per data row, instead of a formula. Missing entries are left blank'}, 'formula': {'type': 'string', 'description': 'Expression over the columns of each row, in the same expression language as sheet_query, e.g. "[Qty] * [Unit Price]" or \'[Country] = "PL"\'. Give either formula or values'}, 'decimals': {'type': 'integer', 'maximum': 10, 'minimum': 0, 'description': 'Round numeric formula results to this many decimals. Default: the widest decimal count of the columns the formula reads, capped at 2 when they all hold 2 or fewer (money in, money out); otherwise no rounding beyond float cleanup'}, 'out_path': {'type': 'string', 'description': 'Output file; default <source>-plus-<column>.<same ext>. The source file is left untouched unless this points at it'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['path', 'to'], 'properties': {'to': {'enum': ['csv', 'xlsx', 'json'], 'type': 'string', 'description': 'Target format; the default out_path takes this as its extension'}, 'path': {'type': 'string', 'description': 'Path to the source .xlsx/.xlsm/.xlsb/.ods/.csv/.tsv file (~ is expanded); it is never modified'}, 'sheet': {'type': 'string', 'description': 'Sheet to convert; default is the first sheet. Only that one sheet is written'}, 'out_path': {'type': 'string', 'description': 'Where to write; default is the source name with the new extension, next to the source. It must differ from the source path'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['path', 'text'], 'properties': {'path': {'type': 'string', 'description': 'Path to the .xlsx/.xlsm/.xlsb/.ods/.csv/.tsv file (~ is expanded)'}, 'text': {'type': 'string', 'description': 'Text to look for; matched case insensitively anywhere inside a cell. Up to 200 hits are returned'}, 'sheet': {'type': 'string', 'description': 'Sheet name; default searches every sheet'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['path'], 'properties': {'path': {'type': 'string', 'description': 'Path to the .xlsx/.xlsm/.xlsb/.ods/.csv/.tsv file (~ is expanded)'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['name'], 'properties': {'csv': {'type': 'string', 'description': 'Raw CSV or TSV text, including the header row'}, 'url': {'type': 'string', 'description': "url: fetch a public file instead of pasting base64 (recommended above about 10 KB). Public http(s) only; private, link-local and this endpoint's own zone are refused"}, 'name': {'type': 'string', 'maxLength': 70, 'minLength': 1, 'description': 'Name to refer to this data by: 1-64 characters of letters, digits, underscore or dash, e.g. "sales" or "sales.csv"'}, 'xlsx_base64': {'type': 'string', 'description': 'Base64-encoded .xlsx workbook'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['path'], 'properties': {'as': {'enum': ['table', 'json', 'csv'], 'type': 'string'}, 'path': {'type': 'string', 'description': 'Path to the .xlsx or .csv file'}, 'sort': {'type': 'object', 'required': ['col'], 'properties': {'col': {'type': 'string'}, 'dir': {'enum': ['asc', 'desc'], 'type': 'string'}}, 'description': 'Sort column; may be an aggregate alias such as total_units', 'additionalProperties': False}, 'limit': {'type': 'integer', 'maximum': 100000, 'minimum': 1, 'description': 'Default 100'}, 'sheet': {'type': 'string'}, 'where': {'type': 'string', 'description': 'Filter, e.g. [Qty] >= 5 AND ([Status] = "open" OR [Status] = "new")'}, 'select': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Column names to return; default all (with group_by, defaults to the group columns plus the aggregates)'}, 'group_by': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Group rows by these columns before aggregating, e.g. ["Rep"] or ["Region","Rep"]'}, 'aggregate': {'type': 'array', 'items': {'type': 'object', 'required': ['col', 'fn'], 'properties': {'as': {'type': 'string', 'description': 'Output name for this aggregate, e.g. total_units'}, 'fn': {'enum': ['sum', 'count', 'avg', 'min', 'max'], 'type': 'string', 'description': 'sum | count | avg | min | max'}, 'col': {'type': 'string', 'description': 'Column to aggregate, or "*" to count rows'}}, 'additionalProperties': False}, 'description': 'Aggregates per group, e.g. [{"col":"Units","fn":"sum","as":"total_units"}]. Defaults to a row count when group_by is given.'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['path'], 'properties': {'as': {'enum': ['table', 'json', 'csv'], 'type': 'string', 'description': 'Output format, default table'}, 'path': {'type': 'string'}, 'limit': {'type': 'integer', 'maximum': 100000, 'minimum': 1, 'description': 'Rows to return, default 100'}, 'range': {'type': 'string', 'description': 'A1 range such as A1:D50; overrides limit/offset'}, 'sheet': {'type': 'string', 'description': 'Sheet name; defaults to the first sheet'}, 'offset': {'type': 'integer', 'minimum': 0, 'description': 'Rows to skip, default 0'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['path'], 'properties': {'path': {'type': 'string'}, 'sheet': {'type': 'string'}, 'columns': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Limit to these columns; default all'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 70, 'minLength': 1}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['path', 'rows', 'mode'], 'properties': {'mode': {'enum': ['new_file', 'append', 'overwrite'], 'type': 'string', 'description': 'new_file writes a brand new file and refuses to clobber an existing one; append adds the rows under the existing data; overwrite replaces the file contents'}, 'path': {'type': 'string', 'description': 'Source file for append/overwrite, or the intended file for new_file (~ is expanded)'}, 'rows': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'additionalProperties': {}}, {'type': 'array'}]}, 'description': 'Array of objects, whose keys become the headers, or an array of arrays with the header row first'}, 'sheet': {'type': 'string', 'description': 'Sheet to write; default is the first sheet of the source, or "Sheet1" for a new file. Other sheets of an existing workbook are kept unchanged'}, 'out_path': {'type': 'string', 'description': 'Where to write; default is a new file next to the source for new_file, or the source itself for append/overwrite. The output format follows this extension: .xlsx, .csv, .tsv or .json. An extension is required'}}, 'additionalProperties': False}
Cambios recientes en herramientas
Servidores MCP similares
AIOProductOS MCP
Combines customer records, support conversations, feedback, product analytics, roadmaps, tasks, experiments, releases, and retent…
Wakatime
Provides WakaTime coding-activity data, including durations, projects, commits, goals, heartbeats, editor usage, leaders, and use…
Timeapi Io
Provides timezone and date utilities, along with routed access to structured research and data sources.
roadflow
Creates and shares roadmap graphs, and manages structured model registers containing parameters, observations, formulas, dictiona…
DeskMonitor
Supports workforce attendance, timesheets, employee management, team hours, productivity reporting, workload alerts, approvals, a…
netcafe-docs
Extracts and validates data from PDFs, invoices, bank statements, tables, and CSVs; also supports web research, document conversi…
SumOffice — real Word and Excel for agents
Reads and edits Word documents and Excel workbooks while preserving document structure, formulas, macros, comments, tracked chang…
Ouro Tools
Creates charts and PDFs, extracts tables and webpage text, manages forms and feeds, and provides temporary document and webhook s…