MySchoolHub MCP
An MCP server providing read-only access to MySchoolHub's educational data, including school search, catchment distance checks, rankings, and area finding based on house prices and commute times.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://www.myschoolhub.co.uk/api/mcpWhat you can do with it
- Search for schools by name, town, or postcode
- Check real catchment chances for a specific address
- Get school rankings by GCSE results or Oxbridge entry
- Find areas to live based on budget and school quality
Source and maintenance
Protocol and capabilities
- Server
- myschoolhub 1.0.0
- MCP protocol
- 2025-06-18
- Tools
- 5 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
5 advertised
search_schools — Search schools
Find schools in England by name, town, council or postcode. A postcode returns schools within 5 km, nearest first. Each result has its URN, Ofsted grade, headline results and a link to its MySchoolHub page.
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 20,
"minimum": 1
},
"phase": {
"enum": [
"primary",
"secondary"
],
"type": "string",
"description": "Only primary or only secondary schools."
},
"query": {
"type": "string",
"minLength": 2,
"description": "School name, town, council or postcode, e.g. \"Tiffin\", \"Guildford\" or \"KT10 8PQ\"."
}
},
"additionalProperties": false
}{
"title": "Search schools",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_school — School profile
Full profile of one school by URN: Ofsted, the newest GCSE, KS2 and A-level results, university destinations (Oxford and Cambridge, Russell Group) and the last distance offered for each of the last three years with applications per place.
{
"type": "object",
"required": [
"urn"
],
"properties": {
"urn": {
"type": "integer",
"maximum": 999999,
"minimum": 100000,
"description": "The school's URN (its six-digit unique reference number)."
}
},
"additionalProperties": false
}{
"title": "School profile",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}check_catchment_chances — Catchment chances from a postcode
For a home postcode, list nearby state schools with the straight-line distance from the postcode centre, the last distance offered in each of the last three years (council allocation figures) and a reading of the chances: Likely at 80% of the last distance or less, Possible up to 110%, Stretch beyond it. Faith and selective schools are capped at Possible because other rules decide places.
{
"type": "object",
"required": [
"postcode",
"phase"
],
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 20,
"minimum": 1
},
"phase": {
"enum": [
"primary",
"secondary"
],
"type": "string"
},
"postcode": {
"type": "string",
"description": "A full UK postcode (e.g. \"KT10 8PQ\") or an outcode (e.g. \"KT10\")."
},
"radius_km": {
"type": "number",
"maximum": 10,
"minimum": 0.5,
"description": "Search radius. Default 2 km for primary, 5 km for secondary."
}
},
"additionalProperties": false
}{
"title": "Catchment chances from a postcode",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}school_rankings — School league tables
League tables of schools in England, optionally for one council: attainment8 or progress8 (GCSE), a_level (points per entry), ks2 (primary, % meeting the expected standard), oxbridge or russell_group (share of sixth-form leavers, pooled over five cohorts).
{
"type": "object",
"required": [
"measure"
],
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1
},
"council": {
"type": "string",
"description": "Council (local authority) name, e.g. \"Surrey\" or \"Barnet\"."
},
"measure": {
"enum": [
"attainment8",
"progress8",
"a_level",
"ks2",
"oxbridge",
"russell_group"
],
"type": "string"
}
},
"additionalProperties": false
}{
"title": "School league tables",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}find_areas_for_schools — Where to live for schools
Rank neighbourhoods within commuting reach of a workplace for a house-buying budget, by how realistic a place at a good state school is (council cut-offs and results), with sold-price medians from HM Land Registry. Commute reach is estimated from distance.
{
"type": "object",
"required": [
"workplace_postcode",
"budget",
"phase"
],
"properties": {
"phase": {
"enum": [
"primary",
"secondary"
],
"type": "string"
},
"budget": {
"type": "integer",
"maximum": 10000000,
"minimum": 100000,
"description": "Purchase budget in pounds."
},
"commute_mode": {
"enum": [
"transit",
"drive",
"cycle",
"walk"
],
"type": "string",
"default": "transit"
},
"min_bedrooms": {
"enum": [
0,
2,
3,
4,
5
],
"type": "integer",
"default": 0
},
"workplace_postcode": {
"type": "string",
"description": "Full UK postcode of the place of work."
},
"max_commute_minutes": {
"type": "integer",
"default": 60,
"maximum": 90,
"minimum": 15
},
"include_grammar_schools": {
"type": "boolean",
"default": false,
"description": "Secondary only: count grammar schools (entry by the 11+)."
}
},
"additionalProperties": false
}{
"title": "Where to live for schools",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
Not advertised
Resources
Not advertised
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 355 ms
- 95th percentile latency
- 355 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 355 ms · metadata changed · 5 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http myschoolhub-mcp https://www.myschoolhub.co.uk/api/mcpCodex
codex mcp add myschoolhub-mcp --url https://www.myschoolhub.co.uk/api/mcpCursor
{
"mcpServers": {
"myschoolhub-mcp": {
"url": "https://www.myschoolhub.co.uk/api/mcp"
}
}
}Cline
{
"mcpServers": {
"myschoolhub-mcp": {
"type": "streamableHttp",
"url": "https://www.myschoolhub.co.uk/api/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"myschoolhub-mcp": {
"type": "http",
"url": "https://www.myschoolhub.co.uk/api/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http myschoolhub-mcp https://www.myschoolhub.co.uk/api/mcpClaude Desktop
{
"mcpServers": {
"myschoolhub-mcp": {
"url": "https://www.myschoolhub.co.uk/api/mcp"
}
}
}Windsurf
{
"mcpServers": {
"myschoolhub-mcp": {
"serverUrl": "https://www.myschoolhub.co.uk/api/mcp"
}
}
}Let your agent find its tools
Find servers like MySchoolHub MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.