README Documentation
Weather App
A Python-based weather application that provides weather information using the National Weather Service (NWS) API. This project is built with modern Python tools and supports both synchronous and asynchronous HTTP requests.
Features
- 🌤️ Real-time weather data from National Weather Service API
- 🚀 Built with FastMCP for efficient server communication
- 📡 HTTP client support with httpx
- 🐍 Modern Python 3.13+ compatibility
- 🔧 Easy setup and configuration
Prerequisites
- Python 3.13 or higher
- uv (recommended) or pip for package management
Installation
-
Clone the repository:
git clone https://github.com/pro-gramming/weather-mcp-server.git cd weather
-
Install dependencies:
Using uv (recommended):
uv sync
Using pip:
pip install -e .
Project Structure
weather/
├── main.py # Main application entry point
├── weather.py # Core weather functionality and API integration
├── pyproject.toml # Project configuration and dependencies
├── README.md # This file
└── uv.lock # Locked dependency versions
Dependencies
- httpx (>=0.28.1): Modern HTTP client for Python with async support
- mcp[cli] (>=1.9.4): FastMCP server framework for efficient communication
Usage
Basic Usage
Run the main application:
python main.py
Weather API Integration
The project is set up to integrate with the National Weather Service API:
# Example usage (to be implemented)
from weather import get_weather_data
# Get weather for specific coordinates
weather_info = await get_weather_data(latitude=40.7128, longitude=-74.0060)
API Configuration
The application is configured to use the National Weather Service API:
- Base URL:
https://api.weather.gov
- User Agent:
weather-app/1.0
Development
Setting up the development environment
-
Install development dependencies:
uv sync --dev
-
Run the application:
python main.py
Project Configuration
The project uses pyproject.toml
for configuration, which includes:
- Python version requirement (>=3.13)
- Project metadata
- Dependencies specification
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- National Weather Service for providing the weather API
- httpx for the excellent HTTP client library
- FastMCP for the server framework
- Official MCP Server from mcp documenation.
Quick Actions
Key Features
Model Context Protocol
Secure Communication
Real-time Updates
Open Source