Skip to main content
Glama
iftahs
by iftahs

local_normalization

local_normalization

Normalize registered frames against a reference to correct gradients before integration or drizzle. Produces per-frame .xnml files for gradient-aware stacking.

Instructions

LocalNormalization (.xnml) of registered frames against the reference; feeds integrate/drizzle for gradient-aware normalization. Async, per-frame.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
filesNoDefault: registered outputs
scaleNodefault 256
out_dirNo
referenceNoDefault: registered reference frame

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior3/5

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

Annotations declare readOnlyHint=false, destructiveHint=false, and openWorldHint=false, so the description is not contradicting them. The description adds useful behavioral context: it is async and per-frame, and it produces .xnml files. However, it does not disclose what happens to existing outputs, whether it overwrites files, or what the output format/return value is.

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 description is two sentences with no filler. It front-loads the core purpose and adds the async/per-frame behavior efficiently. It could be slightly more structured, but it earns its place.

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

Completeness3/5

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

For a tool with 4 optional parameters and no output schema, the description gives enough to understand the general purpose and pipeline position. However, it lacks details on how the tool reports completion (async), what the .xnml output is used for, and whether there are any side effects on existing files. An agent might need to inspect the schema or logs to fully understand the behavior.

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 description coverage is 75%, so the schema already documents most parameters. The description adds context that 'files' defaults to registered outputs and 'reference' defaults to the registered reference frame, which is helpful. However, it does not explain the meaning of 'scale' or 'out_dir' beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('LocalNormalization') and resource ('.xnml' files of registered frames against the reference), and mentions it feeds integrate/drizzle. It is clear enough to distinguish from siblings like gradient_correction or integrate, though it doesn't explicitly name a sibling alternative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

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

The description implies usage context: it operates on registered frames and feeds integrate/drizzle, so an agent can infer when to call it. However, it does not explicitly state when to use this tool versus alternatives like gradient_correction or integrate, nor does it mention prerequisites or exclusions.

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