Pinloft: Batch Geocoder — Address to Lat/Long + Census FIPS
Server Details
Pinloft: US address to lat/lon, county, FIPS; reverse geocoding. Free, no key.
- Status
- Healthy
- Uptime
- 100.0% over 19 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- shawmena-dotcom/product-factory
- GitHub Stars
- 0
TDQS
Scored across 2 tools
geocode_address (forward: address→coordinates) and reverse_geocode (backward: coordinates→address) target opposite, unambiguous directions. An agent can never confuse which to call given a known input type.
Both names use consistent snake_case with a clear verb_noun-ish structure (geocode_address, reverse_geocode). Patterns match and read predictably.
Two tools is thin, but for a narrowly scoped geocoder covering both directions it is exactly the needed surface with no redundancy. Nothing extraneous, though there is little room for expansion.
Forward and reverse geocoding are both covered, including the batch (up to 5) capability and FIPS/district enrichment. Only minor gaps exist, e.g. no dedicated single-address validation or bulk-async job handling.
Available Tools
2 toolsgeocode_addressAddress to latitude/longitude (+ US county and FIPS)ARead-onlyIdempotentInspect
Convert up to 5 street addresses to latitude/longitude with a cleaned, matched address and match confidence. US addresses also get state, county, tract, block group and block FIPS codes (US Census geocoder); include_districts adds congressional and state legislative districts, city, school district and metro area. Worldwide addresses use OpenStreetMap.
| Name | Required | Description | Default |
|---|---|---|---|
| country | No | "auto" (default), "US", or ISO-2 codes for non-US lookups | |
| addresses | Yes | Addresses, one per item, e.g. "1600 Pennsylvania Ave NW, Washington, DC 20500" or "10 Downing St, London". Up to 5. | |
| include_districts | No | Add districts for US matches |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds real context beyond that: the 5-address batch cap, the cleaned/matched address with match confidence, and the differing backends (US Census geocoder vs OpenStreetMap) for US and worldwide addresses.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences: core conversion first, then US-only enrichments, then the worldwide fallback. Nothing is padding and every clause carries new information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description does the heavy lifting by naming the returned fields (coordinates, cleaned matched address, match confidence, FIPS codes). It omits failure behavior for unmatched or mixed US/non-US batches and any rate/accuracy caveats, which keeps it short of a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds value beyond the schema by spelling out exactly what include_districts returns (congressional, state legislative, city, school district, metro area) and tying country values to the US-Census-versus-OSM backend split.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a precise verb and resource ('Convert ... street addresses to latitude/longitude') and enumerates the derived outputs. The forward direction inherently distinguishes it from the sibling reverse_geocode, so an agent can route correctly without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains what US versus worldwide lookups return and what include_districts unlocks, which implies usage, but never states when to pick this over reverse_geocode or what happens with ambiguous/unmatched addresses. Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reverse_geocodeCoordinates to street address (+ US FIPS and districts)ARead-onlyIdempotentInspect
Convert up to 5 latitude/longitude points to the nearest street address (OpenStreetMap), and for US points add state/county/tract/block FIPS codes and congressional/state districts from the US Census geocoder.
| Name | Required | Description | Default |
|---|---|---|---|
| coordinates | Yes | "latitude,longitude" strings, e.g. "40.7484,-73.9857" |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnly, idempotent, non-destructive, open-world), lowering the bar. The description usefully adds behavioral facts beyond those: a per-call limit of 5 points, the external data sources (OpenStreetMap and US Census geocoder), and conditional US-only enrichment.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One tightly written sentence with no filler. The core reverse-geocoding action is front-loaded, and the US enrichment detail follows subordinate to it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the burden of explaining returns, and it does identify the returned data categories (address, FIPS codes, districts). It stops short of stating result ordering or failure behavior for invalid points, but is otherwise complete for a simple one-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single parameter already documents format, examples, and min/max items. The description largely repeats the 'up to 5 latitude/longitude points' constraint rather than adding syntax or semantics beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Convert'), specific input resource (latitude/longitude points), and specific outputs (nearest street address plus US FIPS codes and districts). The reverse direction is explicit, so an agent can distinguish it from geocode_address without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the purpose: use this when you have coordinates and want an address. However, it never explicitly names the sibling geocode_address or states when to prefer one over the other, so the boundary is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- Changed
geocode_address1 field changed- added
Input schema / properties / addresses / examplesAdded value: +[ + [ + "1600 Pennsylvania Ave NW, Washington, DC 20500" + ] +]
- Changed
reverse_geocode1 field changed- added
Input schema / properties / coordinates / examplesAdded value: +[ + [ + "40.7484,-73.9857" + ] +]
2 tool updates
- First observed
geocode_address - First observed
reverse_geocode
Related MCP Connectors
Pinloft: US address to lat/lon, county, FIPS; reverse geocoding. Free, no key.
Pinloft: US address to lat/lon, county, FIPS; reverse geocoding. Free, no key.
Ziplore: US ZIP to county, FIPS, time zone, Census demographics; radius and city ZIPs. Free, no key.
Ziplore: US ZIP to county, FIPS, time zone, Census demographics; radius and city ZIPs. Free, no key.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables forward and reverse geocoding of US addresses, returning coordinates and the full Census geography stack with GEOIDs, including batch geocoding of up to 100 addresses.16 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables geocoding and reverse geocoding of addresses, including batch processing up to 10,000 addresses and optional data fields such as congressional district, census/FIPS, timezone, and demographics.25 npmMIT
- AlicenseAqualityDmaintenanceGlobal postal code lookups, validation, and city search for 240+ countries with timezone, admin region, and elevation metadata. Sub-10ms responses at $0.000028/query with 1,000 free queries on signup.41MIT
- AlicenseAqualityCmaintenanceProvides access to the U.S. Census Bureau Geocoding Services API, enabling geocoding addresses, reverse geocoding coordinates, and retrieving Census geographies without an API key.12MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.