Weather MCP Server

Weather MCP Server

Provides weather information to LLM agents via two implementations: USA using National Weather Service API and Israel using Playwright browser automation.

Category
Visit Server

README

# Weather MCP Server 🌤️

## About

This project implements an MCP Server that provides weather information to an LLM Agent.

The project demonstrates two different approaches:

- **USA Weather MCP** - retrieves weather information using the National Weather Service API.

- **Israel Weather MCP** - retrieves weather information using Playwright browser automation from the weather2day website.

The main goal is to demonstrate how an LLM Agent can use MCP Tools to interact with external sources and enrich its context.

---

## Technologies

- Python

- MCP SDK (FastMCP)

- OpenAI API

- Playwright

- httpx

---

## Project Structure


weather-mcp/

│

├── host.py

├── client.py

├── weather\\\_USA.py

├── weather\\\_Israel.py

└── README.md

---

# 🇺🇸 USA Weather MCP

The USA MCP uses the National Weather Service API.

Available tools:

### get_forecast_in_USA

Returns weather forecast by location coordinates.

Input:

- Latitude

- Longitude

### get_alerts_in_USA

Returns active weather alerts for a USA state.

Input:

- State code (example: CA, NY)

---

# 🇮🇱 Israel Weather MCP

The Israel MCP uses Playwright to automate a browser and extract weather information from:

https://www.weather2day.co.il/forecast

The Agent can:

1. Open the weather website.

2. Enter a city name.

3. Select the requested city.

4. Extract weather information from the page.

5. Use the extracted information to answer the user.

Available tools:

### open_weather_forecast_israel

Opens the weather forecast website.

### enter_weather_forecast_city_israel

Receives a city name and enters it into the search field.

### select_weather_forecast_city_israel

Selects the first city from the autocomplete list.

### extract_weather_forecast_content_israel

Extracts weather information from the selected city page and provides it as context for the LLM.

### close_weather_browser

Closes the browser session.

---

## Installation

Install dependencies:


uv sync

Install Playwright browser:


uv run playwright install chromium

---

## Running

Run the project:


uv run host.py

---

## Example Questions

Israel:


מה מזג האוויר בבני ברק?

USA:


What is the weather in Miami?

---

## Learning Goals

This project demonstrates:

- Building a custom MCP Server

- Creating MCP Tools with FastMCP

- Connecting an LLM Agent to external tools

- Browser automation with Playwright

- Extracting information from websites

- Providing external context to an LLM (RAG)



Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured