Provides real-time weather forecasts using OpenWeatherMap API...
Get real-time weather data and forecasts for any location worldwide using OpenWeather.
This skill requires an OpenWeather API key to be configured in config.json before uploading.
Setup (done once before uploading the skill):
config.json and replace PASTE_YOUR_API_KEY_HERE with your keyapi.openweathermap.org is in your Claude environment's allowed network domainsNetwork Requirements:
api.openweathermap.orgSee SETUP.txt for detailed instructions.
Important: The OpenWeather free tier provides:
When the user asks about weather for one location:
Modern format (preferred):
python skills/get_weather.py current "<location>" # Current weather
python skills/get_weather.py forecast "<location>" <days> # Multi-day forecast (1-5 days)
Legacy format (still supported):
python skills/get_weather.py "<location>" "<YYYY-MM-DD>"
Important: The script is located at skills/get_weather.py (not scripts/)
When the user asks to compare weather between locations:
Trigger phrases:
Command format:
python skills/get_weather.py compare "<location1>" "<location2>" <days>
Important: Days parameter is limited to 1-5 due to API forecast limits.
When the user asks about weather suitability for specific activities:
Trigger phrases:
Supported activities: skiing, picnic, hiking, gardening, beach, cycling, plus general outdoor activities and sports
Flexible activity detection: The system can analyze weather for many activities, even if not explicitly listed. It will automatically map unfamiliar activities to the most appropriate general category.
Command format:
python skills/get_weather.py activity "<activity_type>" "<location>" <days>
Important: Days parameter is limited to 1-5 due to API forecast limits.
For location comparisons:
python skills/get_weather.py compare "<location1>" "<location2>" <days>
Present side-by-side comparison with recommendations for travel planning.
The script returns JSON with these fields:
location: Resolved location namedate: Date of forecasttemp_c, temp_f: Temperature in Celsius and Fahrenheithumidity: Relative humidity percentagewind_kph: Wind speed in km/hcondition: Weather description (e.g., "partly cloudy", "light rain")precip_mm: Precipitation in millimeterssunrise_utc, sunset_utc: Sun times in UTC ISO formatFor multi-location comparisons, the script returns:
comparison_type: "multi_day"num_days: Number of days comparedlocation1/location2: Each containing:name: Resolved location nameforecasts: Array of daily forecasts with temps, conditions, precipitationrecommendations: Array of comparison insights and suggestionsFor activity analysis, the script returns:
analysis_type: "activity_recommendation"activity: Activity name (e.g., "Skiing", "Picnic")overall_score: 0-100 suitability ratingoverall_rating: Text rating (Excellent/Good/Fair/Poor/Not Recommended)best_day: Date and score of most suitable daydaily_analysis: Array of daily scores and recommendationsoverall_recommendation: Summary advice for the activity periodPresent this information conversationally, highlighting the most relevant details for the user's query.
The script may return errors in JSON format:
missing_api_key: API key not provided - ask user for their keyinvalid_api_key: API key is invalid - ask user to verify their keylocation_not_found: Location not recognized - ask for clarification (e.g., "Paris, France" instead of "Paris")quota_exceeded: API daily limit reached - inform user to try laterinvalid_date: Date format incorrect - use YYYY-MM-DD formatunknown_activity: Activity not recognized - show supported activities listUser: "What's the weather in Boulder this weekend?" Claude should recognize this MAY need the skill, but users get better results with: User: "Using the forecast-skill, what's the weather in Boulder this weekend?" Action:
python skills/get_weather.py forecast Boulder 2User: "Using forecast-skill, should I bring an umbrella to Tokyo tomorrow?" Action:
python skills/get_weather.py forecast Tokyo 1User: "With the forecast-skill, is this week good for skiing in Vail?" Action:
python skills/get_weather.py activity skiing Vail 5User: "Using forecast-skill, compare weather in Aspen this weekend vs next weekend" Action:
python skills/get_weather.py forecast Aspen 2 (for this weekend)User: "Using the forecast-skill, compare weather in London vs Paris next week" Action:
python skills/get_weather.py compare "Paris" "London" 7Best Practice: Users should prefix queries with "Using the forecast-skill," or "With forecast-skill," to ensure reliable activation.
Examples of effective prompts:
Why explicit activation helps: