Skip to main content
Glama
shawndoor

DoorProfit Crime & Neighborhood Data

Get Crime Data & Safety Score

get_crime_data
Read-onlyIdempotent

Retrieve a crime safety grade and incident history for any US address or coordinate pair, with a letter score, per-crime breakdown, and 90-day incidents within 1000 feet.

Instructions

Crime safety grade and incident history for one US address or coordinate pair: a letter score (A+ safest through F), a per-crime-type breakdown against the national average, and the individual incidents recorded within 1000ft over a rolling 90-day window. Use this for "is this address/neighborhood safe?" questions. Do NOT use it for demographics, income, rent or schools (use get_neighborhood_data) or for registered offenders (use search_offenders) — neither is included here. Pass either address or lat+lng, not both. US locations only; requires a DoorProfit API key and consumes 1 call from that key's quota, except for the free test address "500 Main St, Dallas, TX 75202".

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
latNoLatitude (use together with lng, as an alternative to address).
lngNoLongitude (use together with lat, as an alternative to address).
addressNoFull US street address, e.g. "500 Adams St, Tulsa, OK". Provide either address OR lat+lng.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
successYes
locationNoThe resolved location for the query.
incidentsNoRecent crime incidents near the location.
test_modeNoTrue when querying the free test address.
crime_scoreNoLetter safety grade from A+ (safest) to F.
crime_numericNo0-1 scale where 1 is safest.
crime_breakdownNoPer-crime-type comparison vs the national average (e.g. assault, burglary, theft).
crime_descriptionNoHuman-readable explanation of the score.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavioral context: quota consumption (1 call per key), the 90-day rolling window, 1000ft radius, and the free test exception. These operational details go beyond annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but front-loaded with the most important info (what it returns) before usage guidance. Every sentence earns its place. Slightly long but each clause conveys distinct value; could be trimmed slightly but nothing is filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is an output schema present, so return values are handled. The description covers inputs, constraints, exclusions, quota/auth, and a test path. For a moderately complex tool with 3 params and good schema coverage, this is near-complete. Minor gaps: no mention of response format details, but output schema covers that.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 3 parameters. The description adds the key constraint that address and lat+lng are mutually exclusive and the format example. This is useful but modest supplement; baseline 3 is appropriate given full schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description has a specific verb+resource ('Get Crime Data & Safety Score') and clearly states what it returns: a letter score, per-crime-type breakdown against national average, and incident history within 1000ft over a 90-day window. It distinguishes from siblings by explicitly naming them and what they cover.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Excellent when/when-not guidance. States use case ('is this address/neighborhood safe?'), explicit exclusions (demographics, income, rent, schools via get_neighborhood_data; offenders via search_offenders), input constraints (address XOR lat+lng, US only), and quota/API key requirements including a free test address.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/shawndoor/doorprofit-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server