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.
21 tools: 1 do something that can't be undone, 4 change things and 16 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone1Claude Code: ask: see these tools
- Changes things4Claude Code: ask: see these tools
- Only reads16Claude Code: allow: see these tools
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/mcpFindings
Matches of fixed checks, with the text they matched.
The server marks "route_on_mountain" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.
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".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.
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/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .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.