Overview
What it does
Access comprehensive weather data from OpenWeatherMap, the world’s leading weather data provider. Get current conditions, forecasts, air quality, alerts, and historical data for any location globally.Key Features:
- Current weather conditions for any location worldwide
- 5-day/3-hour and hourly forecasts
- Severe weather alerts and warnings
- Air quality index and pollutant data
- UV index and solar radiation
- Historical weather data (last 5 days)
- Location search and geocoding
Use Cases
Perfect for building AI-powered weather assistants and climate-aware applications.Examples:
- Travel planning and weather-based recommendations
- Agricultural and farming decisions
- Event planning and outdoor activity scheduling
- Logistics and supply chain optimization
- Construction project timing
- Air quality monitoring for health-conscious applications
- Solar energy potential assessment
- Emergency preparedness and alerts
Quick Start
1
Get Your API Key
Sign up for a free OpenWeatherMap account at openweathermap.org/users/sign_upFree Tier Includes:
- 1,000 API calls per day
- 60 calls per minute
- Current weather data
- 5-day/3-hour forecasts
- Air pollution data
- UV index
- Geocoding services
2
Add to NimbleBrain Studio
In NimbleBrain Studio:
- Navigate to MCP Servers in the sidebar
- Click Add Server
- Search for “OpenWeatherMap” in the server registry
- Click Configure
- Paste your API key in the OPENWEATHERMAP_API_KEY field
- Click Save & Enable
The server will automatically connect and become available in your AI assistant within seconds.
3
Test the Connection
In your Studio chat, try this prompt:You should see real-time weather data including temperature, conditions, humidity, wind speed, visibility, and pressure.
Available Tools
get_current_weather
get_current_weather
Get current weather conditions for any location worldwide, including temperature, humidity, pressure, wind, clouds, and visibility.Parameters:
*Note: Must provide either Example Response:
| Parameter | Type | Required | Description |
|---|---|---|---|
| location | string | No* | Location name (e.g., ‘London’, ‘New York,US’, ‘Panama City, Panama’) |
| lat | float | No* | Latitude coordinate (use with lon) |
| lon | float | No* | Longitude coordinate (use with lat) |
| units | string | No | Units of measurement: ‘metric’ (Celsius), ‘imperial’ (Fahrenheit), ‘standard’ (Kelvin). Default: ‘metric’ |
location OR coordinates (lat/lon), not both.Returns:
Current weather data including:- Temperature (current, feels like, min, max)
- Atmospheric pressure and humidity
- Wind speed, direction, and gusts
- Cloudiness and visibility
- Weather conditions (rain, snow, clear, etc.)
- Sunrise and sunset times
- Geographic coordinates
get_forecast
get_forecast
Get 5-day weather forecast with 3-hour intervals (up to 40 data points). Perfect for planning activities and trips over the next several days.Parameters:
*Note: Must provide either Example Response:
| Parameter | Type | Required | Description |
|---|---|---|---|
| city | string | No* | City name (e.g., ‘London’, ‘New York,US’) |
| lat | float | No* | Latitude coordinate (use with lon) |
| lon | float | No* | Longitude coordinate (use with lat) |
| units | string | No | Units of measurement (‘metric’, ‘imperial’, ‘standard’). Default: ‘metric’ |
| cnt | number | No | Number of timestamps to return (max: 40) |
city OR coordinates (lat/lon), not both.Returns:
Forecast data containing:- Array of 40 forecast items (5 days × 8 three-hour intervals)
- Temperature, humidity, pressure for each interval
- Weather conditions and probability of precipitation
- Wind speed and direction
- Cloud cover and visibility
- City information with timezone
get_hourly_forecast
get_hourly_forecast
Get detailed hourly weather forecast for the next 48 hours (requires coordinates). More precise than the 3-hour forecast for short-term planning.Parameters:
Returns:
Hourly forecast data for next 48 hours including:
| Parameter | Type | Required | Description |
|---|---|---|---|
| lat | float | Yes | Latitude coordinate |
| lon | float | Yes | Longitude coordinate |
| units | string | No | Units of measurement (‘metric’, ‘imperial’, ‘standard’). Default: ‘metric’ |
| cnt | number | No | Number of hours to return (max: 96) |
- Temperature and feels-like for each hour
- Weather conditions and precipitation probability
- Wind speed, direction, and gusts
- Cloud cover and visibility
- Atmospheric pressure and humidity
get_weather_alerts
get_weather_alerts
Get severe weather alerts and warnings for a location. Critical for safety and emergency preparedness planning.Parameters:
Returns:
Alert data containing:Example Response:
| Parameter | Type | Required | Description |
|---|---|---|---|
| lat | float | Yes | Latitude coordinate |
| lon | float | Yes | Longitude coordinate |
alerts- Array of active weather alertssender_name- Alert issuing authorityevent- Type of weather eventstart- Alert start time (Unix timestamp)end- Alert end time (Unix timestamp)description- Detailed alert descriptiontimezone- Location timezone
get_air_quality
get_air_quality
Get air quality index (AQI) and detailed pollutant concentrations. Essential for health-conscious applications and environmental monitoring.Parameters:
Returns:
Air quality data containing:Example Response:
| Parameter | Type | Required | Description |
|---|---|---|---|
| lat | float | Yes | Latitude coordinate |
| lon | float | Yes | Longitude coordinate |
aqi- Air Quality Index (1=Good, 2=Fair, 3=Moderate, 4=Poor, 5=Very Poor)co- Carbon monoxide (μg/m³)no- Nitrogen monoxide (μg/m³)no2- Nitrogen dioxide (μg/m³)o3- Ozone (μg/m³)so2- Sulphur dioxide (μg/m³)pm2_5- Fine particles matter (μg/m³)pm10- Coarse particles matter (μg/m³)nh3- Ammonia (μg/m³)
get_weather_by_zip
get_weather_by_zip
Get current weather using ZIP or postal code. Convenient for applications that collect user ZIP codes.Parameters:
Returns:
Same weather data as Example Response:
| Parameter | Type | Required | Description |
|---|---|---|---|
| zip_code | string | Yes | ZIP or postal code |
| country_code | string | No | 2-letter country code (e.g., ‘US’, ‘GB’, ‘CA’, ‘DE’) |
| units | string | No | Units of measurement (‘metric’, ‘imperial’, ‘standard’). Default: ‘metric’ |
get_current_weather, including temperature, conditions, wind, humidity, and pressure.Example Usage:search_city
search_city
Search for cities by name and get their coordinates. Essential for converting user-friendly location names to coordinates for other tools.Parameters:
Returns:
Array of matching cities with:Example Response:
| Parameter | Type | Required | Description |
|---|---|---|---|
| city_name | string | Yes | City name to search for |
| limit | number | No | Number of results to return (max: 5). Default: 5 |
name- City namelat- Latitudelon- Longitudecountry- Country codestate- State/region name (if available)local_names- Names in different languages
get_historical_weather
get_historical_weather
Get historical weather data for a specific date within the last 5 days. Useful for analysis, reporting, and comparisons.Parameters:
Returns:
Historical weather data for the specified date including:
| Parameter | Type | Required | Description |
|---|---|---|---|
| lat | float | Yes | Latitude coordinate |
| lon | float | Yes | Longitude coordinate |
| dt | number | Yes | Unix timestamp (UTC) for the historical date |
| units | string | No | Units of measurement (‘metric’, ‘imperial’, ‘standard’). Default: ‘metric’ |
- Temperature and atmospheric conditions
- Weather descriptions
- Wind speed and direction
- Cloud cover and humidity
- Sunrise and sunset times
get_uv_index
get_uv_index
Get UV index for a location. Critical for outdoor safety and health recommendations.Parameters:
Returns:
UV index data including:Example Response:
| Parameter | Type | Required | Description |
|---|---|---|---|
| lat | float | Yes | Latitude coordinate |
| lon | float | Yes | Longitude coordinate |
value- UV index valuedate- Unix timestampdate_iso- ISO format datelat- Latitudelon- Longitude
- 0-2: Low (minimal protection needed)
- 3-5: Moderate (protection recommended)
- 6-7: High (protection essential)
- 8-10: Very High (extra protection required)
- 11+: Extreme (avoid sun exposure)
get_weather_map
get_weather_map
Get weather map layer tile data for visualizations. Advanced feature for building custom weather map interfaces.Parameters:
Returns:
Map tile information including:Example Response:
| Parameter | Type | Required | Description |
|---|---|---|---|
| layer | string | Yes | Map layer type: ‘temp_new’, ‘precipitation_new’, ‘clouds_new’, ‘pressure_new’, ‘wind_new’ |
| z | number | Yes | Zoom level (0-15) |
| x | number | Yes | Tile X coordinate |
| y | number | Yes | Tile Y coordinate |
tile_url- URL to fetch the weather map tile imagelayer- Layer typezoom- Zoom levelx,y- Tile coordinates
Authentication
API Key Required: This server requires an OpenWeatherMap API key to function.
Getting Your API Key
- Create a free account at openweathermap.org/users/sign_up
- Verify your email address
- Navigate to your account dashboard
- Go to the “API keys” section
- Copy your default API key (or create a new one)
- Add it to your Studio server configuration
Rate Limits
| Plan | Calls/Day | Calls/Minute | Price |
|---|---|---|---|
| Free | 1,000 | 60 | $0 |
| Startup | 100,000 | 600 | $40/month |
| Developer | 1,000,000 | 600 | $125/month |
| Professional | 3,000,000 | 600 | $500/month |
| Enterprise | Custom | Custom | Contact sales |
Managing Your API Key in Studio
Your API key is securely stored in NimbleBrain Studio. To update it:- Go to Settings → MCP Servers
- Find “OpenWeatherMap” in your server list
- Click Edit Configuration
- Update your API key in the OPENWEATHERMAP_API_KEY field
- Click Save
Example Workflows
- Current Weather Check
- Travel Planning
- Air Quality Monitoring
- Event Planning
- UV & Sun Safety
- Multi-Location Analysis
- Severe Weather Alerts
- ZIP Code Lookup
Scenario: Quick weather check before commuting or meetingsPrompt:What happens:
- Gets current temperature and conditions
- Shows humidity and wind speed
- Indicates precipitation and visibility
- Reports cloud cover and pressure
All examples work in NimbleBrain Studio’s natural language interface - no code or configuration required!
Troubleshooting
Rate Limit Exceeded
Rate Limit Exceeded
Error Message:Cause: You’ve exceeded your daily (1,000 calls) or per-minute (60 calls) API limit on the free tierSolutions:
- Wait until your limit resets (daily limits reset at midnight UTC, per-minute limits reset after 60 seconds)
- Check your usage in the OpenWeatherMap dashboard
- Upgrade to a paid plan for higher limits (100K-3M calls/day)
- Space out your requests over time in Studio conversations
- Reduce the number of locations you’re tracking simultaneously
- Go to Studio Settings → MCP Servers
- Click on OpenWeatherMap
- View API usage metrics
Invalid API Key
Invalid API Key
Error Message:Cause: API key is missing, incorrect, expired, or revokedSolutions:
- Verify your API key in Studio server settings (no extra spaces)
- Check your OpenWeatherMap account is active and email verified
- Regenerate your API key from the OpenWeatherMap dashboard
- Ensure your API key hasn’t been revoked (check account notifications)
- Settings → MCP Servers → OpenWeatherMap
- Click Edit Configuration
- Paste new API key in OPENWEATHERMAP_API_KEY field
- Click Save
- Test with: “What’s the weather in London?”
- Extra spaces before/after the API key when pasting
- Copying only part of the API key from the dashboard
- Using an API key from a different weather service
Studio validates your API key automatically when you save. You’ll see a success message if it’s correct.
Location Not Found
Location Not Found
Error Message:Cause: Invalid or ambiguous location name, or location doesn’t exist in OpenWeatherMap’s databaseSolutions:
- Use more specific location names (e.g., “London, UK” instead of just “London”)
- Check spelling of city name
- Use major cities or well-known locations (small towns may not be in database)
- Add country code to disambiguate (e.g., “Paris, FR” vs “Paris, TX, US”)
- For small towns, try using the nearest major city
Coordinates Out of Range
Coordinates Out of Range
Error Message:Cause: Latitude or longitude values are outside valid rangesSolutions:
- Verify latitude is between -90 and 90
- Verify longitude is between -180 and 180
- Check for swapped lat/lon values (common mistake)
- Ensure coordinates are decimal degrees, not degrees-minutes-seconds
- Remove any degree symbols or directional letters (N, S, E, W)
- New York: lat=40.7128, lon=-74.0060
- Sydney: lat=-33.8688, lon=151.2093
- London: lat=51.5074, lon=-0.1278
Server Not Responding
Server Not Responding
Error Message:orCause: Studio cannot connect to the OpenWeatherMap MCP serverSolutions:
- Check your internet connection
- Verify the server is enabled in Studio (Settings → MCP Servers)
- Try disabling and re-enabling the server in Studio
- Check Studio status page for any service interruptions
- Refresh your Studio browser tab
- Go to Settings → MCP Servers
- Find OpenWeatherMap in the list
- Toggle it Off, wait 5 seconds
- Toggle it On again
- Try your query again
Studio manages all server infrastructure automatically - there’s no local setup or Docker containers to troubleshoot.
Data Not Available
Data Not Available
Error Message:or certain fields return nullCause: Some features require paid plans or aren’t available for all locationsPossible Reasons:
- Severe weather alerts only available where local weather services provide them
- Historical data beyond 5 days requires a paid plan
- Minute-by-minute precipitation data (paid feature)
- Some small towns have limited data coverage
- UV index may not be available for all coordinates
- Try nearby major cities for better data coverage
- Check OpenWeatherMap’s data coverage map for your region
- Verify the feature is included in your plan tier (check documentation)
- Upgrade to a paid plan for extended features (historical data, minute forecasts)
- Use alternative tools when specific data is unavailable (e.g., forecast instead of alerts)
Slow Response Times
Slow Response Times
Symptoms:
- Requests taking longer than 3-5 seconds
- Timeouts when fetching weather data
- Intermittent slow responses
- Check your internet connection speed and stability
- Verify OpenWeatherMap API status at status.openweathermap.org
- Try again in a few moments (may be temporary API congestion)
- Use smaller forecast ranges (
cntparameter) for faster responses - Implement timeout handling in your application (recommend 10s timeout)
- Consider caching responses locally for frequently requested locations
- Current weather: 0.5-1 second
- 5-day forecast: 1-2 seconds
- Air quality: 1-2 seconds
- Search city: 1-2 seconds
- Weather alerts: 2-3 seconds (uses One Call API)
- Multiple queries: 2-5 seconds
Historical Data Limitations
Historical Data Limitations
Error Message:Cause: Attempting to access historical data beyond the free tier’s 5-day limitFree Tier Limitations:
- Only last 5 days of historical data
- Hourly data availability varies by location
- No historical forecasts (only actual conditions)
- For dates within last 5 days: Use
get_historical_weatherwith proper Unix timestamp - For older data: Upgrade to a paid OpenWeatherMap plan
- For climate averages: Consider using monthly climate normals (separate API)
- Store your own historical data by polling current conditions regularly
- Use online converters or programming languages
- Example: January 10, 2025 12:00 UTC = 1704891600
- Ensure timestamp is in UTC, not local time
Links & Resources
GitHub Repository
View source code, report issues, and contribute to the project
OpenWeatherMap API Docs
Official OpenWeatherMap API reference, data coverage, and features
Docker Image
Pull the latest container image from GitHub Container Registry
Report Issues
Found a bug or have a feature request? Submit an issue on GitHub
Related MCP Servers
National Parks
Plan outdoor activities with park information and visitor data
Google Maps
Get directions and travel time estimates affected by weather
Cal.com
Schedule events and meetings based on weather conditions
Need help? Join the NimbleBrain Discord or email [email protected]