Skip to main content
Glama

Local plan policies and settlement position for a site

policy_context
Read-onlyIdempotent
The planning policy picture for a site: the adopted and emerging local
plan with stage and dates, the local plan policies whose areas cover the
site (reference, name, theme, a text extract, the share of the site),
the settlement position (inside, outside or straddling a settlement
boundary, with the distance to its edge), neighbourhood plans and the
green belt review rating of the parcel.

Policies are DIGITISED from the council's own layers and documents:
quote the policy reference and source, not our wording. Each layer says
its coverage; `not_held` means we hold no boundary for that authority,
NOT that the site is outside a settlement. Give exactly ONE scope: `location` ("lat,lng"), `postcode`,
`area_geojson` (a red line, GeoJSON in WGS84, at most 150 km² and 64
vertices), `land_id` or `lpa_code` (GSS, e.g. E07000240); anything else is
refused before any read and nothing is charged. UK only. Free.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "policy_context"
  }
}

Input Schema

NameRequiredDescriptionDefault
themesNo
land_idNo
locationNo
postcodeNo
area_geojsonNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.1/5.0
Behavior5/5

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

Goes well past the annotations: policies are digitised so the caller should quote the council's reference and source rather than the returned wording, each layer reports its own coverage, and `not_held` explicitly does not mean the site lies outside a settlement — a genuine misinterpretation trap flagged. It also states pre-read validation (bad scope refused, nothing charged), the size/complexity caps on area_geojson, UK-only scope and that calls are free.

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?

Front-loaded with what the caller gets, then the sourcing caveat, then the scope rules and constraints — a sensible ordering with no filler sentences. It is dense and long-ish, but each clause conveys a distinct fact (layer coverage, not_held semantics, scope rules, limits).

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?

For a five-parameter, multi-facet read tool with an output schema, the description covers sourcing, coverage semantics, validation behavior and limits thoroughly. The two gaps are the undocumented `themes` filter and the non-existent `lpa_code` argument, both of which would matter to an agent constructing a call.

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 0%, so the description carries the burden — and it does well for `location` ("lat,lng"), `postcode`, `area_geojson` (GeoJSON, WGS84, ≤150 km², ≤64 vertices), and `land_id`. However it never explains the `themes` parameter (a 10-value enum sitting in the schema with no documentation anywhere), and it advertises an `lpa_code` argument with a GSS example that does not exist in the input schema, which can send an agent down a failing path.

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 names the resource and enumerates the concrete payload: adopted/emerging local plan with stage and dates, covering policies with reference/theme/text extract/site share, settlement position with distance to edge, neighbourhood plans and green belt review rating. That is far more specific than the title alone. It never names a sibling (e.g. planning_designations, planning_check, constraints_for_geometry) to draw the boundary, so it stops short of a 5.

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

Usage Guidelines4/5

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

Strong operational guidance: exactly one scope must be supplied, the accepted scope forms are listed, anything else is refused before any read with no charge, and the tool is UK-only and free. What is missing is when to reach for this tool versus the adjacent planning_designations / planning_check / constraints_for_geometry siblings, which an agent still has to infer from the subject matter.

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.

Resources