Skip to main content
Glama

Location Search

location_search
Read-onlyIdempotent

Resolve a birth city or place name into latitude, longitude and IANA timezone, plus the historically correct UTC offset for a given date — essential for accurate chart calculation.

Instructions

Use this when the user gives a birth city, hometown or any place name — 'born in Chicago', 'Mumbai, India', 'what timezone was Paris in 1985' — and a chart needs coordinates and a timezone. Returns display name, region (state/province), latitude, longitude and IANA timezone. With the birth date as date it also returns utcOffsetAtDate, the historically-correct UTC offset for that place on that date; post-1970 dates resolve locally at no extra cost, pre-1970 dates consult the historical overlay for the top match (+1 credit) and return its provenance. The result is flagged ambiguous when several places share the name (e.g. "portland"). A trailing "City, ST" qualifier in the query is honored. CREDIT COST: 1 credit per call.

Input Schema

NameRequiredDescriptionDefault
dateNoYYYY-MM-DD; adds the UTC offset in force there that day (historical DST). Pre-1970 corrects the top match (+1 credit).
nearNo'lat,lon' to boost nearby places.
queryYesSearch query for location, e.g. 'Los Angeles' or 'Wakefield, MI'
admin1NoAlias for region (region wins if both supplied).
regionNoState/province to boost, e.g. 'MI'.
countryNoISO country code to boost, e.g. 'US'.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv4.29.0
    • changedInput schema / properties / country / description
      Previous value: -"Optional ISO 3166-1 alpha-2 country code (e.g. 'US') to bias ranking. Boost, not filter."New value: +"ISO country code to boost, e.g. 'US'."
    • changedInput schema / properties / date / description
      Previous value: -"Optional birth/event date as 'YYYY-MM-DD'. When given, each suggestion also carries utcOffsetAtDate / utcOffsetMinutes / isDst — the UTC offset that actually applied at that place on that date, using historical DST rules. Post-1970 is free (local resolution, no API call). Pre-1970, the top match is additionally corrected through the API's historical overlay (1 extra credit) because tzdata models only the zone's reference city before 1970; the remaining suggestions keep their tzdata estimate and are labelled historical_estimate."New value: +"YYYY-MM-DD; adds the UTC offset in force there that day (historical DST). Pre-1970 corrects the top match (+1 credit)."
    • changedInput schema / properties / near / description
      Previous value: -"Optional 'lat,lon' proximity hint (e.g. '37.77,-122.42') to bias ranking toward nearby places."New value: +"'lat,lon' to boost nearby places."
    • changedInput schema / properties / region / description
      Previous value: -"Optional admin1 (state/province) qualifier to bias ranking — full name ('Michigan'), ASCII name, or code ('MI'). Boost, not filter."New value: +"State/province to boost, e.g. 'MI'."
  2. Changed1 schema field changedv4.12.0
    • changedInput schema / properties / date / description
      Previous value: -"Optional birth/event date as 'YYYY-MM-DD'. When given, each suggestion also carries utcOffsetAtDate / utcOffsetMinutes / isDst — the UTC offset that actually applied at that place on that date, using historical DST rules. Free: adds no API call and no credits."New value: +"Optional birth/event date as 'YYYY-MM-DD'. When given, each suggestion also carries utcOffsetAtDate / utcOffsetMinutes / isDst — the UTC offset that actually applied at that place on that date, using historical DST rules. Post-1970 is free (local resolution, no API call). Pre-1970, the top match is additionally corrected through the API's historical overlay (1 extra credit) because tzdata models only the zone's reference city before 1970; the remaining suggestions keep their tzdata estimate and are labelled historical_estimate."
  3. Addedv4.8.0

TDQS

A4.3/5.0
Behavior5/5

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

Goes well beyond the readOnly/idempotent/non-destructive annotations by disclosing credit cost (1 per call, +1 for pre-1970 historical overlay), that post-1970 resolution is local and free, that provenance is returned for overlay results, and that results are flagged `ambiguous` on name collisions. These are non-obvious cost and correctness behaviors an agent must plan around.

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 scenario and the return shape before the cost/caveat detail, and every sentence carries information. It is dense and the mid-section on pre/post-1970 resolution is a long compound sentence that slows parsing, but nothing is filler.

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?

There is no output schema, so the description carries the return contract and does: it enumerates display name, region, lat, lon, IANA timezone, conditional `utcOffsetAtDate`, provenance, and the `ambiguous` flag. Combined with credit cost and the date caveat, an agent has everything needed to call this correctly and interpret the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents all six parameters and a baseline 3 applies. The description still adds value beyond it: the `date` parameter is reframed as producing `utcOffsetAtDate` with historical-DST correctness, and it discloses that a trailing 'City, ST' qualifier in `query` is honored — behavior not evident from the schema.

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 and resource (search for a place, return coordinates and IANA timezone) and anchors it to a real user scenario ('born in Chicago', 'what timezone was Paris in 1985'). An agent can tell what it does immediately, but the description never distinguishes it from the sibling `timezone_resolve`, which plausibly overlaps on the timezone half of the job.

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?

Gives an explicit trigger condition: use when the user supplies a birth city/hometown/place name and a chart needs coordinates plus timezone. It also implicitly tells the agent to pass `date` when a historical offset is needed. No when-not guidance or named alternative (e.g. timezone_resolve) is offered, so it stops short of a 5.

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