foehn
Access Swiss meteorological open data from MeteoSwiss, powered by foehn
Connector by kayhendriksen · GitHub account verified by the MCP Registry
Install
Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/kayhendriksen-foehn
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: data-analysis
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.
- Tools
- 6 read · 0 write · 0 delete · 1 not yet classified
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Tools by what they do 7
Read from the source code; the running server may list different tools.
Read 6 · Look things up without changing anything.
describe_datadescribe_gridget_inventoryget_parametersget_stationslist_datasets
Not yet classified 1 · We could not tell from the name and description.
load_data
Network hosts it talks to 2
data.geo.admin.ch· found in codegithub.com· found in code
Tools (7)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
describe_dataDescribe dataGet a summary of a dataset without returning actual rows. Returns total row count, station list, date range, and column info (names, types, null counts). Use this to understand the shape and scope of data before calling load_data() — especially useful for planning queries on large historical datasets. Accepts the same filters as load_data so you can check exactly how many rows a query would return before fetching the data. **Cost note:** this still fetches the matching CSVs in full (they are not pre-bucketed by row count) and summarises them in memory — it returns no rows, but it is *not* c…
describe_gridDescribe gridInspect a gridded dataset's structure without returning array values. The grid analog of describe_data() for the CSV path. Returns the dataset's dimensions, coordinates, data variables (each with dims, shape, dtype, units, and long_name), and key global attributes — enough to understand the grid before deciding whether to pull it down locally. Works for any gridded collection: NetCDF (climate grids, normals, scenarios, hail hazard), GRIB2 forecasts (ICON-CH1/CH2, KENDA), and HDF5/ODIM radar (CombiPrecip, hail). CSV datasets should use describe_data()/load_data(). **`match` is required for G…
get_inventoryGet inventoryGet the data inventory for a dataset. Shows which parameters are available at which stations, and the time range (data_since, data_till) of available data. Args: dataset: Dataset name (e.g. "smn"). Call list_datasets() to see options.
get_parametersGet parametersGet parameter descriptions for a dataset. Returns what measurements are available (e.g. temperature, pressure, wind speed) with their short name, unit, data type, granularity, and group. Only works with CSV-backed datasets. Call this to understand what the column names in load_data() results mean. Args: dataset: Dataset name (e.g. "smn"). Call list_datasets() to see options.
get_stationsGet stationsGet station metadata for a dataset. Returns station abbreviation, name, canton, altitude (m a.s.l.), LV95 coordinates, latitude, longitude, and the date measurements started in MeteoSwiss station metadata format (DD.MM.YYYY). Args: dataset: Dataset name (e.g. "smn"). Call list_datasets() to see options.
list_datasetsList datasetsList all available MeteoSwiss datasets. Returns dataset name, collection ID, category, description, format, supported frequencies, and available time slices for each dataset. Args: category: Filter by category. Options: $categories. If omitted, returns all.
load_dataLoad dataLoad weather measurements and return rows as a list of dicts. Fetches live data from MeteoSwiss. Only works with the CSV-backed datasets named below. Binary/grid datasets (GRIB2, NetCDF, radar) are not supported — inspect those with describe_grid(). **Tip:** For historical data, always combine time filters (year, month, date_from/date_to) to avoid hitting the row limit. Use describe_data() first if you're unsure about the data shape. Args: dataset: Dataset name (e.g. "smn" for SwissMetNet). Loadable datasets: $loadable. station: Station abbreviation(s) (e.g. ["BER"] for Bern…
Compare and alternatives
Featured in
Signals
- Stars
- 45
- Forks
- 1
- Open issues
- 0
- Contributors
- 2
- Weekly downloads
- 72
- Last commit
- Oct 15, 2026 (13 days ago)
- Last release
- Aug 28, 2026 (2 months ago)
- Last package publish
- Aug 28, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026) and the package registry.
Details
- Registry name
io.github.kayhendriksen/foehn- Version
- 0.4.0
- Auth
- No auth
- Packages
- pypi foehn
- License
- MIT
- Repository
- github.com/kayhendriksen/foehn
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
Cite this page
foehn MCP server. Agent Mart. https://agentmart.dev/connectors/kayhendriksen-foehn (last updated 2026-10-24)