csv_cleaner
Clean CSV-like row objects by trimming text, normalizing headers, removing empty rows, and reporting changed fields.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| rows | Yes | ||
| normalizeHeaders | No | Convert headers to snake_case. Default true. |
Clean CSV-like row objects by trimming text, normalizing headers, removing empty rows, and reporting changed fields.
| Name | Required | Description | Default |
|---|---|---|---|
| rows | Yes | ||
| normalizeHeaders | No | Convert headers to snake_case. Default true. |
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, indicating safe, non-mutating behavior. The description adds useful behavioral context: it trims text, normalizes headers, removes empty rows, and reports changed fields—none of which are captured by annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the tool's purpose and actions. It is front-loaded with the verb and resource, and every clause adds specific detail. However, it could be slightly more structured for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should explain what the tool returns. It only mentions 'reporting changed fields' without specifying the structure. Given the complexity (2 params, cleaning operations), this is insufficient for an agent to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50%: the 'rows' parameter lacks a description, and the tool description does not clarify what keys or format those objects should have. The description mentions 'normalizing headers' which aligns with the 'normalizeHeaders' parameter, but otherwise adds no value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Clean') and resource ('CSV-like row objects'), and lists concrete actions (trimming, normalizing, removing empty rows, reporting changes). This clearly distinguishes it from sibling tools like image_audit or inventory_checker.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide any guidance on when to use this tool versus alternatives, nor does it specify prerequisites or typical context. It only states what the tool does without usage boundaries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Most tools have distinct purposes (e.g., blog_generator vs. get_blog_post), but there is overlap among some content validation tools (csv_cleaner, duplicate_sku_finder, inventory_checker, product_catalog_validator) which could cause confusion. Also, compare_services and search_services serve similar functions.
Tool names mix styles: some use noun_verb (amazon_listing_manager), others verb_noun (compare_services), and there are multiple prefixes like get_, search_, list_. This inconsistency may hinder an agent's ability to predict tool names.
With 35 tools, the set is large and covers many subdomains. This could overwhelm an agent, making selection challenging. A more focused subset would improve coherence.
The tools cover a broad range of ecommerce operations: listing management for multiple platforms, content generation, data validation, research, and reporting. However, missing update/delete capabilities and some platform interactions limit full lifecycle coverage.