Skip to main content
Glama
Bigred97

au-weather-mcp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_locationsA

Fuzzy-search the 21 curated Australian locations.

The curated set covers all 8 state/territory capitals plus 13 major regional centres (Newcastle, Wollongong, Gold Coast, Sunshine Coast, Cairns, Townsville, Mackay, Geelong, Ballarat, Bendigo, Launceston, Alice Springs, Broome).

Examples: results = await search_locations("sydney") # → [{id: 'sydney', name: 'Sydney', state: 'NSW', ...}]

results = await search_locations("nsw")
# → Newcastle, Wollongong, Sydney (all NSW locations)

When to use: - Discover the location ID for a city you know by name - Find all supported locations in a state - Verify whether a place is in the curated set before calling get_weather

Returns: List of LocationSummary (id, name, state, description), ranked by relevance.

describe_locationA

Return metadata for an Australian location — name, lat/lng, timezone, elevation, and (for curated locations) the nearest BOM station ID.

Accepts a wide range of input shapes for compatibility — see the location parameter description. The returned id is None for non-curated lookups (geocoded place names, raw coordinates) and a snake_case curated key when the input matched the curated set.

Examples: await describe_location("sydney") # → curated path await describe_location("Sydney") # → curated path (case-insensitive) await describe_location("NSW") # → state capital (Sydney) await describe_location("Margaret River") # → geocoded (Western Australia) await describe_location("-33.87,151.21") # → raw coordinates

When to use: - Before calling get_weather, to confirm coordinates and timezone - To cross-reference with BOM's own observation network (for curated) - To verify how the server resolved an ambiguous customer input

Returns: LocationDetail with id (or None), name, state, lat/lng, timezone, elevation, nearest BOM station ID (curated only), the Open-Meteo URL, and the CC-BY attribution.

latestA

Return the current weather observation for any Australian location.

Wraps Open-Meteo's /forecast endpoint with current=... parameters and a 15-minute cache TTL (matches Open-Meteo's own update cadence). Use for "what's the weather right now?" — warm-cache latency < 100 ms.

Examples: resp = await latest("sydney") # curated, fast path resp = await latest("Sydney") # case-insensitive resp = await latest("Byron Bay") # geocoded resp = await latest("NSW") # state → Sydney resp = await latest("-33.87,151.21") # raw coordinates

The response's location_resolution field tells the agent how the input was interpreted ('curated', 'state_alias', 'geocoded', 'raw_coordinates', or 'fuzzy_curated').

When to use: - "What's the weather right now in ?" — canonical use case - Multi-city current-conditions dashboards (call once per place) - Anchoring agent conversations to live weather context

Returns: WeatherResponse with current populated, plus location metadata, resolution source, source_url, CC-BY attribution, and server_version.

get_weatherA

Query weather over a date range. Routes to historical archive or forecast endpoint automatically based on the date range.

Routing logic: - end_date in the past (>= 5 days ago) → historical archive (1940+) - start_date in the future → forecast (today + 16 days max) - range straddles today → forecast with past_days set

Examples: # Historical: how was Sydney summer 2020? resp = await get_weather( "sydney", start_date="2020-01-01", end_date="2020-01-31", granularity="daily", ) # → 31 DailyAggregate rows with temp_max, temp_min, precip per day

# 7-day forecast for Melbourne, hourly detail
resp = await get_weather(
    "melbourne",
    start_date="2026-05-12",
    end_date="2026-05-19",
    granularity="hourly",
)
# → 168 hourly WeatherObservation rows

# Just today (omit both dates)
resp = await get_weather("brisbane")
# → today's daily aggregate

When to use: - Time-series queries (forecast over the next week, or historical comparison) - Multi-day weather analysis - Climate research and historical look-backs (decade-scale via archive)

Returns: WeatherResponse with either daily or hourly populated depending on granularity. Period bounds populated from actual returned data.

list_curatedA

List the 21 curated Australian location IDs supported by this MCP.

The curated set covers all 8 state/territory capitals plus 13 major regional centres: - 8 capitals: sydney, melbourne, brisbane, perth, adelaide, hobart, darwin, canberra - 5 NSW regional: newcastle, wollongong (NSW capitals as above) - 5 QLD regional: gold_coast, sunshine_coast, cairns, townsville, mackay - 3 VIC regional: geelong, ballarat, bendigo - 1 TAS regional: launceston - 2 remote: alice_springs (NT), broome (WA)

Example: ids = list_curated() # → ['adelaide', 'alice_springs', 'ballarat', 'bendigo', 'brisbane', # 'broome', 'cairns', 'canberra', 'darwin', 'geelong', 'gold_coast', # 'hobart', 'launceston', 'mackay', 'melbourne', 'newcastle', # 'perth', 'sunshine_coast', 'sydney', 'townsville', 'wollongong']

When to use: - You want to know which locations have first-class support - You're building a UI that shows the supported set up front - You want to plan a multi-location dashboard call

Returns: Sorted list of location IDs. Always 21 entries today; adding a location is a YAML edit, not a code change.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Bigred97/au-weather-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server