Skip to main content
Glama

Code enforcement cases near an address

get_code_enforcement_cases
Read-onlyIdempotent

Check housing and neighborhood code enforcement cases near any Charlotte address, including nuisance, zoning, graffiti, and parking violations, to assess property conditions for renters, buyers, or neighbors.

Instructions

Housing and neighborhood code enforcement cases at or near an address.

Covers nuisance (junk, overgrown lots), minimum housing, zoning, graffiti, and parking violations. Useful for renters, buyers, and neighbors.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
daysNoCases opened in this many days.
limitNoMaximum number of records to return.
statusNoany
locationYesA street address in Mecklenburg County, e.g. '600 E 4th St, Charlotte, NC 28202', or coordinates as 'latitude,longitude', e.g. '35.2271,-80.8431'.
case_typeNoany
radius_milesNoRadius in miles; 0.05 is about one parcel.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
notesNo
sinceNoEarliest date included (local time).
recordsYes
locationNo
breakdownNoCounts of all matching records per value.
breakdown_byNo
radius_milesNo
total_matchingYesRecords matching the filters; may exceed returned.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds real value by enumerating the violation categories it surfaces, but it says nothing about result shape, ordering, or the geographic scope limits implied by the schema.

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?

Three short sentences, front-loaded with the core purpose before the category list and audience. The audience line is mild filler, but nothing is bloated or buried.

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

Completeness3/5

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

With an output schema present, return format need not be described, and the description adequately conveys domain and categories. However, for a 6-parameter geo-query tool it omits any guidance on status/case_type usage and gives no hint about result ordering or proximity behavior beyond what the schema states.

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 coverage is 67%: days, limit, location and radius_miles are documented in-schema, while status and case_type are not. The description partially compensates by listing violation types that map to the case_type enum, but it adds no meaning for status, days, or the proximity semantics of radius_miles.

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

Purpose4/5

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

The description states a specific verb+resource ('Housing and neighborhood code enforcement cases at or near an address') and enumerates the covered categories (nuisance, minimum housing, zoning, graffiti, parking). It clearly separates this from siblings like get_crime_near or get_311_requests_near by naming the domain, though it never explicitly says what it is not.

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

Usage Guidelines3/5

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

Usage is only implied via the audience note ('Useful for renters, buyers, and neighbors'), which hints at intent but gives no when-to-use condition, no exclusions, and no comparison to adjacent tools such as get_311_requests_near or get_crime_near. An agent must infer the routing itself.

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