Skip to main content
Glama
meteo-swiss-mcp

meteo-swiss-mcp

by cuolm

forecast_temperature

Read-only

Get hourly temperature forecasts for any place in Switzerland, with likely ranges, for a single hour or a period up to 8 days ahead. Plan around how warm it will be at a given time.

Instructions

        Get the temperature hour by hour at a place, with its likely range.

        Use this for "how warm is it at 15:00" or "how warm is it this afternoon". Without end
        it returns the one hour starting at start. Each row gives the mean temperature of one
        hour, between its from and to times.

        Args:
            location (str): Name of a place in Switzerland, e.g. "Zürich".
            start (str): Start of the period, a full hour, e.g. "2026-09-23T15:00". Today or up to 8 days ahead.
            end (str): Optional. End of the period, a full hour after start, e.g. "2026-09-23T18:00".

        Returns:
            dict: data_from when the forecast point is far away or at a significantly different
                height, the place, one row per hour and the model run. In 8 of 10 possible outcomes,
                the temperature lies between its 10th and 90th percentile.

        Examples:
            forecast_temperature("Zürich", "2026-09-23T15:00")                        # one hour
            forecast_temperature("Zürich", "2026-09-23T12:00", "2026-09-23T18:00")    # the afternoon
        

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "location": "<location>",
      "start": "<start>"
    },
    "name": "forecast_temperature"
  }
}

Input Schema

NameRequiredDescriptionDefault
endNo
nearNoOnly when several places share the name: a village next to the place the user means. For "the Blausee near Bettmeralp" use location "Blausee" and near "Bettmeralp". Leave it out otherwise.
startYes
locationYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.4.0

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnly and openWorld; the description adds real behavioral context beyond them: the forecasting horizon ('today or up to 8 days ahead'), the per-hour row structure with from/to bounds, the data_from caveat when the forecast point is distant or at a different elevation, and the probabilistic meaning of the 10th-90th percentile band.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads purpose then usage, then args, returns, and two runnable examples that disambiguate the optional end parameter. Slightly verbose in restating parameter names from the schema, but every section contributes and nothing is redundant boilerplate.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the Returns section usefully describes the response shape and its uncertainty semantics, and the example calls show both single-hour and range invocation. The one omission is temperature units (implicit Celsius given Swiss locations) and explicit time-zone handling for the datetime strings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 25% (only 'near' is documented inline), so the description must carry the load, and it largely does: it defines location as a Swiss place name, requires start to be a full hour with a concrete format example, and marks end as optional with an example. The undocumented gap is time zone/units rather than parameter meaning, keeping it just below the top mark.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb, resource, and granularity: 'Get the temperature hour by hour at a place, with its likely range.' The hourly scope plus the 'one row per hour' detail cleanly separates it from siblings like forecast_daily, forecast_rain, and forecast_wind without needing their schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete trigger phrases ('how warm is it at 15:00', 'how warm is it this afternoon') and explains the end-parameter semantics for choosing a single hour vs. a window. It stops short of naming a sibling alternative or stating when not to use it, so it is strong context rather than full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.