Buffalo NY Police Crime Incidents (City of Buffalo Open Data)
buffalonyopendata/crime-incidents
Police-reported crime incidents in Buffalo, New York from the City of Buffalo open data portal (Buffalo Police Department): case number, date and time, incident type and parent category (Theft, Assault, Robbery, Breaking and Entering, and so on), street address (hundred-block), neighborhood, police district, council district, ZIP and latitude and longitude. Newest first by default; filter with a SoQL where clause such as parent_incident_type='Theft' AND incident_datetime > '2026-10-01T00:00:00'. 1 to 200 rows per call. The data is preliminary and updated daily. Passed through and served by Eden Engine; not an official City of Buffalo product.
Price
$0.0026 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $0.50.
Data source
Data from the City of Buffalo, NY open data portal (data.buffalony.gov); crime incident records are published by the Buffalo Police Department as Public Domain U.S. Government per the dataset's own metadata. Served by Eden Engine; not an official City of Buffalo product.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
Connect once and your AI can find and run this tool, and any other it needs.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "buffalonyopendata/crime-incidents" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "buffalonyopendata/crime-incidents" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "buffalonyopendata/crime-incidents", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "buffalonyopendata/crime-incidents", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.0026 |
- Updated
- Oct 24, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"limit"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Number of incident rows to return, 1 to 200."
},
"order": {
"type": "string",
"default": "incident_datetime DESC",
"pattern": "^[a-z0-9_]+( (ASC|DESC))?$",
"description": "Sort column and direction, for example incident_datetime DESC (the default, newest first) or neighborhood ASC."
},
"where": {
"type": "string",
"maxLength": 300,
"minLength": 3,
"description": "Optional SoQL filter on the dataset's columns, for example parent_incident_type='Theft' AND incident_datetime > '2026-10-01T00:00:00'. Columns: case_number, incident_datetime, incident_type_primary, parent_incident_type, incident_description, hour_of_day, day_of_week, address_1, neighborhood, police_district, council_district, zip_code, latitude, longitude. Text values are case sensitive and in single quotes."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"latitude": {
"type": "string"
},
"zip_code": {
"type": "string"
},
"address_1": {
"type": "string",
"description": "Hundred-block street address."
},
"longitude": {
"type": "string"
},
"case_number": {
"type": "string"
},
"day_of_week": {
"type": "string"
},
"hour_of_day": {
"type": "string"
},
"neighborhood": {
"type": "string"
},
"police_district": {
"type": "string"
},
"council_district": {
"type": "string"
},
"incident_datetime": {
"type": "string",
"description": "Local Buffalo time, no UTC offset."
},
"incident_description": {
"type": "string"
},
"parent_incident_type": {
"type": "string"
},
"incident_type_primary": {
"type": "string"
}
},
"additionalProperties": true
},
"description": "One object per incident; empty when nothing matches the filter."
}
},
"description": "`results` holds the incident rows exactly as the portal sends them. Every value is a string except `location`.",
"additionalProperties": true
}