Skip to content

EM Snow

by snow.extreme-media.co.uk · remote · no sign-in to list tools · v1.0.0 · published by uk.co.extreme-media.snow

Ski resort conditions, forecasts, avalanche danger, sun, routes and snow history for 5,000+ resorts.

Final · 1Changes · 4

21 tools: 1 do something that can't be undone, 4 change things and 16 only read.

Scanned Oct 21, 2026

1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http em-snow https://snow.extreme-media.co.uk/mcp

Findings

Matches of fixed checks, with the text they matched.

1 warn
  • The server marks "route_on_mountain" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

21 tools

Can't be undone 1Claude Code: ask
  • route_on_mountainRoute between named pistes, lifts, the resort base or latitude,longitude coordinates using mapped OSM pistes and lifts.1 finding

    Why it is in this group

    • The input addresses people (input.to): what it sends cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "route_on_mountain" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    Route between named pistes, lifts, the resort base or latitude,longitude coordinates using mapped OSM pistes and lifts. Names match accent-insensitively and partially (exact, then prefix, then contained words); a piste or lift split into several connected OSM pieces counts as one. A lift used as from resolves to its top station, where you ski away; a lift used as to resolves to its bottom station, unless coordinates say otherwise. Ambiguous names return candidates. Coordinates more than 5 km from the resort are rejected. Easy, intermediate and advanced avoid terrain above that level; only expert permits expert, freeride and extreme terrain.

    Annotations the server declares

    • title: Route on mountain
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Changes things 4Claude Code: ask
  • add_snow_reportOnly relay a report from a person who is at, or was just at, the resort.No findings

    Why it is in this group

    • The name "add_snow_report" says "add": a word for a change.
    Description, as the server wrote it
    Only relay a report from a person who is at, or was just at, the resort. Never invent a report. The report goes live immediately and is labelled as relayed via an AI assistant.

    Annotations the server declares

    • title: Add snow report
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • plan_my_dayBuild modelled suggested runs in time order from forecast weather, sun, snow and mapped terrain.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Build modelled suggested runs in time order from forecast weather, sun, snow and mapped terrain. Only plans days inside the reported winter season; summer lift or bike-park operation does not count as open for skiing. Easy, intermediate and advanced exclude expert, freeride and extreme terrain; only expert permits it. Suggestions are not a connected route or live piste status.

    Annotations the server declares

    • title: Plan my day
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • suggest_resortSuggest a missing resort for human review.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Suggest a missing resort for human review. This never adds it directly to the resort index.

    Annotations the server declares

    • title: Suggest resort
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • where_is_it_snowingRank the freshest recently reported snow from the cached EM Snow home-page ranking.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Rank the freshest recently reported snow from the cached EM Snow home-page ranking.

    Annotations the server declares

    • title: Where is it snowing
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Only reads 16Claude Code: allow
  • avalanche_dangerSummarise the regional avalanche bulletin covering a resort: EAWS in Europe, avalanche.org centres in the US and Avalanche Canada, with zone, issuing centre, issue and expiry times…No findings

    Why it is in this group

    • The description's first verb is "summarise": a word for reading.
    Description, as the server wrote it
    Summarise the regional avalanche bulletin covering a resort: EAWS in Europe, avalanche.org centres in the US and Avalanche Canada, with zone, issuing centre, issue and expiry times and a link to the official forecast. Expired products are never shown as current. Never substitutes for the official bulletin or local advice.

    Annotations the server declares

    • title: Avalanche danger
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • best_time_to_goGet historical snow odds from the local ERA5 archive and quiet-week guidance where the crowd scorer covers the resort.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get historical snow odds from the local ERA5 archive and quiet-week guidance where the crowd scorer covers the resort.

    Annotations the server declares

    • title: Best time to go
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • fly_this_mountainGet a link that plays a simulated 3D tour of a resort in the EM Snow flyby (lifts up, named runs down, on the mapped piste network), or a tour of runs you name.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a link that plays a simulated 3D tour of a resort in the EM Snow flyby (lifts up, named runs down, on the mapped piste network), or a tour of runs you name. Pick names match like route_on_mountain; ambiguous names return candidates with picker ids. Status is ready, limited (small mapped network, the tour may be short) or unavailable (too few named runs or no linking lifts; the resort page is returned instead).

    Annotations the server declares

    • title: Fly this mountain
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_conditionsGet current snow, reported lift and run counts, weather and season state.No findings

    Why it is in this group

    • The name "get_conditions" says "get": a word for reading.
    Description, as the server wrote it
    Get current snow, reported lift and run counts, weather and season state. Lift and run counts are reported status, not guaranteed live.

    Annotations the server declares

    • title: Get conditions
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_extended_outlookGet a 16-day daily outlook (snowfall, temperatures, freezing level, maximum gusts and, for the first days, precipitation probability) from EM Snow's self-hosted GFS and ECMWF IFS m…No findings

    Why it is in this group

    • The name "get_extended_outlook" says "get": a word for reading.
    Description, as the server wrote it
    Get a 16-day daily outlook (snowfall, temperatures, freezing level, maximum gusts and, for the first days, precipitation probability) from EM Snow's self-hosted GFS and ECMWF IFS models. Days 1 to 7 overlap get_forecast; days 8 to 16 are low-confidence trend guidance only.

    Annotations the server declares

    • title: Get extended outlook
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_forecastGet the available daily snow, temperature, freezing level and wind-hold risk forecast, up to 10 requested days.No findings

    Why it is in this group

    • The name "get_forecast" says "get": a word for reading.
    Description, as the server wrote it
    Get the available daily snow, temperature, freezing level and wind-hold risk forecast, up to 10 requested days.

    Annotations the server declares

    • title: Get forecast
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_resort_mediaGet images for a resort that vision-capable assistants can show: nearby webcams with provider credit, a Wikimedia Commons photo with its per-file licence, author and source page, t…No findings

    Why it is in this group

    • The name "get_resort_media" says "get": a word for reading.
    Description, as the server wrote it
    Get images for a resort that vision-capable assistants can show: nearby webcams with provider credit, a Wikimedia Commons photo with its per-file licence, author and source page, the EM Snow sun and shade teaser where one exists, and the resort page link. No trail-map image is available.

    Annotations the server declares

    • title: Get resort media
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_snow_reportsGet recent visible community reports, including whether each came from the website or was relayed by an AI assistant.No findings

    Why it is in this group

    • The name "get_snow_reports" says "get": a word for reading.
    Description, as the server wrote it
    Get recent visible community reports, including whether each came from the website or was relayed by an AI assistant.

    Annotations the server declares

    • title: Get snow reports
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_webcamsGet nearby webcam images and their source links, with the required provider credit.No findings

    Why it is in this group

    • The name "get_webcams" says "get": a word for reading.
    Description, as the server wrote it
    Get nearby webcam images and their source links, with the required provider credit.

    Annotations the server declares

    • title: Get webcams
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • mountain_factsRead mapped OSM terrain inventory, lift fleet, vertical, longest run, carefully matched Wikidata facts, season dates and modelled snow reliability.No findings

    Why it is in this group

    • The description's first verb is "read": a word for reading.
    Description, as the server wrote it
    Read mapped OSM terrain inventory, lift fleet, vertical, longest run, carefully matched Wikidata facts, season dates and modelled snow reliability.

    Annotations the server declares

    • title: Mountain facts
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • nearby_resortsFind nearby resorts from the local EM Snow resort index.No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    Find nearby resorts from the local EM Snow resort index.

    Annotations the server declares

    • title: Nearby resorts
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • search_resortsFind ski resorts worldwide by name, country or distance.No findings

    Why it is in this group

    • The name "search_resorts" says "search": a word for reading.
    Description, as the server wrote it
    Find ski resorts worldwide by name, country or distance. Returns at most 20 matches and does not expose the bulk resort index.

    Annotations the server declares

    • title: Search resorts
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • season_recapSummarise the most recent completed ski season from the local ERA5 archive first.No findings

    Why it is in this group

    • The description's first verb is "summarise": a word for reading.
    Description, as the server wrote it
    Summarise the most recent completed ski season from the local ERA5 archive first.

    Annotations the server declares

    • title: Season recap
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • snow_reliabilityGet an explainable snow-reliability score from long-run ERA5 snow depth.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get an explainable snow-reliability score from long-run ERA5 snow depth.

    Annotations the server declares

    • title: Snow reliability
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • sun_on_the_mountainShow modelled sun and shade windows for eight slope aspects, with local terrain-horizon shading where DEM coverage exists.No findings

    Why it is in this group

    • The description's first verb is "show": a word for reading.
    Description, as the server wrote it
    Show modelled sun and shade windows for eight slope aspects, with local terrain-horizon shading where DEM coverage exists.

    Annotations the server declares

    • title: Sun on the mountain
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • watch_resortReturn a one-tap EM Snow URL where the person can watch a resort and optionally add dates.No findings

    Why it is in this group

    • The description's first verb is "return": a word for reading.
    Description, as the server wrote it
    Return a one-tap EM Snow URL where the person can watch a resort and optionally add dates. This tool does not collect email.

    Annotations the server declares

    • title: Watch resort
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http em-snow https://snow.extreme-media.co.uk/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__em-snow__search_resorts",
      "mcp__em-snow__get_conditions",
      "mcp__em-snow__get_forecast",
      "mcp__em-snow__sun_on_the_mountain",
      "mcp__em-snow__avalanche_danger",
      "mcp__em-snow__mountain_facts",
      "mcp__em-snow__best_time_to_go",
      "mcp__em-snow__season_recap",
      "mcp__em-snow__snow_reliability",
      "mcp__em-snow__nearby_resorts",
      "mcp__em-snow__get_webcams",
      "mcp__em-snow__get_snow_reports",
      "mcp__em-snow__watch_resort",
      "mcp__em-snow__get_extended_outlook",
      "mcp__em-snow__get_resort_media",
      "mcp__em-snow__fly_this_mountain"
    ],
    "ask": [
      "mcp__em-snow__plan_my_day",
      "mcp__em-snow__route_on_mountain",
      "mcp__em-snow__where_is_it_snowing",
      "mcp__em-snow__add_snow_report",
      "mcp__em-snow__suggest_resort"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as em-snow. Review it before you use it.