OpenWeatherMap

live DataWeather

OpenWeather MCP — wraps the OpenWeatherMap API (openweathermap.org)

4 tools
0ms auth
free tier 50 calls/day

Tools

current_weather

Get the current weather for a city or coordinates: temperature, "feels like", conditions, humidity, wind speed, and cloud cover. Example: current_weather({ city: "London", units: "metric" })

No parameters required.

Try it
forecast

Get a multi-step weather forecast (3-hour intervals) for a city or coordinates: temperature, conditions, wind speed, and precipitation probability over time. Example: forecast({ city: "Tokyo", count:

No parameters required.

Try it
air_quality

Get the current air quality for a set of coordinates: an air quality index (AQI, 1=Good to 5=Very Poor) plus pollutant component concentrations (CO, NO2, O3, PM2.5, PM10, etc.). Example: air_quality({

No parameters required.

Try it
geocode

Resolve a place name (city, optionally with state/country) to geographic coordinates (latitude/longitude). Useful before calling air_quality, which needs lat/lon. Example: geocode({ query: "Paris", li

No parameters required.

Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/openweather/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/openweather/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"current_weather","arguments":{}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("current_weather", {});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("openweather mcp — wraps the openweathermap api (openweathermap");