Pod

Available as Markdown and JSON. Pod is also available over MCP.

Reported issues for openstreetmap-mcp-server

Pod holds 7 of 7 GitHub reports that passed its relevance review. This can include external user reports, maintainer-confirmed bugs, and concrete feature gaps. Treat them as evidence to inspect, not a count of distinct defects.

Back to openstreetmap-mcp-server.

Most discussed

feat(query_nearby, query_bbox): key-existence and multi-tag conjunction filters

Use case

openstreetmap_query_nearby and openstreetmap_query_bbox accept one tag pair: amenity=<value> or tag_key + tag_value. Finding any shop, or Italian restaurants, currently requires hand-written Overpass QL in openstreetmap_query_raw.

Proposed behavior

Ask Input Overpass filter emitted
Any shop tag_key: "shop" (no tag_value) ["shop"]
Italian restaurants amenity: "restaurant", filters: [{ key: "cuisine", value: "italian" }]

Read the thread · 2026-09-10 · closed · 2 comments

feat(search_places): add viewbox locality bias

Use case

Place names and small features are often ambiguous outside a caller's study area. A hydrologist may need a creek inside one watershed, or an analyst may need a street or facility inside a municipal boundary. countrycodes is too coarse for this, and adding locality words to free-form text is less precise than Nominatim's geographic bias.

The current workflow can discover an area with openstreetmap_query_bbox, but it cannot carry those bounds into openstreetmap_search_places.…

Read the thread · 2026-08-11 · closed · 2 comments

bug(formatting): escape OSM text in Markdown content

Server version

0.4.3

mcp-ts-core version

0.12.5 (package.json pin ^0.12.5; behaviour re-verified with 0.12.8 resolved in node_modules)

Runtime

Bun

Runtime version

Bun 1.4.0

Transport

HTTP (Streamable HTTP)

OS

macOS 26.1

Description

Community-edited OSM text — Nominatim display_name/name/address values and Overpass tag keys/values/members[].role — is interpolated directly into Markdown-formatted content[] text across all six tools,…

Read the thread · 2026-08-11 · closed · 2 comments

bug(query_raw): out:json/timeout directive checks miss whitespace spellings Overpass accepts

Server version

0.4.6

mcp-ts-core version

0.12.8

Runtime

Bun

Runtime version

Bun 1.4.0

Transport

HTTP

Description

openstreetmap_query_raw (src/mcp-server/tools/definitions/openstreetmap-query-raw.tool.ts) validates and rewrites the [out:json]/[timeout:N] settings directives with three literal-string checks that all assume one exact spelling:

Read the thread · 2026-09-11 · closed · 1 comment

bug(overpass-service): a connection-level failure never faults the endpoint, so rotation returns to an unreachable host

Server version

0.4.6

mcp-ts-core version

0.12.8

Runtime

Bun

Runtime version

Bun 1.4.0

Transport

HTTP

Description

A connection-level failure never faults the endpoint that produced it, so rotation can return to an unreachable host for the rest of the call.

postQuery in src/services/overpass/overpass-service.ts wraps every fetch rejection that is not an McpError, not its own deadline, and not a caller abort as `serviceUnavailable('Network error…

Read the thread · 2026-09-11 · closed · 1 comment

bug(search_places): countrycodes accepts non-alpha-2 tokens and Nominatim silently drops the filter

Server version

0.4.6

mcp-ts-core version

0.12.8

Runtime

Bun

Runtime version

Bun 1.4.0

Transport

HTTP

Description

countrycodes is a bare z.string(). Nominatim only honors comma-separated ISO 3166-1 alpha-2 codes; any token it cannot parse is discarded and the search runs unfiltered, with HTTP 200 and no warning. So an alpha-3 code, a semicolon-separated list, or a country name silently widens the query to the whole world while the response still echoes the…

Read the thread · 2026-09-11 · closed · 1 comment

feat(query_bbox, query_raw): scope a tag search to an OSM boundary — everything inside this city, park, or watershed

The most common spatial question after "what is near X" is "what is inside Y": every school within Seattle's city limits, every spring inside a named watershed relation, every shop inside a park boundary. openstreetmap_search_places and openstreetmap_reverse_geocode return exactly the identifier needed — the boundary's osm_type/osm_id (R237385 for Seattle) — but no tool accepts it as a search scope. openstreetmap_query_bbox over the boundary's boundingbox overcovers by design…

Read the thread · 2026-09-11 · open · 0 comments

Most recent

The remaining reports are on the project's issue tracker.