peaks.fyi — Mountain Routes, Huts & Weather
REMOTE · PEAKS.FYI
European mountain routes, huts, access and forecasts with sources and explicit unknowns.
Available components
Last scanned (2 hours ago)
Scores higher than 53% of remote servers
Reachable. Last reached 5 Nov 2026.
Category Maps and Location
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security63
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS enforcement could not be verified: the plaintext port answered with HTTP 405, which proves neither a plaintext path nor enforcement. View diagnostics → Unverified
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability66
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 2001 tokens (~133/item across 15 items; 15 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management20
- Stability observed for 6 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage88
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 57% of tool parameters carry a description.Partial
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 15 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 16 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 4 Nov 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.
- 2 Nov 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.
- 31 Oct 26 +1
- Stability: unverified → 0.03 ▲ functional
- 30 Oct 26 64
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Probed https://peaks.fyi/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=peaks.fyi | CN=WE1,O=Google Trust Services,C=US | 8 Oct 2026 | 6 Jan 2027 | ECDSA 256 | ECDSA-SHA256 | 26d1ea1207d81b3d135bb7dad2fd1560 |
| SANs: peaks.fyi, *.peaks.fyi | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of peaks.fyi. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| fyi. | present | 6839, 24340 | 8, 8 | Verified |
| peaks.fyi. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://peaks.fyi/mcp | Verified | 200 | |
| http (plaintext) | http://peaks.fyi/mcp | Inconclusive | 405 |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
fetch ~88
Read a peak search result by catalogue slug as a citable text document. Example input: {"id":"ben-nevis"}. This retrieves catalogue documents, not external website URLs; use your own browsing tool for publisher pages. Includes routes, season, access, hazards, huts, notices and provenance. Use get_weather for current forecasts.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Peak ID (slug) from search. |
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | – |
| text | string | yes | – |
| title | string | yes | – |
| url | string | yes | – |
No examples provided.
get_capabilities get capabilities ~36
Inspect actual catalogue coverage, output JSON schemas, data version, units and unsupported operations before planning. Unknown data is not evidence of absence.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| retrievedAt | string | yes | – |
| schemaVersion | number | yes | – |
| sources | array | yes | – |
No examples provided.
get_changes get changes ~69
Compare a watched set of peaks with a previous snapshot. Returns content changes, removals and an updated snapshot. No changes means no new source data, not proof that conditions are unchanged. Date-dependent notice status must still be checked.
| Name | Type | Req | Description |
|---|---|---|---|
| previous | array | – | – |
| slugs | array | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| retrievedAt | string | yes | – |
| schemaVersion | number | yes | – |
| sources | array | yes | – |
No examples provided.
get_daylight get daylight ~88
Compute sunrise, sunset and civil twilight for the exact calendar date and IANA zone. UTC instants handle daylight saving and polar days. Terrain and weather can reduce usable daylight.
| Name | Type | Req | Description |
|---|---|---|---|
| date | string | yes | – |
| slug | string | yes | Peak slug returned by search, for example mont-blanc. |
| timeZone | string | – | Optional explicit IANA zone; defaults to the catalogue zone. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| retrievedAt | string | yes | – |
| schemaVersion | number | yes | – |
| sources | array | yes | – |
No examples provided.
get_huts get huts ~108
Read huts, documented seasonal operation, source years and booking/contact URLs for a peak. Beds means capacity, never vacancies. Live availability, reservations, rental inventory and current opening status are unknown. Do not infer next year's opening dates from a dated season; contact the linked provider.
| Name | Type | Req | Description |
|---|---|---|---|
| date | string | – | Planning date; does not turn published seasons into live availability. |
| hutId | string | – | – |
| slug | string | yes | Peak slug returned by search, for example mont-blanc. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| retrievedAt | string | yes | – |
| schemaVersion | number | yes | – |
| sources | array | yes | – |
No examples provided.
get_notices get notices ~121
Read dated notices with publication validity, explicit scope uncertainty and recurrence hints. Supply slug and the trip date; omitted date means today (UTC), echoed in requestedDate. Expired notices may describe recurring regulations; expiry is not evidence that access is open. Verify current law with the linked source.
| Name | Type | Req | Description |
|---|---|---|---|
| date | string | – | Trip date, YYYY-MM-DD. Omit to check today's UTC date, which is echoed in requestedDate. |
| routeId | string | – | – |
| slug | string | yes | Peak slug returned by search, for example mont-blanc. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| retrievedAt | string | yes | – |
| schemaVersion | number | yes | – |
| sources | array | yes | – |
No examples provided.
get_peak get peak ~114
Get compact peak facts and route IDs. Example input: {"slug":"ben-nevis"}. Optionally request access, huts, seasons, hazards or provenance sections. For fact questions search may already suffice. For current weather use get_weather; for hut booking information use get_huts. Research is not live availability.
| Name | Type | Req | Description |
|---|---|---|---|
| sections | array | – | Omit for a compact overview, route IDs, season and notices. Request only sections needed. |
| slug | string | yes | Peak slug returned by search, for example mont-blanc. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| retrievedAt | string | yes | – |
| schemaVersion | number | yes | – |
| sources | array | yes | – |
No examples provided.
get_route get route ~107
Get one route by peak slug and routeId from get_peak: grade, equipment, key passages, stages, trailhead, timing, confidence and geometry QA. Failed, truncated or outline geometry must not be used for navigation. Times are estimates. No live route safety or opening guarantee.
| Name | Type | Req | Description |
|---|---|---|---|
| includeDescription | boolean | – | – |
| routeId | string | yes | Route ID from get_peak or search_routes. |
| slug | string | yes | Peak slug returned by search, for example mont-blanc. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| retrievedAt | string | yes | – |
| schemaVersion | number | yes | – |
| sources | array | yes | – |
No examples provided.
get_route_briefs get route briefs ~119
Compare up to six known routes in one compact evidence packet: grade, timing conflicts, selected equipment, linked huts, access, notices and optional dated daylight. Preserves per-route errors and source provenance. Partial results must not be treated as complete; no booking, live transport or suitability guarantee. Use get_route for full details and get_weather for forecasts.
| Name | Type | Req | Description |
|---|---|---|---|
| date | string | – | – |
| routes | array | yes | One to six known peak slug / route ID pairs from search_routes; not free-text names. |
| sections | array | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| retrievedAt | string | yes | – |
| schemaVersion | number | yes | – |
| sources | array | yes | – |
No examples provided.
get_route_point get route point ~103
Look up a named waypoint or difficult passage on a route. Returns source notes, known coordinates, nearby stage names, key passages and relevant equipment. Missing coordinates or conditions remain unknown; this is not live navigation guidance.
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | Name of a waypoint or key passage, e.g. Grand Couloir or halfway lochan. |
| routeId | string | yes | – |
| slug | string | yes | Peak slug returned by search, for example mont-blanc. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| retrievedAt | string | yes | – |
| schemaVersion | number | yes | – |
| sources | array | yes | – |
No examples provided.
get_weather get weather ~213
Get published weather for a peak and optional summit/hut/trailhead target. Set targetId and start/end for a bounded planning response; unfiltered forecasts can be large. Point samples are separate from accumulated rain/snow intervals and complete-window totals. Check target coverage and missing fields. Stale is marked; expired, missing and far-future data is unavailable. For a trip months away use get_peak seasons instead, never invent a forecast or a safety verdict.
| Name | Type | Req | Description |
|---|---|---|---|
| end | string | – | Exclusive forecast interval end, ISO 8601 with time zone. |
| slug | string | yes | Peak slug returned by search, for example mont-blanc. |
| start | string | – | Inclusive forecast interval start, ISO 8601 with time zone. |
| targetId | string | – | Optional exact summit, hut or trailhead target ID. Omit to see all targets. |
| view | string | – | Compact retains requested weather, intervals, uncertainty and coverage, omitting auxiliary per-point fields. Follow fullData for all fields. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| retrievedAt | string | yes | – |
| schemaVersion | number | yes | – |
| sources | array | yes | – |
No examples provided.
resolve_peak resolve peak ~84
Resolve a canonical peak ID, external Wikidata/OSM ID, current slug or exact name to its current slug and citable URL. Example input: {"id":"Ben Nevis"}. Use canonical IDs to recover from renamed slugs.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Canonical peak:id, Wikidata Q ID, OSM ID, current slug or exact translated name. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| retrievedAt | string | yes | – |
| schemaVersion | number | yes | – |
| sources | array | yes | – |
No examples provided.
search ~93
Search peaks.fyi by mountain name, alternative name, country, range or climbing request. Returns citable peak IDs and URLs. Use fetch to read a result; use search_peaks for explicit filters and pagination. An empty result means no match in this catalogue, not that the mountain does not exist.
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | Peak name, alias, country, range, or request such as hiking in Austria in July. |
| Name | Type | Req | Description |
|---|---|---|---|
| metadata | object | yes | – |
| results | array | yes | – |
No examples provided.
search_peaks search peaks ~288
Find and compare mountains with explicit country, elevation, season, difficulty and glacier filters. All filters are hard constraints; never silently relaxed. Returns compact peak summaries, IDs, total and nextOffset. Read get_peak and get_route before recommending a route: peak-level filters can describe different routes.
| Name | Type | Req | Description |
|---|---|---|---|
| bbox | array | – | Exactly [west,south,east,north] in degrees; west > east crosses the antimeridian. |
| countries | array | – | – |
| glacier | string | – | – |
| limit | integer | – | Page size, at most 20. Omit for 10. Use nextOffset to request another page. |
| maxDifficulty | integer | – | 1–2 easy hike, 3 mountain hike, 4 alpine hike/F, 5 PD, 6 AD, 7 D, 8 TD, 9 ED, 10 extreme. Peak-level minimum, not a guarantee for every route. |
| maxElevationM | number | – | – |
| minElevationM | number | – | – |
| month | integer | – | Month with a good historical climbing season; not a weather forecast. |
| near | object | – | – |
| offset | integer | – | Start at 0; use nextOffset from the preceding response for subsequent pages. |
| query | string | yes | Peak name, alias, country, range, or request such as hiking in Austria in July. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| retrievedAt | string | yes | – |
| schemaVersion | number | yes | – |
| sources | array | yes | – |
No examples provided.
search_routes search routes ~234
Find routes satisfying all supplied constraints on the SAME route, including difficulty, glacier travel, style and computed round-trip hours. Unknown glacier status is excluded by glacier filters. Searches all candidate peaks; use nextCursor until null for complete results. Coordinates filter peak locations, not trailheads. Transport matches documented prose, not confirmed operation. Historical season and public transport descriptions are not current operating confirmations. Read route details and conflicts before recommending.
| Name | Type | Req | Description |
|---|---|---|---|
| bbox | array | – | Exactly [west,south,east,north] in degrees; west > east crosses the antimeridian. |
| countries | array | – | – |
| cursor | string | – | Opaque nextCursor from the same query. Bound to the catalogue revision and filters. |
| glacier | string | – | – |
| limit | integer | – | – |
| maxDifficulty | integer | – | – |
| maxRoundTripHours | number | – | – |
| month | integer | – | – |
| near | object | – | – |
| publicTransport | boolean | – | Require documented transport to the trailhead; schedules and operating dates still need checking. |
| query | string | – | – |
| styles | array | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| retrievedAt | string | yes | – |
| schemaVersion | number | yes | – |
| sources | array | yes | – |
No examples provided.
How do I install the peaks.fyi — Mountain Routes, Huts & Weather MCP server?
peaks.fyi — Mountain Routes, Huts & Weather is a hosted endpoint at https://peaks.fyi/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · peaks.fyi
claude mcp add --transport http fyi-peaks-mountains 'https://peaks.fyi/mcp'
What is the peaks.fyi — Mountain Routes, Huts & Weather MCP server?
peaks.fyi — Mountain Routes, Huts & Weather is an MCP server listed in the public MCP registry as fyi.peaks/mountains. European mountain routes, huts, access and forecasts with sources and explicit unknowns. This page covers its hosted endpoint (https://peaks.fyi/mcp).
Is the peaks.fyi — Mountain Routes, Huts & Weather MCP server safe to use?
peaks.fyi — Mountain Routes, Huts & Weather scores 67 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the peaks.fyi — Mountain Routes, Huts & Weather MCP server expose?
peaks.fyi — Mountain Routes, Huts & Weather exposes 15 tools: get_route_briefs, get_capabilities, get_notices, resolve_peak, get_changes, and 10 more. Their descriptions and schemas cost roughly 1,865 tokens of context every time the server is loaded.
Does the peaks.fyi — Mountain Routes, Huts & Weather MCP server require authentication?
No. We connected to peaks.fyi — Mountain Routes, Huts & Weather without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the peaks.fyi — Mountain Routes, Huts & Weather MCP server still maintained?
peaks.fyi — Mountain Routes, Huts & Weather is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.