loc8n Geographic Data
NPM · @GENER8V/MCP-GEOGRAPHIC-DATA · 2 COMPONENTS · SCANNED AUG 3
U.S. demographics, housing, mortgage, migration, and employment data via loc8n API
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →
Supply Chain Security86
- No malware found by supply-chain analysis.Pass
- Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree.Partial
- No install/post-install scripts declared.Pass
- Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency97
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to gener8v/gener8v.mcp.geographic-data). View diagnostics → Pass
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 124 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability84
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 3310 tokens (~110/item across 30 items; 23 tools + 7 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
npm · @gener8v/mcp-geographic-data
claude mcp add gener8v-thomas-mcp-geographic-data -- npx -y @gener8v/mcp-geographic-data
codex mcp add gener8v-thomas-mcp-geographic-data -- npx -y @gener8v/mcp-geographic-data
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"gener8v-thomas-mcp-geographic-data": {
"type": "local",
"command": [
"npx",
"-y",
"@gener8v/mcp-geographic-data"
],
"enabled": true
}
}
} openclaw mcp add gener8v-thomas-mcp-geographic-data --command npx --arg -y --arg @gener8v/mcp-geographic-data
mcp_servers:
gener8v-thomas-mcp-geographic-data:
command: "npx"
args: ["-y", "@gener8v/mcp-geographic-data"] {
"mcpServers": {
"gener8v-thomas-mcp-geographic-data": {
"command": "npx",
"args": [
"-y",
"@gener8v/mcp-geographic-data"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 2 Aug 26 +39
- Provenance: unverified → pass ▲ security
- Install scripts: unverified → pass ▲ security
- Known CVEs: unverified → partial ▲ security
- The attested source repository moved: gener8v/gener8v.mcp.geographic-data security
- Security disclosure: fail → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- Schema quality: 100 → unverified ▼ functional
- Stability: unverified → 0.23 ▲ functional
- MCP protocol: unverified → pass ▲ functional
- Maintenance: unverified → pass ▲ functional
- Dependency health: unverified → partial ▲ functional
- License: unverified → pass ▲ functional
- Schema quality: unverified → excellent ▲ functional
- Licence: MIT functional
- 1 Aug 26 +15
- Malware scan: unverified → pass ▲ security
- 31 Jul 26 +2
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 −28
- Schema quality: 100 → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- 27 Jul 26 52
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Analysed npm/@gener8v/[email protected]
Provenance verified
Ecosystem: npm · Outcome: verified
Reason: verified
- Source repo:
- gener8v/gener8v.mcp.geographic-data
- Certificate issuer:
- https://token.actions.githubusercontent.com
- Certificate SAN:
- https://github.com/gener8v/gener8v.mcp.geographic-data/.github/workflows/publish.yml@refs/tags/v0.1.3
- Rekor log index:
- 1202164601
- Predicate type:
- https://slsa.dev/provenance/v1
- Subject digest:
- sha512:87ce626ddff652ce85a35ca240e52c9faaef4fb1859d0d2bc2d1e372177da98a99a84bbd66c850709d161666b161defec1b85d75406d411c7b3235bc4
- Discovery method:
- attestation_endpoint
Dependencies 94 packages
94 packages in the resolved dependency tree · 94 deprecated · 29 stale.
The dependency tree was only partially resolved, so these counts may be incomplete.
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
calculate_zip_code_distance ~82
Calculate the distance between two ZIP codes using either the Haversine or Vincenty formula. Returns origin/destination details and the computed distance.
| Name | Type | Req | Description |
|---|---|---|---|
| from | string | yes | Origin ZIP code (5 digits) |
| method | string | — | Calculation method |
| to | string | yes | Destination ZIP code (5 digits) |
| unit | string | — | Distance unit |
No output schema declared.
No examples provided.
compare_demographics ~93
Compare demographics side by side for two to ten ZIP codes. Returns each ZIP's demographic profile plus summary comparison ranges (population, income, housing).
| Name | Type | Req | Description |
|---|---|---|---|
| categories | array | — | Optional list of categories to include in the comparison. |
| data_year | integer | — | Specific ACS data year. Omit for the most recent available year. |
| zip_codes | array | yes | Two to ten 5-digit ZIP codes to compare. |
No output schema declared.
No examples provided.
compare_employment ~126
Compare employment data for multiple areas side by side (2-10 areas). All geoids must share the same area type. Returns per-area metrics including total jobs, industry mix, earnings, and age breakdown.
| Name | Type | Req | Description |
|---|---|---|---|
| area_type | string | yes | Geographic level shared by all geoids. |
| geoids | string | yes | Comma-separated FIPS codes to compare (2-10). All must match the specified area type. |
| perspective | string | — | workplace (default) or residence. |
| year | integer | — | Data year. Omit to use the most recent available year. |
No output schema declared.
No examples provided.
compare_mortgage ~148
Compare mortgage lending metrics across 2-5 geographic areas for a single HMDA data year. All areas must be the same geographic level (tract, county, or state). Returns side-by-side summaries including origination count, denial rate, median loan amount, and loan type/purpose breakdowns for each area. Source: CFPB/FFIEC HMDA.
| Name | Type | Req | Description |
|---|---|---|---|
| area_type | string | yes | Geographic level (must be same for all areas): tract (or census_tract), county, or state |
| geoids | array | yes | Array of 2-5 FIPS codes to compare |
| year | integer | — | HMDA data year (default: most recent available) |
No output schema declared.
No examples provided.
find_zip_codes_in_radius ~106
Find all ZIP codes within a given radius of a center ZIP code. Returns each nearby ZIP with its distance from the center.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | Maximum number of results (1 to 500, default 100) |
| radius | number | yes | Search radius (0.1 to 500) |
| sort | string | — | Sort order for results |
| unit | string | — | Distance unit |
| zipCode | string | yes | Center ZIP code (5 digits) |
No output schema declared.
No examples provided.
geocode_address ~148
Convert a street address or place name into geographic coordinates. Returns up to 'limit' candidate results with coordinates, formatted address, address components, confidence score, and provider name. The optional 'country' parameter biases (but does not strictly filter) results toward the given country.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | The address or place name to geocode (minimum 3 characters). |
| country | string | — | 2-letter uppercase ISO 3166-1 country code to bias results (e.g., 'US'). Biases but does not strictly filter — results from other countries may appear. |
| limit | integer | — | Maximum number of results to return (1-10, default 5). |
No output schema declared.
No examples provided.
get_commute_flows ~234
Retrieve commute flow (origin-destination) data for a county or state. Shows where workers come from (inbound) or where residents commute to (outbound). Returns top flow pairs with job counts and a 3-supersector industry breakdown (Goods Producing, Trade/Transport/Utilities, All Other Services). Note: this uses OD data with a coarser industry breakdown than the 20-sector NAICS detail available in single-area employment summaries. Not available at the tract level.
| Name | Type | Req | Description |
|---|---|---|---|
| area_type | string | yes | Geographic level: county or state (tract is not supported for flows). |
| direction | string | yes | inbound = where workers come from; outbound = where residents commute to. |
| geoid | string | yes | FIPS code — 5 digits for county, 2 for state. |
| limit | integer | — | Number of top flow pairs to return (1-100, default 25). |
| min_jobs | integer | — | Minimum job count threshold to include a flow pair (default 0). |
| year | integer | — | Data year. Omit to use the most recent available year. |
No output schema declared.
No examples provided.
get_demographics ~160
Retrieve a full demographic profile (population, income, housing, education, employment, households) for a single geographic area such as a ZIP code, county, state, place, CBSA, census tract, or block group.
| Name | Type | Req | Description |
|---|---|---|---|
| area_code | string | yes | Area identifier: 5-digit ZIP, 2-digit state FIPS, 5-digit county FIPS, 11-digit tract GEOID, 12-digit block group GEOID, place FIPS, or CBSA code. |
| area_type | string | yes | Geographic area type. Use 'zip' for ZIP codes, or a Census boundary type. |
| data_year | integer | — | Specific ACS data year (e.g. 2023). Omit for the most recent available year. |
No output schema declared.
No examples provided.
get_demographics_category ~133
Retrieve specific demographic categories (e.g. population, income, housing) for a geographic area. Use this instead of get_demographics when you only need a subset of categories to keep the response concise.
| Name | Type | Req | Description |
|---|---|---|---|
| area_code | string | yes | Area identifier (ZIP code, FIPS code, GEOID, or CBSA code). |
| area_type | string | yes | Geographic area type. |
| categories | array | yes | One or more demographic categories to retrieve: population, income, housing, education, employment, households. |
| data_year | integer | — | Specific ACS data year. Omit for the most recent available year. |
No output schema declared.
No examples provided.
get_demographics_trend ~118
Retrieve historical demographic data across multiple years for a single geographic area, useful for analysing population growth, income changes, or housing trends over time.
| Name | Type | Req | Description |
|---|---|---|---|
| area_code | string | yes | Area identifier (ZIP code, FIPS code, GEOID, or CBSA code). |
| area_type | string | yes | Geographic area type. |
| end_year | integer | — | Last year of the range. Omit for the most recent available year. |
| start_year | integer | — | First year of the range. Omit for the earliest available year. |
No output schema declared.
No examples provided.
get_employment ~172
Retrieve employment data for a single geographic area. Returns total jobs, industry mix by NAICS sector, earnings distribution, and age breakdown. The 'perspective' parameter controls whether data reflects jobs physically located in the area (workplace, WAC data — default) or jobs held by the area's residents regardless of where they work (residence, RAC data).
| Name | Type | Req | Description |
|---|---|---|---|
| area_type | string | yes | Geographic level: tract, county, or state. |
| geoid | string | yes | FIPS code for the area — 11 digits for tract, 5 for county, 2 for state. |
| perspective | string | — | workplace (jobs located in the area, default) or residence (jobs held by area residents). |
| year | integer | — | Data year. Omit to use the most recent available year. |
No output schema declared.
No examples provided.
get_employment_trend ~132
Retrieve employment data across all available years for a single area. Returns an array of yearly metrics (total jobs, industry mix, earnings, age breakdown) ordered ascending by year. Use 'perspective' to choose workplace (default) or residence.
| Name | Type | Req | Description |
|---|---|---|---|
| area_type | string | yes | Geographic level: tract, county, or state. |
| geoid | string | yes | FIPS code for the area — 11 digits for tract, 5 for county, 2 for state. |
| perspective | string | — | workplace (jobs located in the area, default) or residence (jobs held by area residents). |
No output schema declared.
No examples provided.
get_fair_market_rent ~188
Look up HUD Fair Market Rent (FMR) rates for a geographic area by ZIP code, county FIPS, CBSA/metro code, or state FIPS. Returns monthly rent estimates by bedroom count (efficiency through 4-bedroom). Note: State-level queries return all ZIP-level FMR records within the state, which can be hundreds of records. Use ZIP or county lookups when only a single area is needed. Source: U.S. Dept. of Housing & Urban Development, Fair Market Rents.
| Name | Type | Req | Description |
|---|---|---|---|
| area_code | string | yes | Area identifier — format depends on area_type |
| area_type | string | yes | Geographic area type: zip (5-digit), county (5-digit FIPS), cbsa (CBSA/metro code), or state (2-digit FIPS) |
| year | integer | — | FMR fiscal year (default: latest available) |
No output schema declared.
No examples provided.
get_fmr_trend ~169
Retrieve Fair Market Rent data across multiple years for a single area. Returns an array of yearly FMR records with rent values by bedroom count. Supports ZIP, county, and CBSA area types. State-level trends are not supported because state queries return aggregated lists of ZIP-level records, not a single time series. Source: U.S. Dept. of Housing & Urban Development, Fair Market Rents.
| Name | Type | Req | Description |
|---|---|---|---|
| area_code | string | yes | Area identifier — format depends on area_type |
| area_type | string | yes | Geographic area type: zip, county, or cbsa (state is not supported for trends) |
| end_year | integer | — | Last year of the range (default: latest available) |
| start_year | integer | — | First year of the range (default: earliest available) |
No output schema declared.
No examples provided.
get_migration_flows ~251
Retrieve top inflow or outflow areas for a county or state, ranked by number of tax returns or AGI. Inflows show where people moved from (into this area); outflows show where people moved to (out of this area). Returns an array of flow records with FIPS, area name, returns, exemptions, and AGI (in thousands of dollars). Some flow entries may be suppressed by the IRS for privacy when returns fall below the disclosure threshold. Source: IRS Statistics of Income.
| Name | Type | Req | Description |
|---|---|---|---|
| direction | string | yes | Flow direction: inflow (moved into area) or outflow (moved out of area) |
| fips | string | yes | FIPS code — 5 digits for county, 2 for state |
| level | string | yes | Geographic level: county or state |
| limit | integer | — | Number of top flow areas to return (1-50, default: 10) |
| sort | string | — | Ranking metric: 'returns' (household count) or 'agi' (income). Default: 'returns'. |
| year | string | — | Year pair (e.g., '2021-2022'). Defaults to most recent available. |
No output schema declared.
No examples provided.
get_migration_summary ~160
Retrieve migration summary for a county or state showing aggregate inflows, outflows, and net migration. Returns net returns (positive = net in-migration, negative = net out-migration), net exemptions (proxy for people), and net AGI (adjusted gross income in thousands of dollars). Year is specified as a year pair (e.g., '2021-2022') representing tax filing year transitions. Source: IRS Statistics of Income.
| Name | Type | Req | Description |
|---|---|---|---|
| fips | string | yes | FIPS code — 5 digits for county, 2 for state |
| level | string | yes | Geographic level: county or state |
| year | string | — | Year pair (e.g., '2021-2022'). Defaults to most recent available. |
No output schema declared.
No examples provided.
get_migration_trends ~109
Retrieve migration summary data across all available year pairs for a county or state. Returns an array of yearly migration summaries sorted by year pair, each including net returns, net exemptions, net AGI, and inflow/outflow breakdowns. AGI values are in thousands of dollars. Source: IRS Statistics of Income.
| Name | Type | Req | Description |
|---|---|---|---|
| fips | string | yes | FIPS code — 5 digits for county, 2 for state |
| level | string | yes | Geographic level: county or state |
No output schema declared.
No examples provided.
get_mortgage_summary ~146
Retrieve the mortgage lending summary for a single geographic area (census tract, county, or state) from HMDA data. Returns origination count, denial rate, median loan amount, median interest rate, loan purpose mix, and loan type mix (conventional, FHA, VA, USDA). Source: CFPB/FFIEC HMDA.
| Name | Type | Req | Description |
|---|---|---|---|
| area_type | string | yes | Geographic level: tract (or census_tract), county, or state |
| geoid | string | yes | FIPS code — 11 digits for tract, 5 for county, 2 for state |
| year | integer | — | HMDA data year (default: most recent available) |
No output schema declared.
No examples provided.
get_mortgage_trends ~117
Retrieve multi-year mortgage lending data for a single area across all available HMDA years. Returns an array of yearly summaries including origination count, denial rate, median loan amount, median interest rate, and loan purpose/type breakdowns. Source: CFPB/FFIEC HMDA.
| Name | Type | Req | Description |
|---|---|---|---|
| area_type | string | yes | Geographic level: tract (or census_tract), county, or state |
| geoid | string | yes | FIPS code — 11 digits for tract, 5 for county, 2 for state |
No output schema declared.
No examples provided.
lookup_zip_code ~69
Look up full details for a single 5-digit US ZIP code, including city, state, county, timezone, coordinates, area codes, land/water area, and elevation.
| Name | Type | Req | Description |
|---|---|---|---|
| zipCode | string | yes | The 5-digit ZIP code to look up (e.g., "30301") |
No output schema declared.
No examples provided.
reverse_geocode ~66
Convert a latitude/longitude coordinate pair into a street address. Returns the best-match formatted address, address components, and coordinates.
| Name | Type | Req | Description |
|---|---|---|---|
| latitude | number | yes | Latitude in decimal degrees (-90 to 90). |
| longitude | number | yes | Longitude in decimal degrees (-180 to 180). |
No output schema declared.
No examples provided.
search_areas ~94
Search for geographic areas by name across all boundary types (county, state, CBSA, census tract, ZIP). Uses trigram matching for fuzzy name search.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | Maximum number of results (1 to 50, default 20) |
| query | string | yes | Search term -- name or partial ZIP code (minimum 2 characters) |
| types | array | — | Restrict to specific boundary types |
No output schema declared.
No examples provided.
search_zip_codes_by_city ~67
Search for all ZIP codes in a given city and state. Returns the full list of matching ZIP codes with details.
| Name | Type | Req | Description |
|---|---|---|---|
| city | string | yes | City name (e.g., "Atlanta") |
| state | string | yes | 2-letter state abbreviation (e.g., "GA") |
No output schema declared.
No examples provided.