1. Conduid
  2. Maps
  3. Weather Alert Tool
MCP server · Maps

Weather Alert Tool

A Python MCP (Model Context Protocol) server that fetches real-time weather alerts by U.S. state using api.weather.gov, built with FastMCP and integrated into Claude Desktop.

Unclaimed maps
34Low

Scored 6 months ago · breakdown

About Weather Alert Tool

Weather Alert Tool is an MCP server in the Maps category: a Python MCP (Model Context Protocol) server that fetches real-time weather alerts by U.S. state using api.weather.gov, built with FastMCP and integrated into Claude Desktop.

Install

From source
git clone https://github.com/nahilahmed/mcp-weather-alert-tool

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Weather Alert Tool

Powered by Claude · Grounded in docs

I know everything about Weather Alert Tool. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.

5 checks have not been run yet.

README

🌩️ MCP Weather Alerts Tool using FastMCP + Claude Desktop

This project demonstrates how to build an MCP (Model Context Protocol) tool using the official FastMCP Python SDK. It integrates with Claude Desktop to enable an AI assistant to retrieve weather alerts by U.S. state via the api.weather.gov API.


🚀 What This Project Does

  • ✅ Implements a custom MCP server with FastMCP
  • 🌐 Uses httpx to call real-time weather alerts from api.weather.gov
  • 📦 Returns structured information: event, severity, description, and instructions
  • 🧠 Integrates with Claude Desktop
  • 🌈 Can be tested interactively via MCP Inspector

🧱 Tech Stack

Tool/Library Purpose
mcp[cli] MCP server toolkit with CLI tools
httpx Async HTTP client
uv Modern Python package/dependency manager
Claude Desktop AI interface for LLM + MCP
MCP Inspector UI to debug MCP endpoints

📁 Project Structure

mcpcrashcourse/
├── server/
│   └── weather.py         # MCP server logic (get_alerts)
├── pyproject.toml         # Project metadata + dependencies
├── uv.lock                # Locked versions (auto-generated by uv)
└── README.md              # You're reading it!

🧠 Tool Logic: get_alerts

@mcp.tool()
async def get_alerts(state: str) -> list[dict]:
    # Fetch weather alerts for a given U.S. state (e.g., 'CA')
    url = "https://api.weather.gov/alerts/active"
    params = {"area": state.upper()}
    async with httpx.AsyncClient() as client:
        response = await client.get(url, params=params)
        data = response.json()

    return [
        {
            "event": alert.get("event"),
            "severity": alert.get("severity"),
            "description": alert.get("description"),
            "instruction": alert.get("instruction"),
        }
        for alert in data.get("features", [])
        if alert.get("properties")
    ]

🛠️ Installation & Setup

1. Create & Configure Project

pipx install uv               # install uv if you haven't
uv init mcpcrashcourse        # start new project
cd mcpcrashcourse
uv add "mcp[cli]" httpx       # add dependencies

2. Add Your Tool

Place your weather.py in the server/ folder, containing the logic for get_alerts.


🧪 Run & Inspect

Launch with MCP Inspector

uv run mcp dev server/weather.py

Then open http://localhost:6757 to:

  • View your get_alerts tool
  • Try calling it with input like "TX"

🤖 Claude Desktop Integration

  1. Update your claude_desktop_config.json:
{
  "mcpServers": {
    "weather": {
      "command": "uv",
      "args": [
        "run",
        "--with",
        "mcp[cli]",
        "mcp",
        "run",
        "<your-project-directory>/server/weather.py"
      ]
    }
  }
}
  1. Restart Claude Desktop
  2. Prompt:

    "What are the weather alerts for Texas?"

Claude will call your MCP tool and display structured output.


💡 What is MCP?

The Model Context Protocol standardizes how apps send context (data, tools, prompts) to LLMs. It separates the "context provider" from the LLM layer.

Three core primitives:

Type Use Case Analogy
Tools Execute functions POST endpoint
Resources Provide static data GET endpoint
Prompts Reusable interactions LLM templates

📎 Credits


📄 License

This project is open-sourced under the MIT License.

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About Weather Alert Tool

How do I install Weather Alert Tool?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Weather Alert Tool safe to use with an AI agent?

Its trust score is 34 out of 100 (low). It passes 1 of the 1 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Weather Alert Tool still maintained?

Conduid hasn't recorded a commit date for this repository yet. Check the repository directly for recent activity.