Skip to main content
Glama

Phone number check

util_phone

Use when an agent must decide whether a phone number is usable before writing or calling: checks it offline, normalises it to E.164, works out its country (including the twelve calling codes shared by several countries) and validates the national length against that country's numbering plan, returning the tel: URI and the national dialling form. Data from Google's libphonenumber, no network call, so it cannot fail because a third party is down. $0.005 per call, paid over x402 (USDC).

Input Schema

NameRequiredDescriptionDefault
phoneYesThe phone number, in any usual notation: +34 612 34 56 78, 0034612345678, (612) 345-678.
countryNoOptional ISO 3166-1 alpha-2 country, e.g. ES. Only used when the number carries no country code.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so: offline execution, libphonenumber as the data source, no network dependency so third-party outages cannot fail it, and an explicit price of $0.005 per call paid over x402 in USDC. It also names what comes back (tel: URI and national dialling form), which is more than most definitions of this type disclose.

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 usage trigger is front-loaded, and the offline/cost/return details follow in a logical order. The first sentence is dense with five stacked clauses, but each clause carries distinct information and nothing is redundant.

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?

No output schema exists, and the description names the key returns (tel: URI, national dialling form) plus the validity decision, which covers the main need. It does not spell out the full result shape or what happens on an unparseable number (error vs. invalid result), a modest gap for a tool with no output schema.

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 coverage is 100%, so both the phone notation examples and the optional ISO 3166-1 alpha-2 country rule are already documented in the schema. The description reinforces the E.164 normalisation and country-resolution behaviour but adds no parameter-level syntax or edge-case detail beyond the schema, so baseline 3 applies.

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?

States specific verbs and resource: checks usability, normalises to E.164, resolves country (including shared calling codes), validates national length, and returns the tel: URI. An agent can distinguish this from util_iban/util_vat/red_email_check purely from the description.

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?

"Use when an agent must decide whether a phone number is usable before writing or calling" gives a clear triggering context. It stops short of naming alternatives or stating when-not-to-use (e.g. batch validation or non-phone identifiers), so it is clear but not fully routing.

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