Skip to main content
Glama
pierre-phu

swiss-outdoor-mcp

by pierre-phu
README.md
# swiss-outdoor-mcp

An [MCP](https://modelcontextprotocol.io) server that gives an LLM client reliable, computed facts
for planning Swiss mountain outings by public transport. The v0.1 use case is paragliding:

> "Saturday, from Lausanne, where can I go paragliding by train?"

The server does not answer that question. It provides the deterministic pieces — launch sites,
ensemble-based flyability probabilities, train connections — and the LLM composes them.
**There are no LLM calls inside the server.**

## Status

Day 1 of a 5-day build: project scaffold, a `ping` tool and the data schemas. The real tools
(`list_sites`, `get_flyability`, `get_connections`, `estimate_trip_co2`) land on days 2–4.
See [`docs/SPEC.md`](docs/SPEC.md).

## Install and run

```bash
uv sync
uv run swiss-outdoor-mcp     # speaks MCP over stdio
```

## Development

```bash
uv run ruff check . && uv run ruff format --check . && uv run mypy src && uv run pytest
```

See [`CONTRIBUTING.md`](CONTRIBUTING.md). Verified facts about every upstream API live in
[`docs/api-notes.md`](docs/api-notes.md) — read it before touching a client.

## Limitations

This is **not a flight-safety tool.** Flyability output is an indicator built from a public
weather model; it does not replace pilot judgment, a site briefing, or official aviation weather.

## Data sources

- Weather: [Open-Meteo](https://open-meteo.com) Ensemble API — weather data by Open-Meteo.com,
  [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).
- Public transport: [transport.opendata.ch](https://transport.opendata.ch) (an unofficial API over
  the Swiss timetable; its terms of use are not stated — see `docs/api-notes.md`).

## Licence

MIT — see [LICENSE](LICENSE).

TDQS

A4.1/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool in the set, there is no possible ambiguity or overlap. The ping tool is the sole functionality, so an agent cannot confuse it with anything else.

Naming Consistency5/5

There is only one tool named 'ping', which is a standard, clear health-check convention. With no other tools, there is no pattern to violate, so consistency is effectively perfect.

Tool Count1/5

A server named swiss-outdoor-mcp with only a ping health check has a severe mismatch between its apparent purpose and its actual tool surface. One trivial tool is far too few for the implied domain.

Completeness1/5

The server's name suggests it should cover Swiss outdoor activities, but the only tool is a reachability check. There is no actual domain functionality, leaving every conceivable outdoor use case unsupported.

Maintenance

ActivityMaintained
ResponsivenessNo issues