--- name: Weather Automation description: Automate weather-based workflows, forecasts, alerts, and location-aware notifications version: 1.0.0 author: Claude Office Skills category: utilities tags: - weather - forecast - alerts - location - automation department: operations models: - claude-3-opus - claude-3-sonnet - gpt-4 mcp: server: weather-mcp tools: - weather_current - weather_forecast - weather_alerts - weather_historical capabilities: - Current conditions - Forecast retrieval - Weather alerts - Historical data input: - Locations - Date ranges - Alert thresholds - Automation triggers output: - Weather data - Forecasts - Alert notifications - Reports languages: - en related_skills: - calendar-automation - home-assistant - slack-workflows --- # Weather Automation Automate weather-based workflows and notifications. ## Core Capabilities ### Current Weather ```yaml current_weather: location: "San Francisco, CA" # or coordinates lat: 37.7749 lon: -122.4194 response: temperature: 65°F feels_like: 63°F humidity: 72% wind_speed: 12 mph conditions: "Partly Cloudy" uv_index: 5 ``` ### Forecast ```yaml forecast: location: "New York, NY" days: 7 daily: - date: "2024-01-20" high: 45°F low: 32°F conditions: "Snow" precipitation_chance: 80% hourly: interval: 3 # hours periods: 24 ``` ### Weather Alerts ```yaml alert_rules: - name: "Rain Alert" condition: precipitation_chance: "> 70%" within_hours: 6 action: notify: slack message: "☔ Rain expected in next 6 hours" - name: "Freeze Warning" condition: temperature: "< 32°F" action: - notify: sms - trigger: home_assistant action: protect_pipes ``` ## Workflow Examples ### Morning Briefing ```yaml morning_weather: trigger: daily at 6:30 AM actions: - get_forecast: location: home days: 1 - send_notification: channel: slack_dm message: | 🌤️ Good morning! Today's weather: High: {{high}}°F | Low: {{low}}°F {{conditions}} {{#if rain}}☔ Bring an umbrella!{{/if}} ``` ### Event Planning ```yaml event_weather: trigger: calendar_event_tomorrow condition: event_type: outdoor actions: - get_forecast: location: "{{event.location}}" date: "{{event.date}}" - if: precipitation_chance: "> 50%" then: - notify: organizer message: "Consider backup venue - rain likely" ``` ## Best Practices 1. **Caching**: Cache frequent requests 2. **Units**: Support both metric/imperial 3. **Accuracy**: Use reliable data sources 4. **Alerts**: Set sensible thresholds 5. **Location**: Support multiple formats