Developers & AI agents

Current school data, over REST or MCP

Search 26,976 open school records and retrieve a school’s current public profile. Both interfaces are read-only, use the same underlying data, and require no key for public calls.

API v1 MCP 2026-07-28 Legacy MCP compatible Last data refresh: 27 July 2026

REST API

Two endpoints, one public contract

Responses are JSON. New integrations should use the versioned routes below; /api/get-school?urn=… remains available for compatibility.

GETSearch schools

/api/v1/search

Match a name or local authority, or supply a postcode to receive nearest-first results. Supports phase, radius and limit filters.

GETGet a school

/api/v1/schools/{urn}

Returns the public record for one six-digit DfE URN. Fields vary by school phase and source coverage.

Example: nearest secondary schools

curl "https://schoolsnearme.ai/api/v1/search?postcode=M20%204BX&phase=secondary&limit=5"

Example: retrieve a school

curl "https://schoolsnearme.ai/api/v1/schools/100000"
Anonymous API calls return public fields only. Catchment, fees and other premium fields remain protected. Never treat a missing or suppressed value as zero.

Model Context Protocol

Connect a remote MCP client

The Streamable HTTP endpoint is https://schoolsnearme.ai/mcp. It implements the stateless MCP 2026-07-28 protocol and supports initialization-based 2025-11-25, 2025-06-18 and 2025-03-26 clients.

search_schools

Resolve a school by name or authority, or find nearby schools from a UK postcode. Optional phase, radius and result-limit filters.

get_school

Retrieve one school’s current public record using its six-digit DfE URN.

Server discovery (MCP 2026-07-28)

curl https://schoolsnearme.ai/mcp \
  -X POST \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "MCP-Protocol-Version: 2026-07-28" \
  -H "Mcp-Method: server/discover" \
  -d '{"jsonrpc":"2.0","id":1,"method":"server/discover","params":{"_meta":{"io.modelcontextprotocol/protocolVersion":"2026-07-28","io.modelcontextprotocol/clientInfo":{"name":"example","version":"1.0"},"io.modelcontextprotocol/clientCapabilities":{}}}}'
The MCP server is intentionally anonymous and read-only. It exposes the same public boundary as an unauthenticated REST request and cannot perform applications, bookings, account changes or payments.

Data semantics

Read the fields conservatively

FieldMeaning
ofstedRating1 Outstanding, 2 Good, 3 Requires Improvement, 4 Inadequate. Check the inspection date in the full record.
snmScoreA 0–100 comparison signal. It may be null where available evidence is not comparable or reliable enough.
Progress 8Not published for 2024/25 because the cohort has no KS2 baseline. The current public export does not surface an older value as if it were current.
16–18 destinationsDfE 2022/23 institution-level cohort data only. It covers students completing 16–18 study at that institution, not its Year 11 cohort.