get_historical
Pack: weather · Endpoint: https://gateway.pipeworx.io/weather/mcp
Daily weather for any location back to 1940, from the ERA5 climate reanalysis.
Tool description as the model sees it
AUTHORITATIVE historical daily weather for any location, back to 1940. Source: ERA5 reanalysis (ECMWF’s global atmospheric reconstruction — the standard reference dataset for climate research). Pass a city or lat/lon + date range. Returns daily high/low temperature, precipitation, conditions. Defaults to the last 30 days if no dates given. Use for “what was the weather in X on date Y”, climate baselines, comparing this year to historical averages, retrospective weather context for any event.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
start_date | string | no | Start date YYYY-MM-DD (>= 1940-01-01). Optional — defaults to 30 days ago. |
end_date | string | no | End date YYYY-MM-DD (inclusive). Optional — defaults to today. |
Example call
Arguments
{
"city": "Paris"
}
curl
curl -X POST https://gateway.pipeworx.io/weather/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_historical","arguments":{"city":"Paris"}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('get_historical', {
"city": "Paris"
});
More examples
{
"latitude": 51.5074,
"longitude": -0.1278,
"start_date": "2023-01-01",
"end_date": "2023-12-31"
}
Response shape
Always returns: location, country, latitude, longitude, start_date, end_date, days
| Field | Type | Description |
|---|---|---|
location | string | null | Resolved city name from geocoding |
country | string | null | Country name from geocoding |
latitude | number | Latitude coordinate |
longitude | number | Longitude coordinate |
start_date | string | Start date (YYYY-MM-DD) used for query |
end_date | string | End date (YYYY-MM-DD) used for query |
days | array | Array of historical daily entries |
Full JSON Schema
{
"type": "object",
"properties": {
"location": {
"type": [
"string",
"null"
],
"description": "Resolved city name from geocoding"
},
"country": {
"type": [
"string",
"null"
],
"description": "Country name from geocoding"
},
"latitude": {
"type": "number",
"description": "Latitude coordinate"
},
"longitude": {
"type": "number",
"description": "Longitude coordinate"
},
"start_date": {
"type": "string",
"description": "Start date (YYYY-MM-DD) used for query"
},
"end_date": {
"type": "string",
"description": "End date (YYYY-MM-DD) used for query"
},
"days": {
"type": "array",
"description": "Array of historical daily entries",
"items": {
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "ISO date string (YYYY-MM-DD)"
},
"high_f": {
"type": [
"number",
"null"
],
"description": "High temperature in Fahrenheit (null if unavailable)"
},
"low_f": {
"type": [
"number",
"null"
],
"description": "Low temperature in Fahrenheit (null if unavailable)"
},
"precipitation_mm": {
"type": [
"number",
"null"
],
"description": "Precipitation in millimeters (null if unavailable)"
},
"conditions": {
"type": [
"string",
"null"
],
"description": "Weather condition description or null if unavailable"
}
},
"required": [
"date",
"high_f",
"low_f",
"precipitation_mm",
"conditions"
]
}
}
},
"required": [
"location",
"country",
"latitude",
"longitude",
"start_date",
"end_date",
"days"
]
}
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"weather": {
"url": "https://gateway.pipeworx.io/weather/mcp"
}
}
}
See Getting Started for client-specific install steps.