Weather forecasts from MET Norway (Yr): geocoding plus hourly forecasts worldwide.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
An MCP server for weather forecasts from MET Norway (Yr). Built as a learning project.
Available three ways:
met-mcp β run locally over stdiohttps://met-mcp.met-mcp-worker.workers.dev/mcp β Streamable HTTP on Cloudflare Workers, add it as a claude.ai connectorio.github.trondbjoroy/met-mcpgeocode_location(name, count) β find coordinates for a place name. Uses the free Open-Meteo geocoder, because MET has no geocoding API.get_forecast(latitude, longitude, hours) β hourly forecast from MET Locationforecast 2.0. Works worldwide, best in the Nordics.get_nowcast(latitude, longitude) β radar-based precipitation for the next 2 hours. Nordics only.get_weather_alerts(latitude?, longitude?) β official Norwegian danger warnings (MetAlerts). Omit coordinates for all of Norway.get_sun_events(latitude, longitude, date, utc_offset) β sunrise, sunset, and solar noon. Worldwide.get_ocean_forecast(latitude, longitude, hours) β wave height and sea temperature along the Norwegian coast.find_weather_stations(latitude, longitude, count) β nearest official weather stations (Frost).get_historical_weather(station_id, from, to, elements) β daily historical observations from the Frost archive; some stations go back over 100 years.The two Frost tools need a free client ID from https://frost.met.no/auth/requestCredentials.html, set as the FROST_CLIENT_ID env var (or a Cloudflare secret for the worker). The other tools need nothing.
Tool definitions live in src/tools.ts, shared between the stdio server and the worker.
The test spawns the server over stdio and calls both tools against the live APIs.
Then ask Claude: "What is the weather in Bergen tomorrow?"
MET_USER_AGENT env var, e.g. met-mcp/0.1.0 you@example.com.worker/ holds the Cloudflare Workers deployment: the same two tools served over MCP Streamable HTTP with createMcpHandler (MCP SDK v2). Develop with npm run dev, ship with npm run deploy (both from worker/).
src/index.ts is the whole server. It speaks MCP over stdio: JSON-RPC on stdin/stdout.content blocks. This server returns JSON as text, trimmed to what an LLM needs β the raw MET response has ~90 timesteps with far more fields.console.log. It corrupts the protocol stream. Log to stderr.No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/met-mcp)<a href="https://allmcps.com/mcp/met-mcp"><img src="https://allmcps.com/api/badge/met-mcp?style=directory" alt="Met MCP on AllMCPs" /></a>