Skip to main content
Glama

InvokePort

JSON to CSV

invokeport_json_csv
Idempotent

Convert flat JSON records to quoted CSV for exporting agent results. Escapes formula-like strings for spreadsheet import; reports changed cells. No cleaning or deduplication. Free deterministic computation; no LLM or external fetch. Requires a scoped key allowing json-csv. Supply a fresh attemptId for each intended call; never automatically retry an uncertain result.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
inputYes
attemptIdYesUnique non-secret invocation ID. Retain on uncertain outcomes; do not invent a new ID to retry.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Annotations cover the safety profile (readOnlyHint false, idempotentHint true, destructiveHint false, openWorldHint false), and the description layers on materially new traits: formula-like string escaping for spreadsheet safety, changed-cell reporting, no cleaning/dedup, free deterministic computation with no LLM or external fetch, key requirements, and non-retry semantics. This is well beyond what the structured fields convey.

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?

Dense and front-loaded: purpose first, then caveats, then operational requirements. Nearly every clause carries a distinct constraint, though the back half reads as a compact list of rules and could drop a clause or two without losing information.

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 covers input expectations, exclusions, safety behavior, cost, auth, and retry discipline for a two-parameter tool. The main remaining gap is the 500-row input ceiling and any explicit statement of what the returned CSV artifact looks like.

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 coverage is 50% and attemptId already carries its own description in the schema. The description adds one genuinely useful constraint on 'input' by specifying rows must be flat, but omits the 500-row maxItems limit and the nested-object shape that the schema enforces.

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 pair ('Convert flat JSON records to quoted CSV') with the use case ('exporting agent results') named up front. The 'flat' qualifier separates it from the structured-JSON siblings (json_schema, json_types, json_repair) and the direction of conversion separates it from csv_json.

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?

Gives explicit scope boundaries ('No cleaning or deduplication') and a prerequisite ('Requires a scoped key allowing json-csv'), plus retry discipline for attemptId. It never names the inverse sibling (csv_json) as the alternative for the opposite direction, so guidance is strong but not fully routing.

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