# Geocodio MCP

> Geocodio lets you handle all your North American location data through natural conversation. It performs batch geocoding and reverse geocoding for US/Canada, pulling deep Census demographics and legislative records directly into your workflow. Use it to validate addresses, find coordinates, or pull neighborhood statistics for thousands of points at once.

## Overview
- **Category:** developer-tools
- **Price:** Free
- **Tags:** geocoding, reverse-geocoding, address-validation, census-data, data-enrichment, spatial-data

## Description

Need to understand a physical address—where exactly is it, what area does it fall into, and what kind of economic data belongs there? This MCP connects your AI client directly to Geocodio's powerful location tools. Instead of jumping between spreadsheets, mapping services, and census websites, you ask your agent, 'What's the demographic profile for this block?' The tool handles the complex process of finding coordinates, validating the address against official records, and enriching that data with everything from timezones to congressional district boundaries. It’s built for high-volume work; whether you're analyzing a list of 50 or 5,000 addresses, it processes the batch efficiently. Because this MCP is hosted on Vinkius, your AI client accesses all these complex location functions through one single connection point, making geo-analysis as simple as chatting with a colleague.

## Tools

### batch_enriched_geocode
Processes multiple addresses simultaneously and adds detailed time zone information.

### batch_geocode_addresses
Identifies the precise coordinates for a list of specific addresses in bulk.

### batch_enriched_reverse
Automatically validates a batch of addresses and pulls associated Census demographic models.

### batch_reverse_pins
Takes a list of coordinates and verifies them to find the matching street address or delivery point.

### format_coordinate_string
Creates a standardized JSON payload structure from existing location strings for easy use elsewhere.

### geocode_us_address
Finds the coordinates and structured data for a single US or Canadian address input.

### geocode_enriched_fields
Extracts detailed demographic properties, such as Census information, from an address location.

### list_schema_fields
Checks and reports exactly which fields of data are available for retrieval from the service.

### reverse_geocode
Takes coordinates and retrieves the full associated street address in the US or Canada.

### reverse_enriched_fields
Retrieves specific structured rules, such as congressional district boundaries, for a given set of coordinates.

## Prompt Examples

**Prompt:** 
```
Geocode this address: '1109 N Highland St, Arlington, VA'
```

**Response:** 
```
Address geocoded! The coordinates for 1109 N Highland St are Lat: 38.88667, Lng: -77.0944. This location is now mapped into valid coordinate blocks for your analysis.
```

**Prompt:** 
```
Reverse geocode '38.886, -77.094' and show me the Congressional District
```

**Response:** 
```
Reverse geocoding complete! The address is '1109 N Highland St, Arlington, VA'. This location belongs to Virginia's 8th Congressional District. Would you like the representative's name?
```

**Prompt:** 
```
Get economic data for this address: 'White House, DC'
```

**Response:** 
```
Retrieving Census data... For the White House area, the ACS economics data shows a median household income of $120k+ and an unemployment rate of 3.2%. I can provide full neighborhood statistics for this block.
```

## Capabilities

### Geocoding Addresses
Takes an address string and reliably outputs precise latitude and longitude coordinates for US/Canada locations.

### Reverse Geocoding
Turns a set of coordinates back into a formatted street address, identifying the specific neighborhood or grid system it belongs to.

### Census Data Enrichment
Appends detailed demographic information—like median income or unemployment rates from ACS data—to any given location record.

### Legislative Mapping
Determines which political boundaries, such as congressional districts or state lines, encompass a specific geographic point.

### High-Volume Batch Processing
Processes large arrays of up to 10,000 addresses in one go, managing the workflow without manual intervention.

## Use Cases

### Analyzing a new development site
A real estate developer needs to understand the potential market. Instead of guessing, they prompt their agent: 'Get me the Census data and time zones for these 50 coordinates.' The tool uses `batch_enriched_reverse` to deliver median income and local economic indicators immediately.

### Compliance auditing a mailing list
A compliance officer receives a list of addresses that need jurisdiction checks. They use the MCP to run the batch through `batch_geocode_addresses` first, then follow up with a request for legislative boundaries using the tool's capability to map congressional districts.

### Validating user-submitted locations
A software developer needs to ensure that location inputs are clean. They use `geocode_us_address` and then run it through a structured test using the MCP's field validation logic, confirming the data type matches expected coordinates.

### Building an internal logistics map
A supply chain manager needs to know the exact street address for GPS pins received from drivers. They use `batch_reverse_pins` with a batch of raw coordinates, which immediately returns validated delivery alternatives and street grids.

## Benefits

- Stop manually cross-referencing addresses. Use `geocode_us_address` to get coordinates, then use `geocode_enriched_fields` in a single chat turn to pull associated ACS economic data.
- Handle massive datasets without hitting limits. The batch tools (like `batch_geocode_addresses`) process up to 10,000 locations at once, saving hours of manual API calls and spreadsheet work.
- Pinpoint political boundaries instantly. Use the MCP's capabilities to determine which congressional district a coordinate belongs to, essential for compliance or campaign modeling.
- Improve data integrity by validating every entry. If you run `batch_enriched_reverse`, the tool validates addresses against Census models before giving you results, reducing junk data.
- Understand what data is available upfront. Run `list_schema_fields` to know exactly which demographic or legislative fields your agent can pull for any given location.

## How It Works

The bottom line is you get clean, validated geographical and demographic data without ever leaving your chat window or IDE.

1. Subscribe to this MCP and provide your Geocodio API Key within your client's settings.
2. Tell your agent what you need. You can ask it to geocode a list of addresses or reverse geocode coordinates.
3. The MCP runs the necessary checks, validates the data against US/Canada records, and returns structured JSON containing the coordinates, demographics, and any other requested context.

## Frequently Asked Questions

**Can Geocodio MCP handle more than 10,000 addresses?**
The listing supports batch processing up to 10,000 physical locations in a single request. For extremely high volumes beyond this, you'll need to implement chunking logic within your client workflow.

**What kind of data can I pull using geocode_enriched_fields?**
You can retrieve structural properties like Census demographics (ACS), timezones, and state legislative layouts. The tool's schema is flexible, allowing you to query specific fields.

**Does Geocodio MCP support addresses outside of the US or Canada?**
No. This MCP is specifically designed for geocoding and validating addresses within North America (US/Canada) only. It will not process international locations.

**What is the difference between reverse_geocode and batch_reverse_pins?**
The `reverse_geocode` tool takes coordinates to find a general, formatted street address. The `batch_reverse_pins` tool is designed for high volume, taking a list of pins to verify them against specific delivery alternatives.

**How do I check what data fields are available before running a query?**
Use the `list_schema_fields` function. It validates the API logic and informs your agent exactly which demographic or legislative bounds you can request synchronously, saving time on faulty queries.