Skip to main content
Glama

Profile a table (CSV, JSON, XLSX)

ai_csv_profile
Read-onlyIdempotent

Profiles CSV, TSV, JSON, or Excel tables before analysis: counts rows/columns, infers column types, summarizes missing values, uniques, stats, and flags data-quality issues.

Instructions

Profile a table to understand and clean it before analysis: row and column counts, and per column the inferred type (integer, number, boolean, date, datetime, string), non-null and null counts, unique count, top 5 values, sample values, min/max/mean/median/stddev for numbers, min/max for ISO dates, min/max length for text, plus data-quality warnings (mixed types, leading/trailing spaces, mostly missing, constant columns, duplicate rows, ragged headers). Input: "file" (local path or base64 of CSV, TSV, JSON array, JSONL or .xlsx, first sheet or "sheet") or inline "csv" / "json". Empty cells, "null" and "NULL" count as missing. Runs locally; nothing is uploaded.

Input Schema

NameRequiredDescriptionDefault
csvNoOr: CSV/TSV text inline (delimiter detected; first row is the header).
fileNoA table file: local path (absolute, or relative to --root) or base64. CSV, TSV, JSON array, JSONL or .xlsx.
jsonNoOr: JSON inline: an array of objects (or of arrays, first one the header), as a value or as JSON/JSONL text.
sheetNoFor .xlsx: the sheet name to read (default: the first sheet).
formatNoForce the file format (default "auto": by extension, then by content).auto
columnsNoOnly profile these columns (default: all).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover the read-only, closed-world, idempotent profile, so the description's contribution is the local-execution guarantee ('nothing is uploaded') and the missing-value convention (empty cells, 'null', 'NULL' count as missing), both of which an agent needs. It stops short of describing cost, limits, or failure behavior for malformed input.

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?

Front-loaded with the purpose, then the output inventory, then input modes, then a privacy note — a sensible ordering. The middle sentence is a dense parenthetical list of statistics and warning types, which is information-rich but reads as a run-on rather than structured bullets.

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

Completeness5/5

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

There is no output schema, so the description carries the full burden of describing the return payload, and it does so exhaustively — counts, inferred types, per-type statistics, and warning categories. Combined with input-mode and missing-value semantics and annotation-covered safety, nothing an agent needs to decide or invoke correctly is missing.

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

Parameters4/5

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

Schema description coverage is 100%, so baseline is 3; the description adds value by explaining that 'file' accepts a local path or base64 across CSV/TSV/JSON/JSONL/XLSX, that 'sheet' applies to xlsx, and that 'csv'/'json' are inline alternatives. The only gap is that 'columns' and 'format' selection are not elaborated beyond the schema text.

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 ('Profile a table') and enumerates the exact artifacts produced: row/column counts, inferred per-column types, null/unique counts, top values, numeric stats, date ranges, and data-quality warnings. An agent can distinguish this from siblings like csv_to_json or ai_json_schema_infer 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 Guidelines4/5

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

Explicitly frames the use case ('to understand and clean it before analysis') and the data-quality warnings section implies adoption for cleaning workflows before transformation. It does not name alternatives or state when-not to use it, so it falls short of a 5.

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

Deploy Server

Other Tools