Skip to main content
Glama

files_set_text_validation

Adds a text data-validation to a range: cell text must satisfy the given constraints. Provide any of: min_length/max_length (inclusive character-count bounds), exactly (list — the value must equal one of these), contains (list — must contain one of these), not_contains (list — must contain none of these). Matching is case-insensitive. At least one constraint required. strict (default true): reject invalid entries; false warns. Pass 'id' (from files_validations) to replace. Requires edit permission. Signature: files_set_text_validation(file_uuid, range, sheet?, id?, strict?, min_length?, max_length?, exactly?, contains?, not_contains?).

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "file_uuid": "<file_uuid>",
      "range": "<range>"
    },
    "name": "files_set_text_validation"
  }
}

Input Schema

NameRequiredDescriptionDefault
idNoExisting validation id to replace.
rangeYesA1 range, e.g. 'A2:A100'.
sheetNo
strictNoReject invalid entries (default true); false warns.
exactlyNoValue must equal one of these.
containsNoValue must contain one of these.
file_uuidYes
max_lengthNoMaximum character count (inclusive).
min_lengthNoMinimum character count (inclusive).
not_containsNoValue must contain none of these.

Output Schema

NameRequiredDescriptionDefault
rangeYes
file_uuidYes
sequence_numberYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations only give the generic readOnly=false/destructive=false/idempotent=false profile; the description adds materially beyond that: strict defaults to true and rejects entries while false merely warns, matching is case-insensitive, and replacement is done via the id from files_validations. It would be stronger if it said what happens to an existing validation when no id is passed or whether the behavior is destructive to prior rules on the range.

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?

The body is dense and front-loaded — the constraints, case sensitivity, strictness, and replacement path each earn their sentence. The trailing 'Signature: files_set_text_validation(...)' line duplicates the input schema verbatim and is pure waste, keeping it from a 5.

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?

An output schema exists, so return values need not be explained, and the description covers permissions, constraint requirements, replacement, and strictness — enough to invoke the tool correctly. It leaves one meaningful gap: what happens to pre-existing validations on the target range when no id is supplied, which matters for a 10-parameter mutation tool.

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 already 80%, yet the description still adds meaning: lengths are inclusive character-count bounds, 'exactly' means the value must equal one of the listed items, 'contains'/'not_contains' are membership tests, and matching is case-insensitive. The undocumented 'sheet' parameter and the interaction between file_uuid/sheet/range are not clarified.

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?

The opening clause names a specific verb and resource ('Adds a text data-validation to a range') and immediately defines the semantic domain — cell text must satisfy constraints. The 'text' qualifier cleanly separates it from the sibling validation setters (files_set_number_validation, files_set_datetime_validation, files_set_custom_validation) without needing to name them.

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?

It states the prerequisite ('Requires edit permission'), the constraint minimum ('At least one constraint required'), and the update path ('Pass id (from files_validations) to replace'), which tells the agent how this interacts with the listing tool. It stops short of an explicit when-to-use-this-vs-that rule, e.g. when a numeric or checkbox validation is the better sibling choice.

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