README Documentation
🌦️ MCP Weather Alert Agent
A lightweight AI agent powered by MCP (Modular Connector Protocol) that fetches real-time weather alerts for any U.S. state using the National Weather Service API.
✨ Features
- 🤖 AI Chat Interface - Interactive conversation with memory
- 🌪️ Real-time Weather Alerts - Live data from National Weather Service
- ⚡ Fast Inference - Powered by Groq LLM via LangChain
- 🔧 MCP Integration - Built with
mcp
,mcp-use
, andFastMCP
- 🛠️ Tool-based Architecture - Structured function calling
🎯 Quick Example
💬 User: "Provide me weather alerts for California"
🤖 Agent: Calling get_alerts("CA")...
🌦️ Result: "FLOOD WARNING for Central Valley until 6 PM PST..."
🚀 Getting Started
Prerequisites
- Python 3.8+
- Groq API key (Get one here)
Installation
-
Clone the repository
git clone https://github.com/MokshadaRaibagkar/mcp-weather-alert-agent.git cd mcp-weather-alert-agent
-
Create virtual environment
python -m venv .venv source .venv/bin/activate # Windows: .venv\Scripts\activate
-
Install dependencies
pip install -r requirements.txt
-
Set up environment variables
cp .env # Edit .env and add your GROQ_API_KEY
🛠️ Usage
Option 1: Interactive Chat Agent
uv run server/client.py
Option 2: MCP Dev Server (for testing)
uv run mcp dev server/weather.py
Opens MCP Inspector for tool testing and debugging.
Option 3: MCP Inspector (Visual Interface)
uv run mcp dev server/weather.py
🔧 API Reference
get_alerts(state: str) -> str
Fetches active weather alerts for a U.S. state.
Parameters:
state
(str): Two-letter state code (e.g., "CA", "TX", "NY")
Returns:
- Formatted string with current weather alerts or "No active alerts"
Example:
result = get_alerts("FL")
# Returns: "HURRICANE WARNING for Miami-Dade County..."
🧪 Example Interactions
Weather Alert Agent initialized! Ask me about weather alerts.
💬 You: What are the current weather alerts for Texas?
🛠️ Calling get_alerts with state: TX
🌦️ Current alerts for Texas:
- TORNADO WATCH for East Texas until 10 PM CDT
- FLASH FLOOD WARNING for Austin area until midnight
💬 You: Any alerts in California?
🛠️ Calling get_alerts with state: CA
✅ No active weather alerts for California at this time.
🌐 Tech Stack
Component | Technology |
---|---|
MCP Framework | MCP Protocol |
LLM | Groq |
Agent Framework | LangChain |
Weather API | National Weather Service |
Development | FastMCP |
🤝 Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
👩💻 Author
Mokshada Raibagkar
⭐ Star this repo if it helped you!
Made with ❤️ and ☕
Quick Actions
Key Features
Model Context Protocol
Secure Communication
Real-time Updates
Open Source