Skip to main content
Glama

HTTP 418 teapot

normalize-url

Return origin, host, and path for a URL. Query and fragment are dropped.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
refNoGit ref name; discarded after the shape check
urlNoHTTPS URL to normalize or cite
cityNoCity name for a public weather hint; discarded after the call
feedNoPublic RSS or Atom URL; titles discarded
hostNoPublic hostname
jsonNoJSON text to validate; discarded after the check
pathNoFile path to check; no disk access
zoneNoIANA timezone name
queryNoSearch text; discarded after the length check

Schema Changelog

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

  1. Changed5 schema fields changed
    • addedInput schema / properties / city
      Added value: +{
      +  "description": "City name for a public weather hint; discarded after the call",
      +  "type": "string"
      +}
    • addedInput schema / properties / feed
      Added value: +{
      +  "description": "Public RSS or Atom URL; titles discarded",
      +  "type": "string"
      +}
    • addedInput schema / properties / path
      Added value: +{
      +  "description": "File path to check; no disk access",
      +  "type": "string"
      +}
    • addedInput schema / properties / query
      Added value: +{
      +  "description": "Search text; discarded after the length check",
      +  "type": "string"
      +}
    • addedInput schema / properties / ref
      Added value: +{
      +  "description": "Git ref name; discarded after the shape check",
      +  "type": "string"
      +}
  2. First observed

TDQS

C2.7/5.0
Behavior2/5

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

The description discloses that query and fragment are dropped, which is useful behavioral context. But there are no annotations, so the description must carry the full burden. It does not mention whether the operation is read-only, whether it validates URL format, what happens on invalid URLs, or any side effects. The mention of 'json' and 'zone' parameters in the schema further complicates behavior—why are they present if the tool is about URLs?

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 extremely concise: two sentences. It front-loads the primary output ('origin, host, and path') and states the key behavior ('Query and fragment are dropped') immediately. No filler or repetition.

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

Completeness2/5

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

The tool has 4 parameters, none required, with no output schema and no annotations. The description only covers URL-related behavior, leaving the 'json' and 'zone' parameters completely unexplained in context. An agent cannot confidently invoke this tool with correct semantics for all parameters. For a multi-purpose or overloaded tool, this is inadequate.

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 100%, so each parameter has a description in the schema. However, the description itself does not explain how 'host', 'json', and 'zone' relate to the URL normalization task. The tool description only mentions 'url' implicitly, leaving the other parameters' roles unclear. An agent might not know how to combine these parameters or why 'json' and 'zone' are accepted at all. Baseline 3 is warranted because the schema does document each parameter, but the description adds little beyond that.

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

Purpose3/5

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

The description states a specific verb ('Return') and resource ('origin, host, and path for a URL'), making the core purpose clear. However, it does not distinguish this from sibling tools, and the tool's name 'normalize-url' hints at transformation while the description is more about extraction, which could confuse an agent.

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?

The description implies the tool is for normalizing or citing a URL, but gives no explicit when-to-use or when-not-to-use guidance. It does not mention alternatives or any context like 'use this instead of X when you need origin/host/path.' With 4 parameters but no required ones, it's unclear when the agent should invoke this tool versus another.

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.