protogrid

Search / fyi.peaks/mountains

peaks.fyi — Mountain Routes, Huts & Weather

R0· no sign-in

European mountain routes, huts, access and forecasts with sources and explicit unknowns.

v3.1.0 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality91strong
Trust95of 100
Uptime, 30 days97%
Latency p50415 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "mountains": {
      "type": "http",
      "url": "https://peaks.fyi/mcp"
    }
  }
}
claude mcp add --transport http mountains https://peaks.fyi/mcp
[mcp_servers.mountains]
url = "https://peaks.fyi/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "mountains": {
      "type": "remote",
      "url": "https://peaks.fyi/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "mountains": {
      "type": "http",
      "url": "https://peaks.fyi/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=mountains&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vcGVha3MuZnlpL21jcCJ9"
}
{
  "servers": {
    "mountains": {
      "type": "http",
      "url": "https://peaks.fyi/mcp"
    }
  }
}
{
  "mcpServers": {
    "mountains": {
      "httpUrl": "https://peaks.fyi/mcp"
    }
  }
}
extensions:
  "mountains":
    enabled: true
    name: "mountains"
    type: streamable_http
    uri: "https://peaks.fyi/mcp"
    timeout: 300

Quality 91 / 100strong

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene100 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations15 of 15 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • pass
    tools.token_costabout 4,276 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability100 · weight 15
  • pass
    stability.changesno tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

15 tools, about 4,276 tokens to load them all · tool set d3ae64d17874 · checked 2026-11-07 17:28 UTC

Tool changes

No tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 95 / 100

provenance85
liveness99
freshness100
hygiene100

+repository +dns-namespace +website +reachable +uptime-97% +updated-8d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://peaks.fyi/mcp streamable-httpnoneyes97%415 ms2025-11-252026-11-07

Tools (15)

fetchread-onlyRead 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.
get_capabilitiesread-onlyInspect actual catalogue coverage, output JSON schemas, data version, units and unsupported operations before planning. Unknown data is not evidence of absence.
get_changesread-onlyCompare 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.
get_daylightread-onlyCompute 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.
get_hutsread-onlyRead 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.
get_noticesread-onlyRead 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.
get_peakread-onlyGet 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.
get_routeread-onlyGet 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.
get_route_briefsread-onlyCompare 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.
get_route_pointread-onlyLook 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.
get_weatherread-onlyGet 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.
resolve_peakread-onlyResolve 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.
searchread-onlySearch 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.
search_peaksread-onlyFind 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.
search_routesread-onlyFind 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.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "fyi.peaks/mountains",
  "title": "peaks.fyi — Mountain Routes, Huts & Weather",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://peaks.fyi/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "3.1.0",
  "repository": {
    "url": "https://github.com/nickshatilo/peaks-fyi",
    "source": "github"
  },
  "websiteUrl": "https://peaks.fyi/connect?utm_source=registry",
  "description": "European mountain routes, huts, access and forecasts with sources and explicit unknowns."
}