Skip to main content
Glama

normalize_mobile

Validate and normalize Iranian mobile numbers to the 09xxxxxxxxx format. Convert local, international, or malformed inputs into a standard mobile number.

Instructions

Validate and normalize an Iranian mobile number to 09xxxxxxxxx.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
valueYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden. It discloses the output format but says nothing about accepted input shapes (+989..., 00989..., Persian digits), what happens when validation fails (error vs. null vs. passthrough), or whether a leading-zero-prefixed number is required. For a validation tool, the failure semantics are the most important missing piece.

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?

A single front-loaded sentence that names the action, the resource, the locale and the output contract. Nothing is wasted.

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?

The tool is simple (one required string param, no nested objects), but with no annotations and no output schema the description is the only source of contract information, and it omits input format tolerance and invalid-input behavior. Adequate but with clear gaps.

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 0% and the single parameter is generically named 'value'. The description implies the parameter is a mobile number but gives no accepted formats or examples, so the agent still has to guess what strings will be accepted.

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?

States a specific verb pair (validate and normalize) plus the resource (Iranian mobile number) and even the target output format (09xxxxxxxxx), so the agent knows exactly what comes back. It stops short of naming how it differs from siblings like mobile_operator or normalize_persian_text, but the purpose itself is unambiguous.

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

Usage Guidelines2/5

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

No when-to-use or when-not-to-use guidance, no prerequisites, and no routing to alternatives such as mobile_operator (which presumably extracts operator info rather than canonicalizing the number). The agent must infer that this is the canonicalization step before storing or comparing numbers.

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