Skip to main content
Glama

Find UK Police Neighbourhood

ukcrime_find_neighbourhood
Read-onlyIdempotent

Find the police force and neighbourhood policing team for a point, or look one up by force and neighbourhood id. Returns the team's description, contact channels and police stations, its current priorities with the action taken, team members' ranks and names, and upcoming engagement events. include adds the boundary polygon, needed only to split a neighbourhood too large to search into smaller polygons: ukcrime_search_crimes, ukcrime_search_outcomes and ukcrime_search_stops take the neighbourhood directly through area 'neighbourhood'.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
latNoLatitude, WGS84 decimal degrees, to look up by point (with lng).
lngNoLongitude, WGS84 decimal degrees, to look up by point (with lat).
forceNoForce id such as 'leicestershire', or its name such as 'Leicestershire Police' (ukcrime_list_reference topic 'forces' lists both), to look up by id (with neighbourhood_id); case-insensitive, spaces, underscores and hyphens match each other, '&' matches 'and', and a trailing 'Police', 'Police Service' or 'Constabulary' is optional.
includeNoOptional sections to load: 'priorities', 'team', 'events', 'boundary'. Omitted: priorities, team and events. [] loads none of them.
neighbourhood_idNoNeighbourhood id from ukcrime_list_reference topic 'neighbourhoods', to look up by id (with force). Case-sensitive; only trimmed.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
gapsNoThe force's known coverage gaps, each ending with the date the table was verified.
teamNoTeam members' ranks and names; present when include has 'team' and they loaded.
errorNoPresent when the call failed. Absent on success.
forceNoThe police force the neighbourhood belongs to, as published.
foundNoTrue when data.police.uk holds a neighbourhood team for the point or id.
eventsNoEvery upcoming engagement event the force published, soonest first and undated last; present when include has 'events' and they loaded.
noticeNoParts that could not be loaded from data.police.uk, and how to retry.
boundaryNoThe neighbourhood boundary; present when include has 'boundary' and it loaded.
guidanceNoWhy nothing was found and what to try instead; present when found is false.
data_noteNoWhat these records can and cannot say; read it before drawing conclusions.
prioritiesNoThe team's current priorities, force-written; present when include has 'priorities' and they loaded.
attributionNoOpen Government Licence attribution for data.police.uk data.
events_totalNoUpcoming events published; every one is in events.
located_fromNoThe point looked up, for a point lookup.
neighbourhoodNoThe neighbourhood policing team and its public channels, as the force publishes them; an optional field is absent when unpublished, and all text is force-written.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so safety is covered. The description adds genuinely useful context beyond them: the content returned (priorities with action taken, team ranks/names, events), and the specific operational reason the boundary polygon exists. It does not state what happens if no lookup arguments are supplied, which matters given zero required parameters.

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?

Two dense sentences, front-loaded with the core action and scope, then the return contents, then the sibling routing. Every clause carries information, though the middle enumeration of returned sections is long enough to slightly slow scanning.

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?

With an output schema present, the description need not detail return values, and annotations cover the safety profile; params are fully documented in the schema. The only real gap is the absence of any statement about behavior when neither lookup mode is supplied, which is notable for a tool with zero required parameters.

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 baseline is 3 and the schema already documents lat/lng/force/neighbourhood_id in detail. The description earns above-baseline credit by explaining the intent of 'include' beyond the schema's 'Optional sections to load' — specifically that boundary is only for subdividing oversized neighbourhoods — and by clarifying how downstream search tools consume the neighbourhood.

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?

States a specific verb ('Find') and resource ('police force and neighbourhood policing team'), and explicitly names both supported lookup modes: by lat/lng point or by force + neighbourhood_id. This is unambiguous and clearly distinguishable from the list/search siblings.

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?

Explains the two lookup paths and then routes the agent away from unnecessary use: the boundary in 'include' is 'needed only to split a neighbourhood too large to search into smaller polygons', and search_crimes/search_outcomes/search_stops 'take the neighbourhood directly through area neighbourhood'. This is explicit when-to-use and when-not-to-use guidance naming alternatives.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.