SpotCrime MCP Server
Crime Intelligence as a Native Agent Tool
An early-access MCP server that exposes SpotCrime's real-time crime incident data as a first-class tool call — query incidents by location, straight inside your agent loop. No RAG pipeline to maintain. No retrieval layer to tune. No prompt engineering around unstructured HTTP.
Agents query structured, citable incident data. A neighborhood safety-score tool is on the roadmap. The SpotCrime Harness handles the wiring.
The agentic difference
Agents don't use APIs.
They use tools.
A REST endpoint requires your orchestration layer to construct requests, parse responses, handle errors, and translate raw JSON into something a model can reason over. That's latency, token overhead, and hallucination surface — before your agent does any actual work.
An MCP tool is different. It lives natively inside the model's context window. Your agent calls get_crime_incidents mid-reasoning — inline, without leaving the agent loop — and receives a structured, citable array. No parsing step. No intermediate representation. No prompt engineering required.
When an agent asks "which of these 12 locations has recent reported crime?" — it doesn't fetch 12 URLs and summarize. It calls get_crime_incidents twelve times in parallel, compares the results, and answers with attributable incidents. Grounded. Zero hallucination surface on the data layer.
The tool manifest
Query by location. Nationwide coverage.
The incident tool is in early access today; a safety-score tool is on the roadmap. Both are designed for agentic workloads — stateless, inference-ready output, safe to parallelize and chain.
get_crime_incidentsEarly AccessReturns a structured array of recent crime incidents near a location (latitude/longitude + radius) — type, date, coordinates, and description.
Wraps SpotCrime's live incident API as a native tool call. Returns discrete, attributable events from a rolling 90-day window — citation-grade data your model can surface in answers, reports, or downstream tool calls without hallucination risk. Stateless and safe to parallelize across many locations.
get_crime_incidents({ "lat": 39.402, "lon": -76.604, "radius": 0.02 })[
{
"type": "Theft",
"date": "2026-08-09",
"lat": 39.402,
"lon": -76.604,
"description": "Theft from vehicle"
},
{
"type": "Assault",
"date": "2026-08-07",
"lat": 39.398,
"lon": -76.601,
"description": "Aggravated assault"
}
]get_safety_scoreOn the roadmapA 0–100 neighborhood safety score for a location. Planned — not part of the current early-access build.
A forthcoming tool that will return a single, model-ready safety score for a lat/lon, percentile-ranked nationally. It is on the roadmap and not yet callable; the shape below is illustrative. Follow early access for availability.
get_safety_score({ "lat": 39.402, "lon": -76.604 }){ "lat": 39.402, "lon": -76.604, "score": 74 }Integration
The SpotCrime Harness
The SpotCrime Harness is the developer integration layer that wires the MCP server into your agent runtime — managing authentication, schema validation, response formatting, and rate-limit awareness so your model receives clean, inference-ready output from the first call.
One config block. No orchestration middleware. No custom tool wrappers. No glue code between your agent loop and the data layer.
From zero to first tool call in under 60 seconds. The harness ships with local test tooling so you can validate get_crime_incidents output before connecting to a production agent.
Compatible runtimes
{
"mcpServers": {
"spotcrime": {
"command": "npx",
"args": ["@spotcrime/mcp-server"],
"env": {
"SPOTCRIME_API_KEY": "your-key-here"
}
}
}
}{
"spotcrime": {
"command": "npx",
"args": ["@spotcrime/mcp-server"],
"env": {
"SPOTCRIME_API_KEY": "your-key-here"
}
}
}Agent use cases
What agents build with this
Every use case here is a chain of tool calls — not a prompt asking a model to guess.
Real Estate AI
Agent pulls recent incidents for every candidate area, ranks listings by recent activity, and flags hotspots automatically. No human lookup required.
get_crime_incidents(lat, lon)→ rank & filter→ report to buyerExecutive Protection
Pre-trip brief agent retrieves incidents along a principal's itinerary and route corridors, then generates citation-grade risk summaries.
get_crime_incidents(lat, lon)→ route corridors→ trip briefInsurance Underwriting
Autonomous underwriting agent pulls incident history for 500 policy addresses in a single batch loop. Structured output feeds directly into risk models.
get_crime_incidents × N→ risk tier→ pricing modelSite Selection
CRE agent compares candidate sites across geographies. Incident density across locations surfaces risk concentration without analyst hours.
get_crime_incidents × sites→ compare→ recommendMulti-Agent Pipelines
SpotCrime tools are chain-safe and stateless. Plug get_crime_incidents into any agent graph as a grounding node — no state to manage.
orchestrator agent→ get_crime_incidents→ downstream toolsRAG Augmentation
Augment retrieval with structured incidents. When a retrieval-augmented agent answers 'what's been reported here?' — it cites discrete events, not a paragraph.
retrieval layer+ get_crime_incidents→ grounded answerBuilding an agentic application with location risk?
Early access is open to teams integrating crime intelligence into agent pipelines — real estate AI, executive protection platforms, autonomous insurance underwriting, multi-agent travel safety, and LLM-powered site selection.
Tell us what you're building. We prioritize agent-native integrations.
Want the backstory? Read: how the SpotCrime MCP server works →