Plan canal routes on Great Britain's waterways: lock-aware timing, live closures, boat-fit checks.
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.
Look up a place name on the British inland waterway network and return matching locations with coordinates (marinas, moorings, water points and other waterside facilities). Use it to disambiguate a place before calling plan_route or plan_round_trip, or to get coordinates for a known spot. Results are waterway locations only; it is not a general geocoder.
Place or facility name to search for, e.g. "Braunston" or "Aston Marina".
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Look up a place name on the British inland waterway network and return matching locations with coordinates (marinas, moorings, water points and other waterside facilities). Use it to disambiguate a place before calling plan_route or plan_round_trip, or to get coordinates for a known spot. Results are waterway locations only; it is not a general geocoder.
| Argument | Type | Description |
|---|---|---|
| name* | string | Place or facility name to search for, e.g. "Braunston" or "Aston Marina". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 2,
"description": "Place or facility name to search for, e.g. \"Braunston\" or \"Aston Marina\"."
}
},
"additionalProperties": false
}Live closure, stoppage and restriction notices for the inland waterways of Great Britain, covering every GB navigation authority: Canal & River Trust, Environment Agency, Scottish Canals, Broads Authority, Bridgewater, Middle Level, River Wey, Basingstoke and more, not just CRT. Search near a place (name or "lat,lon", with an optional radius) or by waterway name (e.g. "Oxford Canal"). Returns active and upcoming notices with dates, the responsible authority, whether each one blocks navigation, and links for detail. Data refreshes from the authorities' published notices, so reopen dates reflect the latest updates.
| Argument | Type | Description |
|---|---|---|
| place | string | A place name or "lat,lon" coordinates to search around. Give this or waterway. |
| waterway | string | A waterway name to match notices against (e.g. "Grand Union Canal"). Give this or place. |
| radius_km | number | Search radius around the place in km. Default 25. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"place": {
"type": "string",
"description": "A place name or \"lat,lon\" coordinates to search around. Give this or waterway."
},
"waterway": {
"type": "string",
"description": "A waterway name to match notices against (e.g. \"Grand Union Canal\"). Give this or place."
},
"radius_km": {
"type": "number",
"maximum": 150,
"minimum": 1,
"description": "Search radius around the place in km. Default 25."
}
},
"additionalProperties": false
}Plan return-to-start cruises from a point on the inland waterways of Great Britain, sized to fit a number of days. Returns several options: circular loops where the canal network offers one (canal "rings"), plus out-and-back and fewest-locks alternatives, each with distance, lock count, day-by-day plan and suggested overnight moorings. Timing is lock-aware and closures from every GB navigation authority are flagged on each option. Give boat dimensions to get fit warnings, and routes touching tidal water carry a tidal safety warning. The start can be a place name or "lat,lon" coordinates.
| Argument | Type | Description |
|---|---|---|
| date | string | Start date (YYYY-MM-DD) for closure checking. Defaults to today. |
| days* | integer | Number of days the round trip should fit in. |
| start* | string | Start (and finish) point: a place name on the waterways or "lat,lon" coordinates. |
| boat_beam | number | string | Boat beam (width). Metres by default (e.g. 2.08), or feet/inches (e.g. "6'10\""). |
| boat_length | number | string | Boat length. Metres by default (e.g. 17.4), or a feet/inches string (e.g. "57ft"). |
| boat_draught | number | string | Boat draught (depth below the waterline). Metres or feet/inches. |
| lock_minutes | number |
Plan a boat journey between two points on the inland waterways of Great Britain (canals and navigable rivers). The route follows the water itself, not roads. It counts every lock and estimates cruising time from realistic boat speed plus time per lock. Live closures and stoppages from every GB navigation authority (Canal & River Trust, Environment Agency, Scottish Canals, Broads Authority and others) are routed around automatically, and when a dated closure blocks the natural line the result compares waiting for it to reopen against taking the detour. Give boat dimensions to get per-waterway fit warnings (too long, too wide, too deep, too tall for a waterway on the route). Routes that cross tidal water carry a tidal safety warning. Places can be names (resolved on the waterway network) or "lat,lon" coordinates. If a name matches several distinct locations the tool returns the candidates instead of guessing; call again with the chosen one.
| Argument | Type | Description |
|---|---|---|
| to* | string | Destination: a place name or "lat,lon" coordinates. |
| date | string | Departure date (YYYY-MM-DD) for closure checking. Defaults to today. |
| from* | string | Start point: a place name on the waterways (e.g. "Braunston Marina") or "lat,lon" coordinates. |
| boat_beam | number | string | Boat beam (width). Metres by default (e.g. 2.08), or feet/inches (e.g. "6'10\""). |
| boat_length | number | string | Boat length. Metres by default (e.g. 17.4), or a feet/inches string (e.g. "57ft"). |
Search Canal Nav's directory of waterside businesses on the British inland waterways: marinas, chandleries, boat hire, boatyards, pump-out and services, fuel, moorings, surveyors, brokerage, and canalside food and pubs. Filter by free text, category, or proximity to a place. Listings marked unclaimed can be claimed for free by the business owner at https://canalnav.com/.
| Argument | Type | Description |
|---|---|---|
| near | string | A place name or "lat,lon" to search around (approx. 15 km). |
| query | string | Free-text search over business names and descriptions. |
| category | string | Directory category to filter by. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"near": {
"type": "string",
"description": "A place name or \"lat,lon\" to search around (approx. 15 km)."
},
"query": {
"type": "string",
"description": "Free-text search over business names and descriptions."
},
"category": {
"enum": [
"marina",
"chandlery",
"hire",
"boatyard",
"services",
"fuel",
"moorings",
"surveyor",
"brokerage",
"food",
"trade",
"other"
],
"type": "string",
"description": "Directory category to filter by."
}
},
"additionalProperties": false
}Check boat dimensions against the published maximum craft dimensions for a named British waterway (length, beam, draught and air draught, from Canal & River Trust published figures covering the full CRT network). Returns a per-dimension verdict quoting the limit. Draught and headroom vary with water level and silting, so treat the answer as advisory. For a whole journey, use plan_route with boat dimensions instead: it checks every waterway along the route.
| Argument | Type | Description |
|---|---|---|
| waterway* | string | Waterway name, e.g. "Ashby Canal" or "Llangollen Canal". |
| boat_beam | number | string | Boat beam (width). Metres by default (e.g. 2.08), or feet/inches (e.g. "6'10\""). |
| boat_length | number | string | Boat length. Metres by default (e.g. 17.4), or a feet/inches string (e.g. "57ft"). |
| boat_draught | number | string | Boat draught (depth below the waterline). Metres or feet/inches. |
| boat_air_draught | number | string | Boat air draught (height above the waterline, for bridges and tunnels). Metres or feet/inches. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"waterway"
],
"properties": {
"waterway": {
"type": "string",
"description": "Waterway name, e.g. \"Ashby Canal\" or \"Llangollen Canal\"."
},
"boat_beam": {
"type": [
"number",
"string"
],
"description": "Boat beam (width). Metres by default (e.g. 2.08), or feet/inches (e.g. \"6'10\\\"\")."
},
"boat_length": {
"type": [
"number",
"string"
],
"description": "Boat length. Metres by default (e.g. 17.4), or a feet/inches string (e.g. \"57ft\")."
},
"boat_draught": {
"type": [
"number",
"string"
],
"description": "Boat draught (depth below the waterline). Metres or feet/inches."
},
"boat_air_draught": {
"type": [
"number",
"string"
],
"description": "Boat air draught (height above the waterline, for bridges and tunnels). Metres or feet/inches."
}
},
"additionalProperties": false
}| Minutes to work through one lock. Default 15. |
| boat_air_draught | number | string | Boat air draught (height above the waterline, for bridges and tunnels). Metres or feet/inches. |
| cruising_hours_per_day | number | Cruising hours per day. Default 6. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"start",
"days"
],
"properties": {
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date (YYYY-MM-DD) for closure checking. Defaults to today."
},
"days": {
"type": "integer",
"maximum": 28,
"minimum": 1,
"description": "Number of days the round trip should fit in."
},
"start": {
"type": "string",
"description": "Start (and finish) point: a place name on the waterways or \"lat,lon\" coordinates."
},
"boat_beam": {
"type": [
"number",
"string"
],
"description": "Boat beam (width). Metres by default (e.g. 2.08), or feet/inches (e.g. \"6'10\\\"\")."
},
"boat_length": {
"type": [
"number",
"string"
],
"description": "Boat length. Metres by default (e.g. 17.4), or a feet/inches string (e.g. \"57ft\")."
},
"boat_draught": {
"type": [
"number",
"string"
],
"description": "Boat draught (depth below the waterline). Metres or feet/inches."
},
"lock_minutes": {
"type": "number",
"maximum": 90,
"minimum": 1,
"description": "Minutes to work through one lock. Default 15."
},
"boat_air_draught": {
"type": [
"number",
"string"
],
"description": "Boat air draught (height above the waterline, for bridges and tunnels). Metres or feet/inches."
},
"cruising_hours_per_day": {
"type": "number",
"maximum": 16,
"minimum": 1,
"description": "Cruising hours per day. Default 6."
}
},
"additionalProperties": false
}| boat_draught |
| number | string |
| Boat draught (depth below the waterline). Metres or feet/inches. |
| lock_minutes | number | Minutes to work through one lock. Default 15. Experienced crews may use 10, single-handers 20 or more. |
| boat_air_draught | number | string | Boat air draught (height above the waterline, for bridges and tunnels). Metres or feet/inches. |
| cruising_hours_per_day | number | Cruising hours per day, used to split the journey into days with suggested overnight moorings. Default 6. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"description": "Destination: a place name or \"lat,lon\" coordinates."
},
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Departure date (YYYY-MM-DD) for closure checking. Defaults to today."
},
"from": {
"type": "string",
"description": "Start point: a place name on the waterways (e.g. \"Braunston Marina\") or \"lat,lon\" coordinates."
},
"boat_beam": {
"type": [
"number",
"string"
],
"description": "Boat beam (width). Metres by default (e.g. 2.08), or feet/inches (e.g. \"6'10\\\"\")."
},
"boat_length": {
"type": [
"number",
"string"
],
"description": "Boat length. Metres by default (e.g. 17.4), or a feet/inches string (e.g. \"57ft\")."
},
"boat_draught": {
"type": [
"number",
"string"
],
"description": "Boat draught (depth below the waterline). Metres or feet/inches."
},
"lock_minutes": {
"type": "number",
"maximum": 90,
"minimum": 1,
"description": "Minutes to work through one lock. Default 15. Experienced crews may use 10, single-handers 20 or more."
},
"boat_air_draught": {
"type": [
"number",
"string"
],
"description": "Boat air draught (height above the waterline, for bridges and tunnels). Metres or feet/inches."
},
"cruising_hours_per_day": {
"type": "number",
"maximum": 16,
"minimum": 1,
"description": "Cruising hours per day, used to split the journey into days with suggested overnight moorings. Default 6."
}
},
"additionalProperties": false
}