Skip to main content
Glama

mint utilities

CSV, TSV, Excel and JSON converter

tabular_convert
Read-onlyIdempotent

Convert tables between CSV, TSV, XLSX and JSON with format, delimiter and encoding detection, header control and exact number and date handling. Cost in credits: 1 credit; 2 credits when the output is xlsx. File input (file): base64 string, data: URI or {"url": "https://..."}. Output: a file (text/csv | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet | application/json) returned inline, at most 1 MiB. The converted table. meta: {rows, cols, from, to, sheet?, sheets?, encoding?, delimiter?}.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toYesTarget format.
fileYesThe table: base64 string (or data: URI) or {"url": "https://..."}. Up to 10 MB.
fromNoSource format. Omit to auto-detect.
sheetNoxlsx input: sheet name, or 0-based sheet index (default: the first sheet).
headerNoThe first row is a header (becomes JSON keys). false: no header row is read or written, and JSON output is an array of arrays.
encodingNoText encoding of csv/tsv/json input. utf-8 falls back to cp1252; any other value is strict.utf-8
max_rowsNoReject inputs with more data rows than this (413) instead of truncating silently.
delimiterNocsv input: field delimiter (default: detected among , ; tab |).
infer_typesNocsv/tsv input to json/xlsx output: turn exact numbers (and, for xlsx, ISO dates) and true/false into typed values.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover safety (readOnlyHint, idempotentHint, non-destructive, openWorld), yet the description adds substantive operational context they don't carry: cost is 1 credit (2 for xlsx output), output is returned inline capped at 1 MiB, input is up to 10 MB, and oversized inputs are rejected rather than silently truncated. These are exactly the cost/limit disclosures this dimension rewards.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose and formats are front-loaded and the cost line is placed early, which is the right priority. However, the output portion is choppy ('Output: a file (...) returned inline, at most 1 MiB. The converted table. meta: {...}'), with a dangling fragment and a raw meta shape that reads as schema leakage rather than prose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the return burden and mostly does: it names the media types returned inline, the 1 MiB cap, and the meta object fields (rows, cols, from, to, sheet/sheets, encoding, delimiter). For a 9-parameter tool this is close to complete, though error cases beyond the 413 rejection and multi-sheet output behavior are left implicit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter including to, from, sheet, header, encoding, delimiter, max_rows and infer_types is already documented in the schema. The description only echoes a few of these ('format, delimiter and encoding detection, header control') without adding syntax or semantics beyond the schema, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Convert tables between CSV, TSV, XLSX and JSON') and enumerates the exact formats handled. This cleanly separates it from siblings like csv_profile (profiling) and json_yaml_convert (structured-document conversion), so an agent can route without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use it (any format-to-format table conversion) and notes 'Omit to auto-detect' for the source format, but never names an alternative tool or states an exclusion. No guidance on when csv_profile or json_yaml_convert is the better choice, so usage must be inferred from the format list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources