61 lines
1.3 KiB
Markdown
61 lines
1.3 KiB
Markdown
# open-meteo-mcp
|
|
|
|
An MCP server for global weather data via the [Open-Meteo API](https://open-meteo.com/). No API key required.
|
|
|
|
## Tools
|
|
|
|
### get_current_weather
|
|
Returns current conditions for a given latitude/longitude:
|
|
- Temperature and "feels like"
|
|
- Humidity, wind speed/direction/gusts
|
|
- Precipitation, cloud cover, pressure
|
|
- WMO weather code decoded to plain English
|
|
|
|
### get_forecast
|
|
Returns a multi-day forecast (1-16 days) for a given latitude/longitude:
|
|
- Daily high/low temperatures
|
|
- Precipitation totals and probability
|
|
- Wind speed, gusts, and dominant direction
|
|
- Sunrise/sunset times
|
|
- Supports celsius or fahrenheit
|
|
|
|
## Setup
|
|
|
|
Requires Python 3.10+ and [Poetry](https://python-poetry.org/).
|
|
|
|
```sh
|
|
cd /data/Projects/open_meteo_mcp
|
|
poetry install
|
|
```
|
|
|
|
## Usage
|
|
|
|
### Stdio (for Claude Code)
|
|
|
|
```sh
|
|
.venv/bin/open-meteo-mcp-stdio
|
|
```
|
|
|
|
Add to `~/.claude/settings.json`:
|
|
|
|
```json
|
|
"open_meteo": {
|
|
"type": "stdio",
|
|
"command": "/data/Projects/open_meteo_mcp/.venv/bin/open-meteo-mcp-stdio",
|
|
"args": [],
|
|
"env": {}
|
|
}
|
|
```
|
|
|
|
### Streamable HTTP
|
|
|
|
```sh
|
|
.venv/bin/open-meteo-mcp
|
|
```
|
|
|
|
Starts on `http://127.0.0.1:8000/mcp` by default.
|
|
|
|
## Data Source
|
|
|
|
All weather data comes from [Open-Meteo](https://open-meteo.com/), which aggregates national weather services worldwide. Free for non-commercial use.
|