England's schools and nurseries: Ofsted, exam results, offers and last distance offered.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Find schools, nurseries and childcare providers in England by name, optionally narrowed by town, county or postcode (not council or borough names: for "near Lambeth" use search_near_postcode). Returns up to 10 matches with their Catchmently IDs for get_school.
Part of the school or nursery name, e.g. "St Mary's".
Optional town, county or postcode (full or district, e.g. SW19) to narrow the matches.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http schools https://mcp.catchmently.com/mcp
Find schools, nurseries and childcare providers in England by name, optionally narrowed by town, county or postcode (not council or borough names: for "near Lambeth" use search_near_postcode). Returns up to 10 matches with their Catchmently IDs for get_school.
| Argument | Type | Description |
|---|---|---|
| area | string | Optional town, county or postcode (full or district, e.g. SW19) to narrow the matches. |
| name* | string | Part of the school or nursery name, e.g. "St Mary's". |
{
"type": "object",
"required": [
"name"
],
"properties": {
"area": {
"type": "string",
"maxLength": 60,
"description": "Optional town, county or postcode (full or district, e.g. SW19) to narrow the matches."
},
"name": {
"type": "string",
"maxLength": 100,
"minLength": 2,
"description": "Part of the school or nursery name, e.g. \"St Mary's\"."
}
},
"additionalProperties": false
}Every published last distance offered for one school (by entry year and intake, as the council or the school published it, with sources) and the council catchment or priority area. Free without sign-in until 4 January 2027.
| Argument | Type | Description |
|---|---|---|
| school_id* | string | Catchmently ID, e.g. gias:138342 or ofsted:EY546961. |
{
"type": "object",
"required": [
"school_id"
],
"properties": {
"school_id": {
"type": "string",
"maxLength": 50,
"description": "Catchmently ID, e.g. gias:138342 or ofsted:EY546961."
}
},
"additionalProperties": false
}Area facts for one full England postcode, each with its source, edition and licence: council, ward and constituency; rivers-and-sea flood risk; modelled road, rail and aircraft noise bands; Indices of Deprivation. For signed-in Catchmently pass holders it also has crime by type over 12 months, sold prices (postcode, sector, district), house price index and rents, broadband and mobile coverage, nearest stations and stops, nearest GP, shops and parks, surface-water flood risk and Census 2021 detail; without a pass those are marked locked.
| Argument | Type | Description |
|---|---|---|
| postcode* | string | Full England postcode, e.g. SE22 8DL. |
{
"type": "object",
"required": [
"postcode"
],
"properties": {
"postcode": {
"type": "string",
"maxLength": 10,
"description": "Full England postcode, e.g. SE22 8DL."
}
},
"additionalProperties": false
}Details for one school or nursery by Catchmently ID (from find_school or search_near_postcode): register details, latest Ofsted outcome with quoted strengths and areas to improve, exam results, and applications and offers. For a signed-in Catchmently pass holder it also has every published last distance offered and the council catchment or priority area (see get_admission_distances). Give a postcode to add the straight-line distance from it.
| Argument | Type | Description |
|---|---|---|
| postcode | string | Optional full postcode to measure the straight-line distance from. |
| school_id* | string | Catchmently ID, e.g. gias:138342 or ofsted:EY546961. |
{
"type": "object",
"required": [
"school_id"
],
"properties": {
"postcode": {
"type": "string",
"maxLength": 10,
"description": "Optional full postcode to measure the straight-line distance from."
},
"school_id": {
"type": "string",
"maxLength": 50,
"description": "Catchmently ID, e.g. gias:138342 or ofsted:EY546961."
}
},
"additionalProperties": false
}List schools, nurseries and childcare near an England postcode (full postcode or district such as SE22), nearest first, by straight-line distance from the postcode centre. Each school shows its latest Ofsted outcome, whether it is selective (grammar) and its religious character from the official register, and whether a last distance offered has been published; the figure itself is shown to signed-in Catchmently pass holders.
| Argument | Type | Description |
|---|---|---|
| faith | string | Schools with a religious character: "only" or "exclude", per the official register. |
| limit | integer | |
| phase | string | Only this kind of school. "other" is special, independent and other schools. |
| postcode* | string | Full postcode (e.g. SE22 8DL) or postcode district (e.g. SE22). |
| selective | string | Selective (grammar) schools: "only" or "exclude", per the official register. |
| radius_miles | number | Straight-line radius in miles, at most 3. |
| published_distance_only | boolean | Only schools with a published last distance offered. |
We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 5, 2026.
{
"type": "object",
"required": [
"postcode"
],
"properties": {
"faith": {
"enum": [
"any",
"only",
"exclude"
],
"type": "string",
"default": "any",
"description": "Schools with a religious character: \"only\" or \"exclude\", per the official register."
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1
},
"phase": {
"enum": [
"any",
"primary",
"secondary",
"nursery",
"other"
],
"type": "string",
"default": "any",
"description": "Only this kind of school. \"other\" is special, independent and other schools."
},
"postcode": {
"type": "string",
"maxLength": 10,
"description": "Full postcode (e.g. SE22 8DL) or postcode district (e.g. SE22)."
},
"selective": {
"enum": [
"any",
"only",
"exclude"
],
"type": "string",
"default": "any",
"description": "Selective (grammar) schools: \"only\" or \"exclude\", per the official register."
},
"radius_miles": {
"type": "number",
"default": 1,
"maximum": 3,
"minimum": 0.1,
"description": "Straight-line radius in miles, at most 3."
},
"published_distance_only": {
"type": "boolean",
"default": false,
"description": "Only schools with a published last distance offered."
}
},
"additionalProperties": false
}