← The evidence ledger
Evidence row 35553
Observed , by baseline/1.
- Kind
- listing
- About
- source_record mcp_registry:io.github.cyanheads/openstreetmap-mcp-server
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- 3d8534822bf2ce7f0e45dfcb37ac6e4bf0b90f0e22a5834239c86839ee557f41
- Leaf
- 0x808c1387fed0adc713a74b7eef32df5fcb8d6b7ad8a476b89f0194e7552fbc08
What was observed
{
"endpoints": [
[
"mcp",
"https://openstreetmap.caseyjhand.com/mcp"
]
],
"name": "io.github.cyanheads/openstreetmap-mcp-server",
"owner_address": null,
"raw": {
"_meta": {
"io.modelcontextprotocol.registry/official": {
"isLatest": true,
"publishedAt": "2026-10-26T07:11:32.980016Z",
"status": "active",
"statusChangedAt": "2026-10-26T07:11:32.980016Z",
"updatedAt": "2026-10-26T07:11:32.980016Z"
}
},
"server": {
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"description": "Geocode, reverse geocode, and run Overpass spatial queries on OpenStreetMap data.",
"name": "io.github.cyanheads/openstreetmap-mcp-server",
"packages": [
{
"environmentVariables": [
{
"default": "https://nominatim.openstreetmap.org",
"description": "Nominatim API base URL. Override to use a private or mirror instance.",
"format": "string",
"name": "OSM_NOMINATIM_BASE_URL"
},
{
"default": "openstreetmap-mcp-server/0.7.0",
"description": "User-Agent sent to Nominatim and Overpass. Required by usage policy.",
"format": "string",
"name": "OSM_USER_AGENT"
},
{
"description": "Overpass API endpoint URL. When set, pins every query to this one endpoint and disables mirror failover; OSM_OVERPASS_MAX_CONCURRENCY sizes it and a |N suffix is rejected. Leave unset to use OSM_OVERPASS_ENDPOINTS.",
"format": "string",
"name": "OSM_OVERPASS_BASE_URL"
},
{
"default": "https://overpass-api.de/api/interpreter",
"description": "Comma-separated ordered list of Overpass endpoints. A failure advances to the next entry within the same tool call; a single entry means no failover. An entry written url|N gets N slots of its own and adds capacity, for an instance whose operator allows parallel queries, never a public FOSSGIS server; an unsuffixed later entry is failover only. Write a | inside a URL as %7C. Verify a mirror's usage policy, data coverage, and freshness before adding it. Ignored when OSM_OVERPASS_BASE_URL is set.",
"format": "string",
"name": "OSM_OVERPASS_ENDPOINTS"
},
{
"default": "1",
"description": "Concurrent Overpass queries per endpoint: OSM_OVERPASS_BASE_URL, and every OSM_OVERPASS_ENDPOINTS entry not sized with |N. With no |N entry it is also the most queries in flight across all endpoints. A query waits at most 30 seconds in total for a slot, then fails with pacer_shed and a retryAfter. The default of 1 follows the public FOSSGIS instances, which allow one query in flight per user; raise it only for an instance whose operator allows parallel queries, such as a private or paid one.",
"format": "number",
"name": "OSM_OVERPASS_MAX_CONCURRENCY"
},
{
"default": "info",
"description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').",
"format": "string",
"name": "MCP_LOG_LEVEL"
}
],
"identifier": "@cyanheads/openstreetmap-mcp-server",
"registryBaseUrl": "https://registry.npmjs.org",
"registryType": "npm",
"runtimeHint": "npx",
"transport": {
"type": "stdio"
},
"version": "0.7.0"
},
{
"environmentVariables": [
{
"description": "Selects the HTTP transport.",
"format": "string",
"name": "MCP_TRANSPORT_TYPE",
"value": "http"
},
{
"default": "127.0.0.1",
"description": "The hostname for the HTTP server.",
"format": "string",
"name": "MCP_HTTP_HOST"
},
{
"default": "3010",
"description": "The port to run the HTTP server on.",
"format": "string",
"name": "MCP_HTTP_PORT"
},
{
"default": "/mcp",
"description": "The endpoint path for the MCP server.",
"format": "string",
"name": "MCP_HTTP_ENDPOINT_PATH"
},
{
"description": "Public origin override for deployments behind a TLS-terminating reverse proxy (e.g. https://mcp.example.com).",
"format": "string",
"name": "MCP_PUBLIC_URL"
},
{
"default": "none",
"description": "Authentication mode to use: 'none', 'jwt', or 'oauth'.",
"format": "string",
"name": "MCP_AUTH_MODE"
},
{
"default": "https://nominatim.openstreetmap.org",
"description": "Nominatim API base URL. Override to use a private or mirror instance.",
"format": "string",
"name": "OSM_NOMINATIM_BASE_URL"
},
{
"default": "openstreetmap-mcp-server/0.7.0",
"description": "User-Agent sent to Nominatim and Overpass. Required by usage policy.",
"format": "string",
"name": "OSM_USER_AGENT"
},
{
"description": "Overpass API endpoint URL. When set, pins every query to this one endpoint and disables mirror failover; OSM_OVERPASS_MAX_CONCURRENCY sizes it and a |N suffix is rejected. Leave unset to use OSM_OVERPASS_ENDPOINTS.",
"format": "string",
"name": "OSM_OVERPASS_BASE_URL"
},
{
"default": "https://overpass-api.de/api/interpreter",
"description": "Comma-separated ordered list of Overpass endpoints. A failure advances to the next entry within the same tool call; a single entry means no failover. An entry written url|N gets N slots of its own and adds capacity, for an instance whose operator allows parallel queries, never a public FOSSGIS server; an unsuffixed later entry is failover only. Write a | inside a URL as %7C. Verify a mirror's usage policy, data coverage, and freshness before adding it. Ignored when OSM_OVERPASS_BASE_URL is set.",
"format": "string",
"name": "OSM_OVERPASS_ENDPOINTS"
},
{
"default": "1",
"description": "Concurrent Overpass queries per endpoint: OSM_OVERPASS_BASE_URL, and every OSM_OVERPASS_ENDPOINTS entry not sized with |N. With no |N entry it is also the most queries in flight across all endpoints. A query waits at most 30 seconds in total for a slot, then fails with pacer_shed and a retryAfter. The default of 1 follows the public FOSSGIS instances, which allow one query in flight per user; raise it only for an instance whose operator allows parallel queries, such as a private or paid one.",
"format": "number",
"name": "OSM_OVERPASS_MAX_CONCURRENCY"
},
{
"default": "info",
"description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').",
"format": "string",
"name": "MCP_LOG_LEVEL"
}
],
"identifier": "@cyanheads/openstreetmap-mcp-server",
"registryBaseUrl": "https://registry.npmjs.org",
"registryType": "npm",
"runtimeHint": "npx",
"transport": {
"type": "streamable-http",
"url": "http://localhost:3010/mcp"
},
"version": "0.7.0"
}
],
"remotes": [
{
"type": "streamable-http",
"url": "https://openstreetmap.caseyjhand.com/mcp"
}
],
"repository": {
"source": "github",
"url": "https://github.com/cyanheads/openstreetmap-mcp-server"
},
"version": "0.7.0"
}
},
"source": "mcp_registry",
"summary": "Geocode, reverse geocode, and run Overpass spatial queries on OpenStreetMap data."
}What the leaf hashes
{"body":"3d8534822bf2ce7f0e45dfcb37ac6e4bf0b90f0e22a5834239c86839ee557f41","id":35553,"kind":"listing","method":"baseline/1","observed_us":1793025373274574,"prev":null,"subject":"mcp_registry:io.github.cyanheads/openstreetmap-mcp-server","subject_kind":"source_record"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).
- 0x808bd8835df768d6868e533f1c760f305e257be2e921ed0dd7805c5e8abe8a24
- 0x9dfa0cfddc9f2e92699b43d452fedc286392dfd8783c7a68f47ba30af6e614a3
- 0x14138d5936df8636cf343ed1390183858294fbbd19e354261afa8a2f2c24a467
- 0xfbe62e0244d0112b51b3f9097ff75c358171e5e35c25ff518685de6ede9186f4
- 0x10ad35f89b18410fb2ab0261c1fc00fecf18135e94cb2a191f1ae33f009ce6e0
- 0xdec177982d62ee8eb089125e7ce16e8e8c15558f0a06c74b6dd3172d9a34be46
- 0x948e23b009153139ce9be81120a75686f8dad19316d21d0c6c8db6783517a902
- 0xf89deec1b89a50bb438a6cc9537c7e8b876b9d9e76475f0febd6db070aa42ff3
- 0x33473c1ba41117ab362e57768253f8c51c21c9146ff505d93b1c7c8662f95eeb
- 0x15c5749acf6e438b0810eb58256d5489413257c72393a4d6db9114e07e5b4598
- 0x62490dd1c15d5301c6fb2c08f1d6ceb3a0d4c216f6e742424332881907db0fcd
- 0xb9c4107c5cbaf0844324e5ba287c90e0643bb7b9e48e7877adda9372132cf0ea
- 0x4d2ee986a690e903126f449b4e9e62d5572b350357ab4496a83488949b131c29
- 0x0eff463856b0992d53ab7d8c0b97c71541413358bdd445710c1e4b6aeb4d8f78
- 0x7eb603d37f0f22dae1ea013e391889906ffc0139ff26e25b044bee38eec8f9b2
- 0x2b6e23e3624a1b66e1d2298cfbce99a93ce6b13d24a58112a71802d79c5f7a76
- 0xd21942ae3214eff88e08ab04884fd4b11958b51af9a0741b7668e2d07a2c56c9
- 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
- 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
- Day root
- 0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
- Chained
- 0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
- Published
- On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae