Skip to main content
Glama

ScrapeMole Pulse: FX rates (ECB), currency conversion, time zones, weather (global + official US NWS forecasts and alerts), Hacker News, public holidays and geocoding for AI agents: Geocode place or address

geocode
Read-onlyIdempotent

Use when an agent has a city, landmark or postal address and needs lat/lon for maps, weather, distance or logistics: returns the best match with latitude, longitude, display name, country/countryCode, optional admin hierarchy, street/house number, OSM ids and bounding box. Public OpenStreetMap-derived data via Photon (Komoot), with Nominatim fallback. Not found = 404, not charged. Attribute OpenStreetMap when redistributing. Paid tool: x402 USDC on Base, $0.001 per successful call; call without payment to receive the PaymentRequired object.

Input Schema

NameRequiredDescriptionDefault
qYesPlace name or address to resolve (aliases: place, address).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.1/5.0
Behavior5/5

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

Goes well beyond the readOnly/openWorld/idempotent annotations: discloses the upstream data sources (Photon with Nominatim fallback), that a miss returns 404 and is not charged, an attribution obligation, and the full payment model (x402 USDC on Base, $0.001 per successful call, PaymentRequired object on unpaid calls). This is exactly the extra context an agent needs before invoking.

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?

Front-loads the trigger and the return shape, then layers sourcing, error, licensing and payment details in dense clauses. It is longer than most tool descriptions but nearly every clause carries operational weight for a paid tool; the run-on sentence structure is the only drag.

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?

With no output schema, the description fully carries the return-shape burden by enumerating the fields returned, and it also covers failure behavior, billing, and licensing. An agent has everything needed to call this correctly.

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?

Only one parameter (q) and schema description coverage is 100%, so the schema already documents the argument and its aliases. The description adds no syntax or format guidance beyond what the schema states, making the baseline 3 appropriate.

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+resource ('Geocode place or address') and enumerates the return payload (lat/lon, display name, country, OSM ids, bounding box). However, it never distinguishes itself from the closely related siblings geocode_search and geocode_reverse, leaving the agent to guess which geocoding variant to pick.

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?

Explicit trigger is given: use when you have a city, landmark, or postal address and need lat/lon for maps, weather, distance or logistics. There is no 'when-not' clause or explicit pointer to geocode_reverse for the coordinate-to-address direction, so routing between siblings is left partly to inference.

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