Skip to main content
Glama

Geocode Census Block

fcc_geocode_block
Read-onlyIdempotent

Converts a latitude/longitude coordinate to a 15-digit census block FIPS code, plus county FIPS, county name, state FIPS, state code, and state name. This is the required prerequisite for fcc_search_availability since the broadband dataset is indexed by census block, not address. The block is resolved against 2010 census boundaries, the vintage the Form 477 deployment dataset is keyed by, so the returned blockFips can be passed straight to fcc_search_availability; a 2020-vintage block ID from another source will not match. Uses the FCC public Geo API — no authentication required.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
latitudeYesLatitude of the location in decimal degrees (e.g., 47.6062 for Seattle, WA). Must be within the continental US, Alaska, Hawaii, or US territories.
longitudeYesLongitude of the location in decimal degrees (e.g., -122.3321 for Seattle, WA). Negative for western hemisphere.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
errorNoPresent when the call failed. Absent on success.
blockFipsNo15-digit census block FIPS code on 2010 census boundaries (e.g., "530330081002024"). Pass this to fcc_search_availability to look up broadband providers.
stateCodeNo2-letter state abbreviation (e.g., "WA").
stateFipsNo2-digit state FIPS code (e.g., "53" for Washington).
stateNameNoFull state name (e.g., "Washington").
countyFipsNo5-digit county FIPS code (e.g., "53033" for King County, WA).
countyNameNoHuman-readable county name (e.g., "King").
censusVintageNoDecennial census whose block boundaries blockFips belongs to. Always "2010" — the vintage the Form 477 deployment dataset behind fcc_search_availability is keyed by.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the description does not need to repeat that. It adds behavioral context beyond annotations: the resolution against 2010 census boundaries and the use of the FCC public Geo API with no auth. This gives an agent insight into external dependencies and compatibility. It doesn't cover error handling or edge cases, but given annotation coverage that is acceptable.

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 somewhat long but every sentence earns its place: the primary function, the downstream dependency, the vintage caveat, and the auth note are all relevant. It is front-loaded with the core action and then layers context. A minor tightening could combine the vintage and dependency sentences, but it remains clear and well-structured.

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?

Given the presence of an output schema (so return values are self-documented), the description covers everything an agent needs: purpose, prerequisite relationship, coordinate scope, vintage alignment, and authentication. It is complete for a tool of this complexity and leaves no ambiguity about how to call it or what to expect in terms of use-case fit.

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?

The schema description coverage is 100%, with each parameter already including examples and geographic constraints (continental US, Alaska, etc.). The description adds no additional parameter-specific semantics beyond what the schema provides; it only mentions the required prerequisite context. Baseline 3 is appropriate.

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?

The description opens with a precise statement of the conversion (lat/long to 15-digit census block FIPS plus county/state identifiers) and immediately differentiates from siblings by noting it is the required prerequisite for fcc_search_availability because the broadband dataset is keyed by census block. This is a specific, unambiguous purpose that an agent can act on without inspecting the schema.

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

Usage Guidelines5/5

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

The description explicitly states the usage context: it is the prerequisite for fcc_search_availability, and it explains why the returned blockFips is directly usable (2010 vintage matches the Form 477 dataset) while also warning against using 2020-vintage blocks. It also mentions no authentication is required, rounding out the when-to-use guidance. No alternatives are needed because it names the dependent tool.

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.4/5.0
Disambiguation5/5

Each tool targets a distinct resource and action: geocoding, availability lookup, provider search, provider details, coverage summaries, area comparisons, underserved analysis, data version listing, and file downloads. No two tools have overlapping purposes.

Naming Consistency5/5

All tools follow the `fcc_` prefix plus a clear verb_noun pattern (e.g., `fcc_geocode_block`, `fcc_search_availability`, `fcc_list_downloads`). Naming is consistent snake_case with a predictable structure.

Tool Count5/5

9 tools is well-scoped for a domain-specific data server. Each tool earns its place, covering the core workflow of geocoding, availability, provider lookup, coverage analysis, and data file access without redundancy.

Completeness4/5

The tool set covers the essential lifecycle: geocode → search availability, search providers → get provider, coverage summaries, comparisons, and data file discovery. Minor gaps exist (e.g., no direct address search, but geocoding prerequisites handle it), but the surface is comprehensive for FCC broadband analysis.