# Tomorrow.io Plus MCP

> Tomorrow.io Plus gives your AI agent access to hyper-local weather data, real-time conditions, forecasts, and historical records. It provides structured tools for reading current temperatures, predicting hourly changes, checking 24-hour trends, and visualizing active weather alerts across any coordinates.

## Overview
- **Category:** data-analytics
- **Price:** Free
- **Tags:** weather-api, forecast, real-time-weather, climate-data, hyper-local

## Description

You connect this server to your AI agent when you need reliable, deep weather intelligence straight from the source. This isn't just some basic API call; it gives your agent structured tools for making calls based on accurate atmospheric data. You gotta know what’s going down with the weather—right now, next week, or even last month.

When you need to check current conditions, your agent runs **`get_realtime_weather`** to pull the latest reading for any spot. This tells you immediate details like temperature, wind speed, and visibility exactly where you point it. For planning ahead, you can get predictions using **`get_forecast_weather`**, which pulls structured data covering both hourly changes and full day-by-day forecasts. You'll know what to expect for your operations.

Building graphs over time requires more than a simple forecast. If you need deep metrics—say, tracking temperature swings or rain intensity over a specific period—you use **`get_timelines`**. For complex areas that aren’t just points on a map, like following the path of a river or a factory footprint, you send geometry data to **`post_timelines`** to pull those detailed weather metrics. You can also see what happened in the last twenty-four hours by calling **`get_recent_history_weather`**. When visualizing this stuff on a map for your users, your agent retrieves specific map image pieces, or tiles, using **`get_map_tile`**, letting you overlay current or predicted weather layers right onto existing geospatial visuals.

For risk management, the server gives you serious control. You can check for official, pre-defined warnings by calling **`list_alerts`**; this flags high-priority weather dangers relevant to your monitored locations. If you need to know about specific kinds of bad weather—like hail or fog—you use **`list_events`** to pull those localized event types based on a category. You don't have to guess what kind of warnings are available; calling **`list_insights`** shows all the pre-defined categories you can filter data and alerts by. To keep your operations consistent, your agent uses **`list_locations`** to manage and retrieve a list of every geographical spot you’ve saved in the account.

It's a whole system that coordinates everything. You run these tools together—you get immediate conditions from **`get_realtime_weather`**, then use **`get_forecast_weather`** for planning, pull historical data with **`get_recent_history_weather`**, map it all out with **`get_map_tile`**, and finally check the risk level using **`list_alerts`**. You'll have a full picture of what’s going down. The whole thing gives your agent access to granular detail, making sure you never run blind on weather conditions again.

## Tools

### list_alerts
Lists all active, high-priority weather warnings based on your saved locations or insights categories.

### list_events
Retrieves specific types of localized weather events (e.g., fog, hail) for a location by category.

### get_forecast_weather
Pulls hourly or daily predicted weather conditions for a given location.

### get_timelines
Gets detailed metrics (like temperature or precipitation) for a specific location and defined time range.

### list_insights
Lists all available pre-defined or custom categories used to filter weather data and alerts.

### list_locations
Provides a list of all previously saved geographical locations within your account for consistent querying.

### get_map_tile
Retrieves map image pieces (tiles) to overlay specific weather layers onto visual maps.

### post_timelines
Retrieves weather data points that cover complex, non-point location shapes like GeoJSON geometries.

### get_realtime_weather
Gets the current, immediate atmospheric conditions for a location.

### get_recent_history_weather
Retrieves recorded weather data from the past 24 hours.

## Prompt Examples

**Prompt:** 
```
What is the current temperature and humidity in London?
```

**Response:** 
```
I'll check the real-time weather for London... The current temperature is 15°C with 72% humidity and clear skies.
```

**Prompt:** 
```
Show me the daily forecast for the next 3 days at coordinates [40.71, -74.00].
```

**Response:** 
```
Fetching the 3-day forecast... Tomorrow expects light rain, followed by two sunny days with highs around 22°C.
```

**Prompt:** 
```
List all active weather alerts for my saved locations.
```

**Response:** 
```
Checking for alerts... I found one active High Wind Warning for your 'East Coast Warehouse' location valid until 6 PM tonight.
```

## Capabilities

### Check current, minute-by-minute conditions
The agent retrieves the latest weather reading (temperature, wind, visibility) for any specified location or coordinate.

### Predict hourly and daily changes
You get a structured forecast covering specific time spans—hours by hour or day by day—for future planning.

### Build data graphs over time ranges
The agent pulls detailed metrics (like temperature, wind speed, and rain intensity) for specific periods, generating a usable timeline.

### Visualize weather on a map
You request map tiles that overlay current or predicted weather layers onto existing geospatial visualizations.

### Identify active weather risks and alerts
The system scans for official, pre-defined weather warnings or specific event types relevant to your monitored locations.

## Use Cases

### Rerouting a truck fleet during unexpected storms
A logistics manager needs to know if the planned route is safe. They ask their agent: 'Check routes 12 and 3 for alerts.' The agent runs `list_alerts` and `get_forecast_weather`. It finds an active High Wind Warning near Route 3, so the AI automatically reroutes the fleet and notifies the drivers.

### Assessing utility risk after a severe storm
An energy provider needs to know which areas are most vulnerable. They ask the agent to check historical data for wind damage patterns over the last month. The agent runs `get_recent_history_weather` and cross-references it with `list_events` (like hail) to prioritize repair crews.

### Building a weather dashboard visualization
A developer needs a map that updates in real-time. They use `get_map_tile` for the background layer, and then call `list_locations` first to get coordinates, which they feed into `get_realtime_weather` to plot current conditions.

### Analyzing long-term climate patterns
A researcher wants to compare temperature readings from two different sites over a specific period. They use the complex geometries tool, `post_timelines`, to feed data for both site boundaries into one query, giving them comparable historical metrics.

## Benefits

- Avoid guessing about conditions. Use `get_realtime_weather` to get immediate, precise data on temperature and wind speed right now.
- Plan ahead with certainty. `get_forecast_weather` gives you hourly or daily predictions, so you know if a delay is coming before you even leave the dock.
- `list_alerts` lets your agent check for high-priority warnings across all your monitored sites automatically—no need to log into 10 different dashboard pages.
- Deep dive into trends. Instead of just reading 'rainy,' use `get_timelines` to pull specific data points, like how fast the wind speed ramped up over six hours.
- Map accuracy matters. If you're building a visualization tool, `get_map_tile` feeds weather layers directly onto your map without extra manual processing.

## How It Works

The bottom line is: you tell your AI client what weather info you need, and it handles calling the right function to get clean, usable data.

1. First, subscribe to the Tomorrow.io Plus server and provide your API key.
2. Then, prompt your AI client (Claude, Cursor, etc.) with a natural language query specifying the location and data needed (e.g., 'What's the 3-day forecast for Seattle?').
3. The agent uses the correct tool—like `get_forecast_weather`—to pull the structured weather data back to your chat or script.

## Frequently Asked Questions

**How do I check historical weather using get_recent_history_weather?**
You simply ask your agent for it. You specify the location and the time window, and the tool pulls all recorded metrics from the last 24 hours into a structured format.

**What is the difference between get_forecast_weather and get_timelines?**
Forecasts give you predictions (what *will* happen). Timelines pull detailed, specific fields—like just temperature or just wind speed—for a defined time range. It's about predicting vs. charting.

**When should I use post_timelines instead of get_forecast_weather?**
Use `post_timelines` when your location isn't a single point—like an entire industrial complex or river boundary. It handles those complex, multi-point geometries.

**Can I check for multiple active warnings with list_alerts?**
Yes. You ask the agent to list all alerts across your saved locations. The tool runs against predefined insight categories and reports every warning found.

**How does the `post_timelines` tool handle complex geographic areas like GeoJSON?**
It processes weather data for entire geometries, not just single points. You pass a GeoJSON object to get timelines across an area instead of querying one coordinate at a time.

**What specific output do I get when using the `get_map_tile` tool?**
You receive map tiles specifically for weather layers. This allows you to integrate visual data directly into mapping applications without having to render the entire layer yourself.

**Before checking alerts, how do I use `list_insights` to find out what risk categories are available?**
This function lists all pre-defined or custom insight categories. It helps your AI client determine which specific risk types it needs to monitor for proactive alerting.

**If I need consistent monitoring across multiple sites, how does `list_locations` help my agent?**
The tool lists all pre-defined locations in your account. This means your AI client can consistently monitor the exact coordinates you set up without needing to input them every time.

**Can I get weather data for a specific latitude and longitude?**
Yes! You can use tools like `get_realtime_weather` or `get_timelines` by passing a latlong string (e.g., '40.7128, -74.0060') as the location parameter.

**How do I check for active severe weather alerts?**
Use the `list_alerts` tool. It will retrieve all active weather alerts based on your account's insights and monitored locations.

**Can I retrieve weather history for the past few hours?**
Yes, the `get_recent_history_weather` tool allows you to fetch weather data for the last 24 hours for any given location.