Skip to main content
Glama
1broseidon

MCP Weather Server

by 1broseidon
README.md
# MCP Weather Server

A Model Context Protocol (MCP) server that provides weather information tools and resources.

## Features

- **Current Weather**: Get real-time weather conditions for any location
- **Weather Forecast**: 5-day weather forecast with detailed information  
- **Location Support**: Major world cities, coordinates, and ZIP codes
- **Units**: Support for both Celsius and Fahrenheit
- **Resources**: Weather location data and API information
- **Prompts**: Weather summary generation for activity planning

## Tools

### `get_current_weather`
Get current weather information for a location.

**Parameters:**
- `location` (required): City name, coordinates, or ZIP code
- `units` (optional): "celsius" or "fahrenheit" (default: celsius)

### `get_weather_forecast`
Get multi-day weather forecast for a location.

**Parameters:**
- `location` (required): City name, coordinates, or ZIP code  
- `days` (optional): Number of days (1-5, default: 3)

## Resources

- `weather://locations`: List of supported locations and formats
- `weather://api-info`: Weather API and data source information

## Prompts

- `weather_summary`: Generate weather summary for activity planning

## Usage

### With Claude Desktop

Add to your Claude Desktop configuration:

```json
{
  "mcpServers": {
    "weather": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-sse"],
      "env": {
        "SSE_URL": "https://your-server.fly.dev/mcp"
      }
    }
  }
}
```

### Local Development

```bash
npm install
npm start
```

### Docker Deployment

```bash
docker build -t mcp-weather-server .
docker run -p 8080:8080 mcp-weather-server
```

## Health Check

The server includes a health check endpoint at `/health` that returns server status and version information.

## License

MIT