avalanche-org-mcp-server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@avalanche-org-mcp-server What's the current avalanche danger at 40.58, -111.65?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
avalanche-org-mcp-server
A minimal Model Context Protocol (MCP) server that wraps the Avalanche.org Public API map-layer endpoints. It lets LLMs look up avalanche danger ratings by location, retrieve raw forecast GeoJSON, and query historic conditions.
Features
Danger lookup by lat/lon — find the avalanche zone for any point and get its current danger rating
Historic danger lookup — same as above, but for a specific past date
Raw map-layer GeoJSON — full FeatureCollection for all avalanche centers, or scoped to one center
Data sourced from the Avalanche.org Public API. See the API docs for details.
Related MCP server: Weather MCP Server
Quick Start
Claude Desktop (npx — recommended)
Add this to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"avalanche-org": {
"command": "npx",
"args": ["-y", "avalanche-org-mcp-server"]
}
}
}No install required. Claude will download and run it automatically.
Global npm install
npm install -g avalanche-org-mcp-server{
"mcpServers": {
"avalanche-org": {
"command": "avalanche-org-mcp-server"
}
}
}Docker
docker pull ghcr.io/haydenwade/avalanche-org-mcp-server:latest{
"mcpServers": {
"avalanche-org": {
"command": "docker",
"args": ["run", "--rm", "-i", "ghcr.io/haydenwade/avalanche-org-mcp-server:latest"]
}
}
}From source
git clone https://github.com/haydenwade/avalanche-org-mcp-server.git
cd avalanche-org-mcp-server
npm install
npm run build{
"mcpServers": {
"avalanche-org": {
"command": "node",
"args": ["/absolute/path/to/avalanche-org-mcp-server/dist/src/index.js"]
}
}
}Tools
avalanche_danger_rating_by_point
Get the current avalanche danger rating for a lat/lon point. Returns the zone the point falls in, or the nearest zone if preferNearest is true.
Parameter | Type | Required | Description |
| number | yes | Latitude in decimal degrees |
| number | yes | Longitude in decimal degrees |
| boolean | no | Fall back to nearest zone if point is outside all polygons (default: |
| string | no | Scope search to a specific avalanche center (e.g. |
Example input:
{ "lat": 40.5763, "lon": -111.7522, "preferNearest": true, "centerId": "UAC" }{
"match": "inside_zone",
"distance_km": 0,
"distance_miles": 0,
"zone": {
"id": "zone-1",
"name": "Salt Lake",
"state": "UT"
},
"center": {
"id": "UAC",
"name": "Utah Avalanche Center",
"timezone": "America/Denver",
"link": "https://utahavalanchecenter.org"
},
"danger": {
"level": 3,
"label": "Considerable",
"color": "#f1a302"
},
"travel_advice": "Dangerous avalanche conditions. Careful snowpack evaluation, cautious route-finding and conservative decision-making essential.",
"forecast_url": "https://utahavalanchecenter.org/forecast/salt-lake",
"validity": {
"start_date": "2026-03-22",
"end_date": "2026-03-23"
},
"warning": null
}historic_avalanche_danger_rating_by_point
Same as above, but for a specific historic date. Returns all the same fields plus day.
Parameter | Type | Required | Description |
| number | yes | Latitude in decimal degrees |
| number | yes | Longitude in decimal degrees |
| string | yes | Date in |
| boolean | no | Fall back to nearest zone (default: |
| string | no | Scope to an avalanche center |
Example input:
{ "lat": 40.5763, "lon": -111.7522, "day": "2025-02-24", "preferNearest": true }{
"match": "inside_zone",
"distance_km": 0,
"distance_miles": 0,
"zone": { "id": "zone-1", "name": "Salt Lake", "state": "UT" },
"center": { "id": "UAC", "name": "Utah Avalanche Center", "..." : "..." },
"danger": { "level": 3, "label": "Considerable", "color": "#f1a302" },
"travel_advice": "Dangerous avalanche conditions. ...",
"forecast_url": "https://utahavalanchecenter.org/forecast/salt-lake",
"validity": { "start_date": "2025-02-24", "end_date": "2025-02-25" },
"warning": null,
"day": "2025-02-24"
}raw_map_layer
Returns the raw Avalanche.org map-layer GeoJSON FeatureCollection for all avalanche centers.
Parameter | Type | Required | Description |
| string | no | Historic date in |
{
"geojson": {
"type": "FeatureCollection",
"features": [ "... full GeoJSON features ..." ]
}
}raw_map_layer_by_avalanche_center
Returns the raw map-layer GeoJSON FeatureCollection for a single avalanche center.
Parameter | Type | Required | Description |
| string | yes | Avalanche center ID (e.g. |
| string | no | Historic date in |
{
"geojson": {
"type": "FeatureCollection",
"features": [ "... full GeoJSON features ..." ]
}
}Development
Requires Node.js >= 18.
npm install
npm run build
npm testTo interactively test tools with the MCP Inspector:
npx @modelcontextprotocol/inspector node dist/src/index.jsProject structure
src/
index.ts # Entry point — server setup + stdio transport
tools.ts # Tool registration
constants.ts # API URLs and timeouts
types.ts # GeoJSON type definitions
api/
mapLayer.ts # Map-layer fetch + GeoJSON normalization
lib/
geometry.ts # Point-in-polygon, haversine distance, bounds
dangerLookup.ts # Danger rating lookup logic
validation.ts # Date and coordinate validation
test/
*.test.ts # Tests (node:test)Contributing
Fork the repo
Create a feature branch (
git checkout -b my-feature)Make your changes and add tests
Run
npm testto make sure everything passesOpen a pull request
License
MIT
Available Tools
4 toolsavalanche_danger_rating_by_pointA
Get the current avalanche danger rating and forecast metadata for the avalanche zone containing a latitude/longitude point. Can fall back to the nearest zone.
Inputs: lat (required), lon (required), centerId, preferNearest.
historic_avalanche_danger_rating_by_pointA
Get the avalanche danger rating and forecast metadata for the avalanche zone containing a latitude/longitude point on a specific historic day (YYYY-MM-DD). Can fall back to the nearest zone.
Inputs: day (required), lat (required), lon (required), centerId, +1 more.
raw_map_layerA
Return the raw Avalanche.org map-layer GeoJSON FeatureCollection for all avalanche centers. Supports an optional historic day (YYYY-MM-DD).
Inputs: day.
raw_map_layer_by_avalanche_centerA
Return the raw Avalanche.org map-layer GeoJSON FeatureCollection for a specific avalanche center ID. Supports an optional historic day (YYYY-MM-DD).
Inputs: centerId (required), day.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 4 tools
The four tools split cleanly along two axes: current vs historic ratings (tools 1 vs 2) and all-centers vs single-center raw layers (tools 3 vs 4). The main potential confusion is between the point-based rating tools and the map-layer tools, since raw_map_layer also accepts a historic day, but their output intent (formatted rating vs raw GeoJSON) differs enough to keep them distinct.
All names use consistent snake_case with descriptive suffixes (_by_point, _by_avalanche_center) and clear domain prefixes (avalanche_danger_rating, historic_, raw_map_layer). It is not a strict verb_noun convention, but the modifiers are applied predictably across the set, so an agent can infer related tools.
Four tools is a tight, well-scoped surface for a narrow domain (avalanche danger lookups). Each tool covers a distinct query dimension, though the set sits at the low end and one could argue a couple more (e.g. by-center rating) would round it out.
The surface covers current/historic point ratings and raw map layers for all or a single center, but there is no direct way to query a formatted danger rating by avalanche center ID, nor to list available centers/zones. Raw GeoJSON partially compensates, but some lookup paths dead-end.
Maintenance
Related MCP Connectors
US weather & geo for AI agents: forecasts, alerts, earthquakes, elevation, geocoding. No keys.
US weather & geo for AI agents: forecasts, alerts, earthquakes, elevation, geocoding. No keys.
Current weather and forecast lookup as an agent tool.
US NWS weather alerts and 5-day forecasts for AI agents. $0.01 per call.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables AI assistants to access real-time US weather forecasts and alerts through the National Weather Service API.28 npmMIT
- FlicenseBqualityDmaintenanceProvides real-time US weather alerts and forecasts by integrating with the National Weather Service API. It enables AI assistants to fetch state-specific alerts and detailed local forecasts using geographic coordinates.21-
- AlicenseNot gradedqualityDmaintenanceProvides access to aviation weather data from aviationweather.gov, enabling LLMs to fetch and analyze METAR, TAF, PIREPs, AIRMETs, and other aviation weather information.20 npm7MIT
- AlicenseNot gradedqualityDmaintenanceProvides avalanche forecasts, danger ratings, and field observations for US avalanche centers, Canadian regions, and Quebec's Chic-Chocs via natural language queries.1MIT