Weather Skill
This skill demonstrates how to build an API integration skill using the SKILL.md format.
Overview
The weather skill fetches weather data from a public API and formats it for display. It shows patterns for:
- API integration with curl
- JSON parsing with jq
- Error handling
- Optional parameters with defaults
When to Use
Use this skill when you need to:
- Check current weather for a location
- Get weather forecasts
- Integrate weather data into workflows
Tools
current
Get current weather for a city.
This tool fetches real-time weather data including temperature, conditions, and humidity.
Parameters:
city(required, string): City name (e.g., "London", "New York", "Tokyo")units(optional, string): Temperature units - "metric" for Celsius, "imperial" for Fahrenheit (default: metric)
Example:
# Basic usage
skill run weather:current city="London"
# With units
skill run weather:current city="Paris" units="metric"
skill run weather:current city="New York" units="imperial"
forecast
Get weather forecast for upcoming days.
Returns a multi-day weather forecast for the specified location.
Parameters:
city(required, string): City namedays(optional, integer): Number of days to forecast (1-5, default: 3)
Example:
# 3-day forecast (default)
skill run weather:forecast city="Berlin"
# 5-day forecast
skill run weather:forecast city="Tokyo" days=5
Implementation Notes
This skill uses:
- curl: For HTTP requests to weather API
- jq: For JSON parsing and formatting
- Environment variable:
WEATHER_API_KEYfor authentication
The API used is OpenWeatherMap (https://openweathermap.org/api). You'll need to configure your API key before using this skill.
Configuration
Set your OpenWeatherMap API key:
export WEATHER_API_KEY="your-api-key-here"
Or use skill config:
skill config weather
