Skip to main content
Glama

DoorProfit Crime & Neighborhood Data

Ownership verified

Server Details

US crime scores, incidents, neighborhood demographics, rent data, and offender search by address.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.6/5 across 4 of 4 tools scored.

Server CoherenceA
Disambiguation4/5

The four tools are largely distinct: crime/safety data, neighborhood demographics, offender search, and API usage. The descriptions explicitly cross-reference which tool to use for which question, reducing confusion. However, get_crime_data and search_offenders both relate to safety in a place, so an agent might briefly hesitate, though the boundary (risk grade vs. individuals) is clearly drawn in both descriptions.

Naming Consistency4/5

Three of four tools follow a consistent get_/search_ + noun pattern with get_crime_data and get_neighborhood_data being very parallel. search_offenders deviates slightly by using search_ instead of get_, and get_api_usage is a different resource type (meta/tooling), but these deviations are reasonable and readable.

Tool Count4/5

Four tools is a reasonable scope for a data-lookup server covering crime, demographics, offenders, and usage. It sits at the low end but each tool covers a distinct, large data domain with query options (location mode, name mode, pagination), so none feels trivial or like filler.

Completeness4/5

The surface covers the three main residential-data question types (crime/safety, demographics, registered offenders) plus API monitoring, which is a coherent set for a neighborhood-intelligence API. Minor gaps exist—e.g., no schools data despite being casually mentioned in get_crime_data's exclusion note, and no bulk/list or batch endpoints—but core workflows are fully covered.

Available Tools

4 tools
get_api_usageCheck API Usage & QuotaA
Read-onlyIdempotent
Inspect

Report the plan, monthly and daily call usage, remaining quota, reset times, rate limit and overage status for the DoorProfit API key authenticating this session. Takes no arguments — it always describes the calling key, never another account. Call it when the user asks how many calls they have left, or after any other tool returns QUOTA_EXCEEDED or DAILY_LIMIT_EXCEEDED, to confirm the limit and reset time before suggesting an upgrade. This is the only tool that never consumes quota.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
successYes
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds valuable behavioral context beyond annotations: it explicitly states 'Takes no arguments — it always describes the calling key, never another account' and 'This is the only tool that never consumes quota,' two non-obvious behavioral traits an agent would otherwise not know. This is a strong addition; a 5 would require even richer detail on output structure or rate-limit nuances.

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

Conciseness5/5

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

Three sentences, each earning its place: the first states the report contents and scope, the second gives concrete usage triggers, the third adds the unique no-quota-consumption trait. No filler, no repetition of schema information, front-loaded with purpose.

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

Completeness5/5

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

The output schema exists, so return-value details are handled structurally. The description covers what the tool reports (plan, usage, quota, resets, limits, overage), when to call it, its zero-argument nature, and its unique non-consuming property. For a 0-parameter read-only tool with strong annotations, this is complete.

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

Parameters5/5

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

There are 0 parameters, so the description's job is to confirm the no-argument contract, which it does explicitly ('Takes no arguments'). The baseline for 0 params is 4, and the description earns the extra point by explicitly stating the no-arguments contract and clarifying that it always operates on the calling key, removing ambiguity about what 'no arguments' might default to.

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 uses a specific verb ('Report') with a clear resource ('the plan, monthly and daily call usage, remaining quota, reset times, rate limit and overage status') and explicitly scopes it to 'the DoorProfit API key authenticating this session,' distinguishing it from any other-account tool. It clearly differentiates from siblings like get_crime_data and get_neighborhood_data, which handle different domains entirely.

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?

Provides explicit when-to-use guidance: 'Call it when the user asks how many calls they have left, or after any other tool returns QUOTA_EXCEEDED or DAILY_LIMIT_EXCEEDED.' It also adds a concrete workflow suggestion ('before suggesting an upgrade'), giving the agent actionable context beyond the schema.

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

get_crime_dataGet Crime Data & Safety ScoreA
Read-onlyIdempotent
Inspect

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".

ParametersJSON 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

ParametersJSON Schema
NameRequiredDescription
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=true, openWorldHint=true, idempotentHint=true, destructiveHint=false, so the safe-read profile is well covered. The description adds meaningful context beyond annotations: quota consumption (1 call per key), a free test address exception, and data scope (rolling 90-day window, 1000ft radius). Doesn't describe pagination/limits on incident lists, but covers key behavioral traits.

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?

Reasonably compact single paragraph covering purpose, exclusions, alternatives, and constraints. Every sentence earns its place, though it is denser than strictly necessary and could be broken into shorter sentences for scanability. It is front-loaded with the core purpose then fills in usage nuance.

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

Completeness5/5

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

An output schema exists so return-value explanation is not the description's job. For a moderate-complexity query tool with rich annotations, the description covers purpose, scope, constraints, quota cost, free test address, exclusions, and alternatives. Fully adequate for an agent to select and correctly invoke this tool.

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 three parameters well (lat, lng, address with mutual exclusivity). The description reinforces that address OR lat+lng should be passed, not both, and notes US-only locations. This aligns with the baseline-3 for high schema coverage; the description adds minimal supplementary meaning beyond reinforcing exclusivity.

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?

Purpose is explicit and specific: returns a crime safety grade (A+ through F), per-crime-type breakdown versus national average, and incidents within 1000ft over 90 days. It names the exact resource (crime data & safety score) and clearly distinguishes from siblings by spelling out exclusions.

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?

States when to use ('is this address/neighborhood safe?' questions) and explicitly names alternatives for excluded topics: get_neighborhood_data for demographics/income/rent/schools and search_offenders for registered offenders. Also warns against passing both address and lat+lng, and specifies US-only and API key/quota requirements.

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

get_neighborhood_dataGet Neighborhood Demographics & EconomicsA
Read-onlyIdempotent
Inspect

Profile of the neighborhood (or census block group) containing one US address or coordinate pair: demographics, median household income, home values, rent by bedroom count, education attainment, cost-of-living indices, climate and natural-disaster risk. Use this when the question is about who lives in an area or what it costs to live there. Do NOT use it for crime or safety scores (use get_crime_data) — no crime data is returned here. Pass either address or lat+lng, not both. The neighborhood field is null where no data exists for the location. 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".

ParametersJSON 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

ParametersJSON Schema
NameRequiredDescription
successYes
locationNoThe resolved location for the query.
test_modeNoTrue when querying the free test address.
neighborhoodNoNeighborhood data; null when no data exists for the location.
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the safety profile is established. The description adds valuable behavioral context beyond annotations: quota consumption (1 call), requires an API key, the neighborhood field can be null when no data exists, and a free test address exception. This is strong supplementary transparency.

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 information-dense but organized logically: what's returned, when to use, when not to use, input rules, edge case (null neighborhood), and constraints (US only, API key, quota). Front-loaded with the data profile. Slightly long but every sentence carries distinct value with no redundancy.

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

Completeness5/5

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

For a read-only, idempotent, open-world tool with an output schema and 100% schema coverage, the description covers purpose, boundaries, input constraints, edge cases, and operational requirements. There's an output schema present, so return-value documentation is handled structurally. Nothing essential is missing for this moderate-complexity tool.

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

Parameters4/5

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

Schema coverage is 100% (all 3 parameters documented in schema), so baseline is 3. The description adds the mutually-exclusive constraint between address and lat+lng and specifies address format with an example, going slightly beyond schema. However, it doesn't describe lat/lng ranges or precision requirements beyond what schema provides.

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 clearly states the verb+resource (Profile of the neighborhood/census block group) and enumerates the specific data dimensions returned: demographics, income, home values, rent, education, cost-of-living, climate/disaster risk. It also explicitly distinguishes itself from get_crime_data, a sibling tool, by stating what it does NOT return.

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?

Provides explicit when-to-use guidance ('Use this when the question is about who lives in an area or what it costs to live there'), explicit when-not-to-use with the named alternative ('Do NOT use it for crime or safety scores (use get_crime_data)'), and input constraints ('Pass either address or lat+lng, not both', 'US locations only'). This is exemplary usage guidance.

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

search_offendersSearch Registered OffendersA
Read-onlyIdempotent
Inspect

Search US registered offenders in one of two modes. Location mode: pass address or lat+lng, plus an optional radius in miles (default 1, capped at 3); results include each offender's distance from the search point. Name mode: pass at least one of first_name, last_name or dob, optionally narrowed by city/state/zipcode — those three filters alone are not accepted. Location parameters take precedence when both are supplied. Use this only for registered-offender questions; for an overall safety grade use get_crime_data instead. Results are paginated (page, limit, max 100 per page) and each page requested requires a DoorProfit API key and consumes 1 call from that key's quota.

ParametersJSON Schema
NameRequiredDescriptionDefault
dobNoDate of birth, YYYY-MM-DD.
latNoLatitude (use together with lng, as an alternative to address).
lngNoLongitude (use together with lat, as an alternative to address).
cityNoCity filter for name-based searches.
pageNoPage number (default 1).
limitNoResults per page (default 50, max 100).
stateNoTwo-letter state code filter, e.g. "OK".
radiusNoSearch radius in miles for location searches (default 1, max 3).
addressNoFull US street address, e.g. "500 Adams St, Tulsa, OK". Provide either address OR lat+lng.
zipcodeNoZipcode filter for name-based searches.
last_nameNoLast name for name-based searches.
first_nameNoFirst name for name-based searches.

Output Schema

ParametersJSON Schema
NameRequiredDescription
pageNo
radiusNoSearch radius in miles (location searches only).
successYes
offendersNo
test_modeNo
search_typeNo"gis" for location searches, "name" for name searches.
total_countNoTotal matching results.
total_pagesNo
offenders_countNoResults on this page.
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the agent knows this is safe. The description adds valuable behavioral context beyond annotations: results include distance from search point, radius default/cap, pagination details (page, limit, max 100), and importantly that each page request requires a DoorProfit API key and consumes 1 call. This is meaningful disclosure beyond the structured annotations.

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 densely informative with no wasted sentences, covering modes, parameter grouping, precedence rules, exclusions, and API-usage implications in a compact form. It could be split into clearer sub-sections for readability, but every sentence earns its place and the critical information (mode selection, API key cost) is front-loaded.

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

Completeness5/5

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

Despite 12 parameters and no required fields, the description fully explains mode selection, parameter constraints, precedence, pagination, and API call costs. The output schema exists so return-value documentation is handled structurally. For a complex multi-mode tool, this is remarkably complete.

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

Parameters4/5

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

Schema coverage is 100%, so the schema fully documents all 12 parameters. The description adds value by explaining parameter relationships and constraints beyond what the schema states: which params belong to which mode, the 'three filters alone not accepted' rule for city/state/zipcode, radius default/cap semantics, and pagination defaults. This exceeds the baseline 3 for full coverage documents.

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 clearly states the verb (search) and resource (US registered offenders), and explicitly defines two operation modes (location and name) with their respective parameter requirements. It distinguishes itself from the sibling get_crime_data by specifying this tool is only for registered-offender questions.

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?

The description provides explicit when-to-use guidance and names the alternative (get_crime_data for safety grades). It also specifies mode-specific requirements — location needs address or lat+lng, name needs at least one of first_name/last_name/dob — and states that location takes precedence when both are supplied. This is model guidance.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Provides US real estate data including housing stats, demographics, nearby amenities, area comparisons, cost-of-living analysis, and neighborhood search via free public APIs without any API keys.
    6
    MIT
  • F
    license
    -
    quality
    D
    maintenance
    Property intelligence API for US real estate. Returns 16+ data points for any US address: noise levels, wetlands, slope, natural light, powerline proximity, crime rates, property facing direction, zoning, public record, radon risk, natural hazards (earthquake, flood, wildfire), neighborhood demographics, falling tree risk, RF/cell tower exposure, and nearby school.

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources