Developer Tools
mapmap.ai
Provides map routing, clearance, and style creation tools for developers.
ENDPOINT 1
https://mcp.mapmap.ai/mcp
MCP server metadata
- Name
- sn-mcp
- Version
- 0.3.0
MapMap: a self-hosted multi-modal routing platform — cars, trucks (with first-class ADR dangerous-goods support), bicycles, pedestrians and motor scooters. Tools: `route` computes turn-by-turn routes (costing "auto", "truck", "bicycle", "pedestrian" or "motor_scooter" — pass a `truck` profile with dimensions and the ADR declaration to apply dimensional and hazmat restrictions to the search (see `applied_adr.tunnel_enforcement` for what a returned route does and does not prove), `pedestrian` options for lit-street preference, wheelchair/blind profiles and hiking difficulty, or `bicycle` options for bicycle type and road/surface/hill preferences; every one of these costings accepts `rationale: true` for an honest why-this-route explanation derived by route divergence); `search_along_route` finds POIs along a route with each one's real engine-computed detour cost ("coffee, adds 4 min"); `cheapest_fuel_along_route` ranks fuel stations along a route cheapest-first from live open-data price feeds (UK, FR, DE) with engine-computed detours, a 24-hour staleness flag and the saving vs the cheapest on-route baseline; `nearby_places` finds places near a point by category — cafes, fuel, EV charging, parking, pharmacies — and/or by name or brand ("the nearest Lloyds bank"), nearest first with distance in metres; both `nearby_places` and `reverse_geocode` can answer egocentrically — pass `heading_deg` (and optionally `fov_deg`) and every result carries a `direction` phrased from where the user is standing ("ahead and slightly to your right, about 80 metres"), which is what a voice or wearable client should read out instead of coordinates; `route` also takes `landmarks: true` for turn instructions anchored to recognisable places ("Turn right just after the Shell garage") alongside the engine's own, which is what a driver or a voice client actually navigates by; `plan_day` turns an itinerary (names or coordinates, dwell times, optional optimisation) into one navigable multi-stop route with per-stop ETAs; `check_adr_tunnel` answers whether a dangerous-goods load may pass a tunnel of a given ADR category (pure ADR 8.6.4 lookup, no network, conservative worst-case reading); `check_clearance_on_route` measures a vehicle's overhead clearance along a route against surveyed point cloud geometry, returning pass, fail, indeterminate or no_verdict with the limiting point, its measured headroom, the uncertainty bound on it and a link to that view. Read the honesty carefully on that one: it measures physical geometry from a dated survey, it is never a signed or posted height, and ground the survey did not cover comes back as `not_surveyed_m` and is never judged, so a pass is possible over complete coverage and nowhere else. It is the measured counterpart to the routing answer, which avoids what the map has tagged and nothing more, so reach for it whenever an unchanged truck route is about to be read as a clearance (the mapmap://guide/clearance resource sets out why those are two different claims); `geocode` turns place names into coordinates; `reverse_geocode` turns coordinates into the nearest places (addresses, POIs and localities, nearest first, with distance in metres and POI opening hours/contact details where known); `matrix` computes many-to-many travel time/distance matrices in any costing; `reachable_area` computes isochrones — walkability/cyclability rings — as GeoJSON; `optimise_routes` solves multi-vehicle, multi-stop route optimisation (VRP: vehicles with capacities/skills/time windows, jobs and pickup-delivery shipments) — the travel-time matrix is computed by our routing engine, so passing costing "truck" with a `truck` profile makes the whole plan respect dimensional and ADR dangerous-goods restrictions. Map styling (MapMap Studio): `list_style_layers` lists the themable palette slots, skeleton layer ids and source-layers (local, always works); `create_style` publishes a new hosted style; `get_style` fetches a style's theme and latest style URL; `set_palette` and `set_layer_paint` publish a new immutable style version with recoloured palette slots or a changed layer paint property. Attribution is enforced on every compiled style. Feedback: `report_map_issue` queues a first-party map/live-world mismatch observation for human review (never edits the map); `submit_integration_retro` sends MapMap a structured integration retro — only the schema's structured fields, never conversation or code — to be called at most once, after an integration works or is abandoned, and only if the developer has approved sending feedback. Coordinates are WGS84 decimal degrees; distances are metres and durations seconds unless a field name says otherwise.
Known tools 34
cheapest_fuel_along_routeFind the cheapest fuel along a route, with the REAL extra travel time of stopping at each station — never a straight-line guess.
Inferred read-onlycheck_adr_tunnelCheck whether a vehicle may pass through a tunnel of a given ADR category ("A"–"E").
Inferred read-onlycheck_clearance_on_routeMeasure a vehicle's overhead clearance along a route against surveyed point cloud geometry, wherever survey coverage exists.
Inferred read-onlygeo_areaArea in square metres enclosed by a ring of 3+ coordinates, computed geodesically.
Inferred read-onlygeo_bboxThe axis-aligned bounding box enclosing 1+ coordinates, as {min_lat, min_lon, max_lat, max_lon}.
Inferred read-onlygeo_bearingInitial bearing from one coordinate to another, in degrees clockwise from true north (0-360).
Inferred read-onlygeo_destinationThe coordinate reached by travelling `distance_m` metres from `from` on `bearing_deg` (degrees clockwise from true north).
Inferred read-onlygeo_lengthTotal length in metres of a polyline through 2+ coordinates, summed geodesically.
Inferred read-onlygeo_nearest_point_on_lineThe closest position on a polyline to a given coordinate, plus the geodesic distance to it in metres.
Inferred read-onlygeo_point_in_polygonWhether a coordinate lies inside a polygon: delivery zones, catchments, congestion or clean-air zones, site boundaries.
Inferred read-onlygeo_simplifyReduce the number of coordinates in a polyline while keeping its shape (Douglas-Peucker).
Inferred read-onlyget_styleFetch a hosted style's latest theme document (the editable source) and the URL of its latest compiled MapLibre style.
Inferred read-onlylist_style_layersList everything a MapMap style theme can style: the named palette slots with their light/dark default colours, the skeleton layer ids (paint order) that `set_layer_paint` accepts, and the OpenMapTiles source-layers extra layers may reference.
Inferred read-onlymatrixCompute a travel time/distance matrix between origins (rows) and destinations (columns).
Inferred read-onlynearby_placesFind places near a point, nearest first with distance in metres — by category (cafes, fuel, EV charging, parking), by name or brand ("the nearest Lloyds bank", "nearest Sainsbury's"), or both.
Inferred read-onlyorder_stopsPut a single run's stops in the best visiting order ("order my errands").
Inferred read-onlyreachable_areaCompute the area reachable from an origin within one or more travel-time budgets — walkability/cyclability rings.
Inferred read-onlyreport_map_issueReport that the live world disagrees with the map — a closed road, a wrong or missing restriction, a bad speed limit, a missing road, a wrong one-way, or changed access.
Inferred read-onlyreverse_geocodeTurn coordinates into the nearest places: addresses, POIs and localities with distance in metres.
Inferred read-onlyrouteCompute a turn-by-turn route between origin and destination (optionally via waypoints).
Inferred read-onlysearch_along_routeFind places (POIs) along a route with the REAL extra travel time of stopping at each — never a straight-line guess.
Inferred read-onlyset_layer_paintSet one MapLibre paint property on one skeleton layer of a hosted style (e.
Inferred read-onlysubmit_integration_retroSend MapMap a structured integration retro (problems, gotchas, wins, docs gaps).
Potential side effectsvalidate_geodataCheck whether a dataset's DECLARED coordinate reference system actually describes its own coordinates, before you draw it on a map.
Inferred read-onlyverify_placesCheck whether places (and itineraries) an AI mentioned are real, findable and physically possible.
Inferred read-onlyCONNECT WITH APPROVAL
Client installation
Review this server and its permissions before adding it. Secret placeholders must be set locally.
Codex
~/.codex/config.toml
[mcp_servers.sn-mcp]
url = "https://mcp.mapmap.ai/mcp"
enabled = true
Claude Code
.mcp.json
{
"mcpServers": {
"sn-mcp": {
"type": "http",
"url": "https://mcp.mapmap.ai/mcp"
}
}
}
Claude Desktop
Settings → Connectors → Add custom connector
Name: sn-mcp
Remote MCP URL: https://mcp.mapmap.ai/mcp
Add this remote URL as a custom connector in Claude Desktop. Availability depends on the user plan and workspace policy.
Cursor
.cursor/mcp.json
{
"mcpServers": {
"sn-mcp": {
"url": "https://mcp.mapmap.ai/mcp"
}
}
}
Visual Studio Code
.vscode/mcp.json
Add to Visual Studio Code{
"servers": {
"sn-mcp": {
"type": "http",
"url": "https://mcp.mapmap.ai/mcp"
}
}
}
Generic MCP
Client-specific MCP configuration
{
"name": "sn-mcp",
"transport": "streamable-http",
"url": "https://mcp.mapmap.ai/mcp"
}
MCP Inspector
Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.
TRUST AND VERIFICATION EVIDENCE
Loading Trust v2 evidence…
Checking the associated registrable domain. The BuiltWith key remains server-side.
Evidence is source-attributed and does not guarantee that a third-party server is safe. Risk labels are conservative metadata heuristics.