← The evidence ledger
Evidence row 3388698
Observed , by sync.mcp_registry/1.
- Kind
- listing
- About
- source_record mcp_registry:io.github.cyanheads/openstreetmap-mcp-server
- Recorded
- Previous row
- #35553
- Body SHA-256
- 7615f8a7383a83c6896299f661befb1a803271f9fd7a11e8b164020a42a8a0a8
- Leaf
- 0xfd2c08c296dbd34a75f6e08615d30acddd86fb80a5b6c168956c10d745aec093
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-11-05T10:35:17.423156Z",
"status": "active",
"statusChangedAt": "2026-11-05T10:35:17.423156Z",
"updatedAt": "2026-11-05T10:35:17.423156Z"
}
},
"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.1",
"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 instance such as the FOSSGIS servers, maps.mail.ru, or overpass.private.coffee; 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.1"
},
{
"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.1",
"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 instance such as the FOSSGIS servers, maps.mail.ru, or overpass.private.coffee; 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.1"
}
],
"remotes": [
{
"type": "streamable-http",
"url": "https://openstreetmap.caseyjhand.com/mcp"
}
],
"repository": {
"source": "github",
"url": "https://github.com/cyanheads/openstreetmap-mcp-server"
},
"version": "0.7.1"
}
},
"source": "mcp_registry",
"summary": "Geocode, reverse geocode, and run Overpass spatial queries on OpenStreetMap data."
}What the leaf hashes
{"body":"7615f8a7383a83c6896299f661befb1a803271f9fd7a11e8b164020a42a8a0a8","id":3388698,"kind":"listing","method":"sync.mcp_registry/1","observed_us":1793877684903852,"prev":35553,"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 (322504 rows).
- 0xfd2c0c2e08ab3a976e736dcd126009d1cf63d234717149c0e6fdf00d734ba400
- 0x7f8c16210f70a4d652fef7fd99b254d0eef89a43a97dded708090f2ed868b935
- 0x3b9b459928184d747aedfdf9b3ff32680143da374210b91e30107c55b3087a00
- 0x42d7040891a547131a62f4f9825f82e6345aaf426d1d02fe0fd8f30512b7a0c2
- 0x1972bcba4870c95856f9de34489bfea61337474d9cf7d04e9c373cd57449f61d
- 0xe73ec1976a772e469f0b17e91701e77e1738d2f755bb44032fbcf62626eb733f
- 0xeab676dad02258c7fc612ca1b08fc6e31dcc5a95b3f5b84fa297999a61ecc6a8
- 0x48f5a6a337c95461b86810d5a8d3f80293d45246d7004ce9b9de36b2fd9bf10f
- 0xdae2aceada43da7509347bb51348d58582b100f8e02c05fb8ee07d8b0d71fb83
- 0xcac0dd510559493d7b623f5ef29435de71d18cba4029785bf0b2dc413bbfce6c
- 0x83035ff4cda13b7d2a49f344de2eed06e5f7fcd7cc4303523f2208498eba6c88
- 0x552696606ea73b0163599398e1ccc97bf8b22274048bd7f82c6015f22cdf38a5
- 0x32cdd5f985d6f5dcb852dbf3a7924ae74a936eee7bb229a55cfcc9eca125a03a
- 0x56dbb7d889da4d5e4c8ee4460ba3f515c1cfa48fd0a091d65b32279673ea30a8
- 0xc52fdd499240d4cae496484b3da9c532542859f0626ea2a2fc243490680039e2
- 0x46e57eb471bdfedc5371f9f8dd93e03a0ef82a84f79b917a40533d34f61e890c
- 0x595efddb5b196a921c775c54d0aa541065f1802bfefb8bd003a60b16925c4b58
- Day root
- 0x9f0215efb0252701dc86d5600ce95f276cccc716759bf112525ae863f698d128
- Chained
- 0xc54ddff800630c6cd9656f99e7d6a61adce99bf1cea37121600598b0a9a720d2
- Published
- On Arc Testnet, block 70942081: 0x88f612ad94ca63af4e4e9faab9f34b665b41f03828afac1571ad013cc62bba94