Skip to main content
Glama

DaedalMap Geography Tools (loc_id)

Resolve Reference to loc_id

resolve_reference
Read-only

Free geography utility. Converts one value, or a bounded list of values, from an external or adjacent geographic reference system into the DaedalMap loc_id universe. Examples: from_system='zip' value='00601'; from_system='nws_fire' value='AKZ317'; from_system='admin_boundary' value='Fairfax County'. Returns ranked loc_id matches with bridge vintage, overlap weights, and provenance where applicable. Historical references are returned as requested; an evidenced successor is a separate optional question and is never substituted automatically. No payment required.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
iso3NoCountry hint for system-specific crosswalks. Default USA.
as_ofNoISO date or year used to select a time-bounded identity assertion, especially for historical names and codes.
itemsNoReference values to resolve in one call. Default public cap is deployment-configurable.
limitNoMaximum ranked matches to return. Default 10.
valueNoIdentifier or name in the input system. Examples: 00601, USA-Z-00601, AKZ317, USA-NWSFZ-AKZ317, Fairfax County, Mediterranean Sea.
batch_idNoOptional caller-supplied batch id for tracing.
min_shareNoOptional minimum area-share threshold for overlap matches.
request_idNoOptional caller-supplied request id for tracing.
from_systemNoInput reference system, such as loc_id, census_geoid/us_census_geoid, admin_boundary, zip, zcta, overlay_zcta, nws_zone, nws_fire, overlay_nws_fire_weather_zone, tribal, water_body, marine_eez, nuts, historical_country/iso3166_3, or a catalog family id.
country_hintNoOptional country hint for admin/name resolution.
admin_level_hintNoOptional admin-level hint for admin/name resolution.
target_admin_levelNoAdmin target level for crosswalk-backed resolution. Default admin_2. Accepts admin_0..admin_5, 0..5, or names such as country, state, county, tract, block_group, or block.
relationship_vintageNoOptional relationship vintage to require, such as usa_geometry_current or census_2020_relationship_files.

Schema Changelog

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

  1. Changed6 schema fields changed
    • removedInput schema / properties / bridge_vintage
      Removed value: -{
      -  "description": "Optional bridge vintage to require, such as usa_geometry_current or census_2020_relationship_files.",
      -  "type": "string"
      -}
    • changedInput schema / properties / iso3 / description
      Previous value: -"Country hint for system-specific bridges. Default USA."New value: +"Country hint for system-specific crosswalks. Default USA."
    • removedInput schema / properties / items / items / properties / bridge_vintage
      Removed value: -{
      -  "description": "Optional bridge vintage for this row.",
      -  "type": "string"
      -}
    • addedInput schema / properties / items / items / properties / relationship_vintage
      Added value: +{
      +  "description": "Optional relationship vintage for this row.",
      +  "type": "string"
      +}
    • addedInput schema / properties / relationship_vintage
      Added value: +{
      +  "description": "Optional relationship vintage to require, such as usa_geometry_current or census_2020_relationship_files.",
      +  "type": "string"
      +}
    • changedInput schema / properties / target_admin_level / description
      Previous value: -"Admin target level for bridge-backed resolution. Default admin_2. Accepts admin_0..admin_5, 0..5, or names such as country, state, county, tract, block_group, or block."New value: +"Admin target level for crosswalk-backed resolution. Default admin_2. Accepts admin_0..admin_5, 0..5, or names such as country, state, county, tract, block_group, or block."
  2. Changed1 schema field changed
    • changedInput schema / properties / from_system / description
      Previous value: -"Input reference system, such as loc_id, admin_boundary, zip, zcta, overlay_zcta, nws_zone, nws_fire, overlay_nws_fire_weather_zone, tribal, water_body, marine_eez, nuts, historical_country/iso3166_3, or a catalog family id."New value: +"Input reference system, such as loc_id, census_geoid/us_census_geoid, admin_boundary, zip, zcta, overlay_zcta, nws_zone, nws_fire, overlay_nws_fire_weather_zone, tribal, water_body, marine_eez, nuts, historical_country/iso3166_3, or a catalog family id."
  3. Changed3 schema fields changed
    • addedInput schema / properties / as_of
      Added value: +{
      +  "description": "ISO date or year used to select a time-bounded identity assertion, especially for historical names and codes.",
      +  "type": "string"
      +}
    • changedInput schema / properties / from_system / description
      Previous value: -"Input reference system, such as loc_id, admin_boundary, zip, zcta, overlay_zcta, nws_zone, nws_fire, overlay_nws_fire_weather_zone, tribal, water_body, marine_eez, nuts, or a catalog family id."New value: +"Input reference system, such as loc_id, admin_boundary, zip, zcta, overlay_zcta, nws_zone, nws_fire, overlay_nws_fire_weather_zone, tribal, water_body, marine_eez, nuts, historical_country/iso3166_3, or a catalog family id."
    • addedInput schema / properties / items / items / properties / as_of
      Added value: +{
      +  "description": "ISO date or year used to select a time-bounded identity assertion.",
      +  "type": "string"
      +}
  4. Changed4 schema fields changed
    • addedInput schema / anyOf
      Added value: +[
      +  {
      +    "required": [
      +      "from_system",
      +      "value"
      +    ]
      +  },
      +  {
      +    "required": [
      +      "items"
      +    ]
      +  }
      +]
    • addedInput schema / properties / batch_id
      Added value: +{
      +  "description": "Optional caller-supplied batch id for tracing.",
      +  "type": "string"
      +}
    • addedInput schema / properties / items
      Added value: +{
      +  "description": "Reference values to resolve in one call. Default public cap is deployment-configurable.",
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "admin_level_hint": {
      +        "description": "Optional admin-level hint for admin/name resolution.",
      +        "maximum": 5,
      +        "minimum": 0,
      +        "type": "integer"
      +      },
      +      "bridge_vintage": {
      +        "description": "Optional bridge vintage for this row.",
      +        "type": "string"
      +      },
      +      "country_hint": {
      +        "description": "Optional country hint for admin/name resolution.",
      +        "type": "string"
      +      },
      +      "from_system": {
      +        "description": "Input reference system for this row. Defaults to top-level from_system when omitted.",
      +        "type": "string"
      +      },
      +      "id": {
      +        "anyOf": [
      +          {
      +            "type": "integer"
      +          },
      +          {
      +            "type": "string"
      +          }
      +        ],
      +        "description": "Optional caller identifier echoed in the result."
      +      },
      +      "iso3": {
      +        "description": "Optional country hint for this row.",
      +        "type": "string"
      +      },
      +      "limit": {
      +        "description": "Maximum ranked matches for this row.",
      +        "maximum": 100,
      +        "minimum": 1,
      +        "type": "integer"
      +      },
      +      "min_share": {
      +        "description": "Optional minimum area-share threshold for this row.",
      +        "maximum": 1,
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "row_index": {
      +        "anyOf": [
      +          {
      +            "type": "integer"
      +          },
      +          {
      +            "type": "string"
      +          }
      +        ],
      +        "description": "Optional caller row identifier echoed in the result."
      +      },
      +      "target_admin_level": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "integer"
      +          }
      +        ],
      +        "description": "Optional admin target level for this row."
      +      },
      +      "value": {
      +        "description": "Identifier or name in the input system.",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "value"
      +    ],
      +    "type": "object"
      +  },
      +  "minItems": 1,
      +  "type": "array"
      +}
    • removedInput schema / required
      Removed value: -[
      -  "from_system",
      -  "value"
      -]
  5. Added

TDQS

A3.7/5.0
Behavior4/5

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

Beyond the readOnlyHint annotation, the description discloses useful behavioral traits: it is free, returns ranked matches with bridge vintage, overlap weights, and provenance, and never automatically substitutes an evidenced successor. It also clarifies that historical references are returned as requested, adding meaningful context beyond the annotation.

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 description is compact, front-loaded with the core purpose, and uses examples effectively. The historical-behavior and no-payment statements are useful but make the description slightly denser than strictly necessary.

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?

For a read-only utility with no output schema, the description explains the main return fields and important behavioral caveats such as no automatic successor substitution. It is mostly complete, though it could strengthen agent decision-making by addressing how it differs from convert_reference and when batch input is preferred.

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 the schema already documents all parameters well. The description adds examples for from_system/value pairs and mentions bounded lists, but it does not materially explain parameter semantics beyond what the schema provides.

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?

The description clearly states the tool's function: converting external or adjacent geographic reference values into DaedalMap loc_id values, and it names the output as ranked matches. It is specific about the resource and outcome, but it does not explicitly distinguish itself from the sibling convert_reference tool, so it falls short of full sibling differentiation.

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

Usage Guidelines3/5

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

The description implies when to use this tool—when you have an external reference value and need loc_id matches—and gives concrete examples. However, it does not explicitly state when not to use it or mention alternatives such as convert_reference, identify_reference_system, or resolve_point.

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.

TDQS

A4.2/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: point resolution, reference conversion, hierarchy traversal, geometry retrieval, export creation, job estimation, catalog discovery, and relationship comparison are all separated. The descriptions explicitly state what each tool does and what it does not do, preventing misselection. Even closely related tools like get_geometry, get_geometry_export, and estimate_geometry_package are differentiated by their roles (single-shape retrieval vs. export artifact vs. dry-run estimate).

Naming Consistency5/5

All 20 tool names follow a consistent verb_noun snake_case pattern (e.g., get_geometry, create_conversion_job, resolve_point, list_reference_systems). The verbs are action-oriented (get, create, estimate, resolve, compare, list, read) and each noun clearly indicates the subject. While a few like 'loc_id_info' and 'how_geometry_works' deviate slightly from the strict verb_noun structure, they still fit the overall style and are easy to predict.

Tool Count4/5

The 20 tools are slightly above the typical 3-15 range but still well-scoped for a comprehensive geocoding and geography service. The extra tools reflect the breadth of operations offered (discovery, conversion, estimation, export, resolution, relationship analysis), each earning its place. The count feels reasonable given the domain, though it approaches the upper boundary of what an agent might easily navigate.

Completeness5/5

The tool surface covers the full lifecycle of geocoding workflows: discovery (get_catalog, get_pack, read_geometry_catalog), point resolution (resolve_point), reference resolution (resolve_reference), identifier identification (identify_reference_system), hierarchy traversal (resolve_loc_id_scope, loc_id_info), geometry retrieval (get_geometry), relationship analysis (compare_geographies), conversion (convert_reference, create_conversion_job), export (create_geometry_export), and estimation (estimate_geometry_package, estimate_conversion_job). The inclusion of help tools (get_tool_help, how_geometry_works) and job status retrieval ensures no dead ends. The absence of destructive or update operations is consistent with a read-only geospatial data service, so the surface is appropriate.