README.md•1.86 kB
# Weather MCP Server
A Model Context Protocol (MCP) server that provides weather forecast and alert information for US locations. Referenced these [docs](https://modelcontextprotocol.io/docs/develop/build-server#python).
## Features
- **Weather Forecasts**: Get detailed weather forecasts for any location using latitude/longitude coordinates
- **Weather Alerts**: Retrieve active weather alerts for US states
- Real-time data from the National Weather Service
## Installation
### Prerequisites
- Python 3.10 or higher
### Setup
1. Clone this repository:
```bash
git clone https://github.com/penguyen72/python-mcp
cd python-mcp
```
## Usage
### Configuration
Add the server to your MCP client configuration. For Claude Desktop, add this to your config file:
**MacOS**:
```
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
```
**Windows**:
```
code $env:AppData\Claude\claude_desktop_config.json
```
**Config:**
```json
{
"mcpServers": {
"weather": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/PARENT/FOLDER/weather",
"run",
"weather.py"
]
}
}
}
```
## Available Tools
### `weather:get_forecast`
Get weather forecast for a specific location.
**Parameters:**
- `latitude` (number, required): Latitude of the location
- `longitude` (number, required): Longitude of the location
**Example:**
```json
{
"latitude": 38.5816,
"longitude": -121.4944
}
```
### `weather:get_alerts`
Get active weather alerts for a US state.
**Parameters:**
- `state` (string, required): Two-letter US state code (e.g., "CA", "NY", "TX")
**Example:**
```json
{
"state": "CA"
}
```
## API Data Source
This server uses the [National Weather Service API](https://www.weather.gov/documentation/services-web-api) to retrieve weather data for US locations.