OpenStreetMap MCP server providing precision geospatial tools for LLMs via Model Context Protocol. Features geocoding, routing, nearby places
OpenStreetMap MCP server providing precision geospatial tools for LLMs via Model Context Protocol. Features geocoding, routing, nearby places, neighborhood analysis, EV charging stations, and more. The openstreetmap mcp server wraps that behind the Model Context Protocol, so an assistant can use it through 14 defined tools rather than through you.
This is a Go OpenStreetMap MCP server. It implements the Model Context Protocol to enable LLMs to interact with geospatial data.
Everything the assistant can do here goes through one of these:
Nominatim — For geocoding operationsOSRM — For routing calculationsbbox_from_points — Create a bounding box that encompasses all given geographic coordinatescentroid_points — Calculate the geographic centroid (mean center) of a set of coordinatesenrich_emissions — Enrich route options with CO2 emissions, calorie burn, and cost estimatesfilter_tags — Filter OSM elements by specified tagsgeocode_address — Convert an address or place name to geographic coordinatesgeo_distance — Calculate the distance between two geographic coordinatesget_map_image — Retrieve and display an OpenStreetMap image for analysisosm_query_bbox — Query OpenStreetMap data within a bounding box with tag filterspolyline_decode — Decode an encoded polyline string into a series of geographic coordinatespolyline_encode — Encode a series of geographic coordinates into a polyline stringSetup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client.
This sits in the developer tooling group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. OpenStreetMap's toolset — Nominatim, OSRM, bbox_from_points and 11 more — is a fair guide to whether it matches your workflow. It is maintained by NERVsystems; worth a glance at recent repository activity before you build anything load-bearing on it.
We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.
| Tool | What it does |
|---|---|
| Nominatim | For geocoding operations |
| OSRM | For routing calculations |
| bbox_from_points | Create a bounding box that encompasses all given geographic coordinates |
| centroid_points | Calculate the geographic centroid (mean center) of a set of coordinates |
| enrich_emissions | Enrich route options with CO2 emissions, calorie burn, and cost estimates |
| filter_tags | Filter OSM elements by specified tags |
| geocode_address | Convert an address or place name to geographic coordinates |
| geo_distance | Calculate the distance between two geographic coordinates |
| get_map_image | Retrieve and display an OpenStreetMap image for analysis |
| osm_query_bbox | Query OpenStreetMap data within a bounding box with tag filters |
| polyline_decode | Decode an encoded polyline string into a series of geographic coordinates |
| polyline_encode | Encode a series of geographic coordinates into a polyline string |
| reverse_geocode | Convert geographic coordinates to a human-readable address |
| route_fetch | Fetch a route between two points using OSRM routing service |
Kill hallucinated APIs — version-accurate, up-to-date library documentation injected straight into context.
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
GitHub's official server — repos, issues, pull requests, Actions and code security, straight from your assistant.
Issue tracking at the speed of conversation — Linear's official hosted server with OAuth and zero install.
Local repository surgery — status, diffs, commits, branches and history for any repo on disk.
Timezone sanity for AI — current time anywhere and correct conversions, without the model doing date math.