# Neighborhood Intel by ZIP: Crime, Walk Score, Rent (`andrew_avina/neighborhood-intelligence-mcp`) Actor

Investment analysis by ZIP — crime index, walk score, school rating, 3-yr rent growth, vacancy, gentrification trend, Investor Score (1-10). Top: 43215 Columbus OH — Walk 91, 8.6% rent growth, Score 9. Census ACS live data with API key.

- **URL**: https://apify.com/andrew\_avina/neighborhood-intelligence-mcp.md
- **Developed by:** [Andrew Avina](https://apify.com/andrew_avina) (community)
- **Categories:** MCP servers, Business
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-usage

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Neighborhood Intelligence MCP

**Demographics, school ratings, crime index, walkability, renter profile, and investor suitability scores by US ZIP code — covering 20 high-investor-interest markets with 40 curated ZIP codes.**

Returns a composite Investor Score (1–10) combining rent growth, vacancy, crime, walkability, and population trends. Supports live Census ACS data when a Census API key is supplied.

---

### What It Returns

| Field | Description |
|-------|-------------|
| `zip` | ZIP code |
| `city` | City name |
| `state` | Two-letter state code |
| `neighborhood` | Neighborhood name or district |
| `population` | Total population |
| `median_household_income` | Median household income ($) |
| `median_home_value` | Median home value ($) |
| `median_gross_rent` | Median gross rent including utilities ($) |
| `renter_occupied_pct` | % of occupied units that are renter-occupied |
| `owner_occupied_pct` | % of occupied units that are owner-occupied |
| `vacancy_rate_pct` | Residential vacancy rate (%) |
| `poverty_rate_pct` | Population below poverty line (%) |
| `median_age` | Median resident age |
| `pct_college_educated` | % of adults 25+ with bachelor's degree or higher |
| `pct_white` / `pct_black` / `pct_hispanic` | Racial/ethnic composition (%) |
| `population_growth_5yr_pct` | Population change over 5 years (%) |
| `school_rating` | GreatSchools rating 1–10 (district average) |
| `school_rating_source` | Data source for school rating |
| `crime_index` | Crime index 0–100 (lower = safer; 100 = highest crime) |
| `crime_index_note` | Crime context and trend |
| `violent_crime_per_100k` | Violent crime rate per 100,000 residents |
| `property_crime_per_100k` | Property crime rate per 100,000 residents |
| `walk_score` | Walk Score 0–100 (90+ = Walker's Paradise) |
| `transit_score` | Transit Score 0–100 |
| `bike_score` | Bike Score 0–100 |
| `top_employers` | Major employers within commute distance |
| `rent_to_income_ratio` | Median rent ÷ median income (>0.30 = rent-burdened market) |
| `rent_growth_3yr_pct` | 3-year rent growth rate (%) |
| `investor_profile` | Plain-English investor strategy summary |
| `neighborhood_trend` | Gentrifying / Stable / Improving / Declining / Stabilizing |
| `gentrification_risk` | None / Low / Low-Moderate / Moderate / Active / High / Complete |
| `investor_score` | Composite investor score 1–10 |
| `investor_score_note` | Key factors driving the score |
| `data_source` | Data provenance |

---

### Investor Score (1–10)

The composite score weights five factors:

| Factor | Weight | Notes |
|--------|--------|-------|
| Rent growth (3yr) | High | ≥8% = +2; ≥5% = +1; ≤0% = −2 |
| Vacancy rate | Medium | ≤6% = +1; ≥14% = −2 |
| Crime index | Medium | ≤30 = +2; ≤50 = +1; ≥70 = −1; ≥85 = −2 |
| Walk Score | Low | ≥80 = +1; ≤25 = −1 |
| Population growth | Low | ≥8% = +1; ≤−3% = −1 |

A score of **8–10** = institutional-grade demand fundamentals; **5–7** = solid with manageable risks; **1–4** = distressed market requiring deep expertise.

---

### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `zip_code` | string | No | Filter by specific ZIP code |
| `city` | string | No | Filter by city name (partial match) |
| `state` | string | No | Filter by state code (e.g., "OH", "NC") |
| `investor_score_min` | integer | No | Minimum investor score (1–10) |
| `crime_index_max` | integer | No | Maximum crime index (0–100) |
| `walk_score_min` | integer | No | Minimum Walk Score |
| `min_median_income` | number | No | Minimum median household income |
| `min_rent_growth_pct` | number | No | Minimum 3-year rent growth % |
| `sort_by` | string | No | Sort: `investor_score` (default), `rent_growth`, `walk_score`, `crime_index`, `median_income`, `vacancy` |
| `limit` | integer | No | Max results (default: 20) |
| `census_api_key` | string | No | Census API key for live ACS data on specific ZIP queries |

Get a free Census API key at [api.census.gov/data/key_signup.html](https://api.census.gov/data/key_signup.html).

---

### Example Inputs

**Top investor ZIPs by score:**
```json
{
  "investor_score_min": 8,
  "sort_by": "investor_score",
  "limit": 10
}
````

**All Ohio ZIPs in the database:**

```json
{
  "state": "OH",
  "sort_by": "rent_growth"
}
```

**Low-crime, walkable markets only:**

```json
{
  "crime_index_max": 45,
  "walk_score_min": 70,
  "sort_by": "investor_score"
}
```

**Specific ZIP with live Census data:**

```json
{
  "zip_code": "28205",
  "census_api_key": "your_census_key_here"
}
```

***

### Example Output

```json
{
  "zip": "28205",
  "city": "Charlotte",
  "state": "NC",
  "neighborhood": "Plaza Midwood",
  "population": 32400,
  "median_household_income": 64800,
  "median_home_value": 420000,
  "median_gross_rent": 1680,
  "renter_occupied_pct": 52,
  "vacancy_rate_pct": 5.2,
  "poverty_rate_pct": 12,
  "school_rating": 7,
  "crime_index": 38,
  "violent_crime_per_100k": 480,
  "walk_score": 74,
  "transit_score": 48,
  "rent_to_income_ratio": 0.31,
  "rent_growth_3yr_pct": 9.4,
  "investor_profile": "High-growth appreciation market; walkable urban infill",
  "neighborhood_trend": "Gentrifying Fast",
  "gentrification_risk": "High",
  "investor_score": 9,
  "investor_score_note": "Top Charlotte market; rent growth + migration + finance sector = exceptional demand",
  "top_employers": "Bank of America, Wells Fargo, Duke Energy, Truist",
  "data_source": "Curated database (ACS 2022 + city crime reports + Walk Score)"
}
```

***

### Markets Covered

| City | State | ZIPs | Market Type |
|------|-------|------|-------------|
| Cleveland | OH | 44103, 44109 | Classic cash flow |
| Columbus | OH | 43204, 43215 | Growth market |
| Indianapolis | IN | 46218, 46204 | Turnkey/urban |
| Memphis | TN | 38106, 38117 | Value/quality split |
| Kansas City | MO | 64127, 64111 | BRRRR/urban |
| Charlotte | NC | 28205, 28216 | High-growth |
| Atlanta | GA | 30315 | BeltLine play |
| Nashville | TN | 37208 | Adjacency play |
| Austin | TX | 78702 | Tech/correction |
| Denver | CO | 80219 | Workforce LTR |
| Savannah | GA | 31401 | STR + appreciation |
| Birmingham | AL | 35203 | Low-tax cash flow |
| Greensboro | NC | 27401 | Workforce rental |
| Knoxville | TN | 37917 | UTK demand |

***

### Data Sources

- **US Census Bureau ACS 5-Year Estimates (2022)** — demographics, income, housing, education
- **City crime reports** — FBI UCR/NIBRS crime data, curated by ZIP
- **Walk Score** — walkability, transit, and bike scores
- **GreatSchools** — school district ratings
- **ACS 1-Year PUMS** — rent growth trend estimation

***

### Use Cases

- **Neighborhood due diligence** — validate property-level risk before acquisition
- **Portfolio market selection** — rank target markets by investor fundamentals
- **AI agent investment screening** — inject neighborhood data into automated deal analysis
- **Tenant quality forecasting** — income, education, and employment data predicts tenant stability
- **Gentrification play identification** — trend + crime + rent growth signals early-mover opportunity

***

### Related Actors in the Real Estate Suite

- **[Real Estate Investment Intelligence MCP](../real-estate-intelligence-mcp/)** — Property listings + deal scoring
- **[Property Tax Intelligence MCP](../property-tax-intelligence-mcp/)** — State/county tax rates and investment impact
- **[Rentcast Rental Market Intelligence MCP](../rentcast-market-mcp/)** — LTR rent estimates and market grades
- **[Mortgage Rate Intelligence MCP](../mortgage-rate-intelligence-mcp/)** — Current rates + affordability calculator

## Actor input object example

```json
{}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("andrew_avina/neighborhood-intelligence-mcp").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("andrew_avina/neighborhood-intelligence-mcp").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call andrew_avina/neighborhood-intelligence-mcp --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=andrew_avina/neighborhood-intelligence-mcp",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Neighborhood Intel by ZIP: Crime, Walk Score, Rent",
        "description": "Investment analysis by ZIP — crime index, walk score, school rating, 3-yr rent growth, vacancy, gentrification trend, Investor Score (1-10). Top: 43215 Columbus OH — Walk 91, 8.6% rent growth, Score 9. Census ACS live data with API key.",
        "version": "0.0",
        "x-build-id": "rWJiQOygn9BSfOvkW"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/andrew_avina~neighborhood-intelligence-mcp/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-andrew_avina-neighborhood-intelligence-mcp",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/andrew_avina~neighborhood-intelligence-mcp/runs": {
            "post": {
                "operationId": "runs-sync-andrew_avina-neighborhood-intelligence-mcp",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/andrew_avina~neighborhood-intelligence-mcp/run-sync": {
            "post": {
                "operationId": "run-sync-andrew_avina-neighborhood-intelligence-mcp",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {}
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
