Skip to main content
Glama

tool_data_transformer

POST /tools/tool_data_transformer/run — Extracts structured JSON from raw text using a caller-supplied JSON Schema. Input: {raw_text: string, target_json_schema: object (JSON Schema draft-07)}. Output: {success, extracted_data, extraction_method, validation_passed, error}. extraction_method is one of: 'direct_parse', 'embedded_json', 'regex_extraction'. No LLM involved — pure parsing pipeline. Type coercion applied for integer/number/boolean fields. Works best with flat schemas; deeply nested structures extract less reliably via key-value pass. Cost: $0.0500 USDC per call.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
raw_textYesUnstructured or semi-structured text to extract data from. Examples: API response body, email content, log lines, form submissions, scraped web pages, or any text that contains the values you need.
target_json_schemaYesA JSON Schema object describing the expected output structure. Define 'properties' with a 'type' for each field you want extracted, and list required fields under 'required'. Example: {"type": "object", "properties": {"name": {"type": "string"}, "age": {"type": "integer"}}, "required": ["name", "age"]}

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations, the description carries full responsibility and excels: it discloses that no LLM is involved, lists the extraction_method enum, mentions type coercion, describes the output structure, and even states the cost per call. Limitations about nested schemas add critical expectations. This is far beyond typical descriptions.

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

Conciseness5/5

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

The description is dense but every sentence provides distinct value: endpoint, input, output, methods, behavior, limitations, and cost. It is structured logically with clear separators and avoids fluff or repetition of schema content.

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?

Despite lacking annotations and an output schema, the description compensates by fully specifying the output fields (success, extracted_data, extraction_method, validation_passed, error) and covering operational details (type coercion, flat-schema preference, cost). This is a complete picture for an agent to invoke the tool correctly.

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 coverage is 100% with detailed descriptions, so the baseline is 3. The description adds extra value by specifying that target_json_schema follows JSON Schema draft-07 and by framing the parameters as caller-supplied, which clarifies their role in the pipeline. This nuance earns a 4.

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 description uses a specific verb ('extracts') and resource ('structured JSON from raw text') and clearly distinguishes the tool's function from the sibling tools, none of which suggest data extraction. The inclusion of the endpoint and input/output structure reinforces the purpose.

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?

The description provides context on when to use the tool (for extracting structured data without an LLM) and notes a limitation ('Works best with flat schemas; deeply nested structures extract less reliably'), serving as a when-not. However, it does not explicitly name alternative tools or provide a clear 'use this instead of X' directive, 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.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.4/5.0
Disambiguation5/5

Each tool covers a completely different domain: Python execution, raw-text JSON extraction, South African airport flights, and ZAR crypto prices. There is no overlap in purpose, input shape, or use case, so agents should not confuse them.

Naming Consistency4/5

All tools share a 'tool_' prefix and lower_snake_case formatting, giving the set a recognizable pattern. The suffix style is mostly consistent, though 'compute_sandbox' and 'data_transformer' are generic capability nouns while 'sa_airport_oracle' and 'zar_prices' are more domain-branded, and none uses a verb-action pattern.

Tool Count4/5

Four tools is a manageable, non-bloated count for a utility/vending server. It is slightly lean given the broad 'Agent Vending Factory' name, but each tool is substantial and earns its place.

Completeness3/5

Each tool covers its own narrow operation well, but the set lacks a unifying domain or shared workflow; the compute, transformer, flight, and pricing endpoints are isolated one-shots. There is also no meta-tool for discovering, chaining, or managing the vended capabilities, so the surface feels like a grab-bag rather than a complete product.

Resources