Skip to main content
Glama

Weather MCP Server & Databricks Agent

A Model Context Protocol (MCP) server built with FastMCP exposing weather intelligence tools backed by the Open-Meteo API, integrated with Databricks Agent Bricks.


๐Ÿ“ Repository Structure

weather-mcp/
โ”œโ”€โ”€ src/
โ”‚   โ””โ”€โ”€ weather_mcp/
โ”‚       โ”œโ”€โ”€ __init__.py          # Package exports
โ”‚       โ”œโ”€โ”€ weather_broker.py    # Adapter module & WeatherClient / WeatherRuleEngine
โ”‚       โ””โ”€โ”€ mcp_server.py        # FastMCP server & tool definitions
โ”œโ”€โ”€ tests/
โ”‚   โ””โ”€โ”€ test_weather.py          # Unit & integration test suite
โ”œโ”€โ”€ AGENT_PROMPT.md              # Databricks Agent system prompt & registration guide
โ”œโ”€โ”€ CONTEXT.md                   # Domain model glossary
โ”œโ”€โ”€ README.md                    # Project documentation
โ”œโ”€โ”€ app.yaml                     # Databricks Apps manifest
โ”œโ”€โ”€ pyproject.toml               # Python package configuration
โ””โ”€โ”€ requirements.txt             # Production dependencies

Related MCP server: MCP Weather Server

๐Ÿ›๏ธ Architecture Overview

 โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
 โ”‚            Databricks Agent Bricks Agent               โ”‚
 โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                            โ”‚ Model Context Protocol (MCP / HTTP)
                            โ–ผ
 โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
 โ”‚      FastMCP Server (src/weather_mcp/mcp_server.py)    โ”‚
 โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                            โ”‚ Thin wrapper calls
                            โ–ผ
 โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
 โ”‚     Broker Adapter (src/weather_mcp/weather_broker.py) โ”‚
 โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
            โ”‚ Geocoding API                   โ”‚ Forecast API
            โ–ผ                                 โ–ผ
 โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”         โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
 โ”‚ Open-Meteo Geocoding โ”‚         โ”‚  Open-Meteo Forecast  โ”‚
 โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜         โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐Ÿ› ๏ธ MCP Tools Reference

Tool Signature

Description

Key Arguments

get_current_weather

Returns real-time temperature, humidity, wind speed, and conditions.

location: str

get_forecast

Multi-day daily forecast (high/low temps, precipitation %, conditions).

location: str, days: int = 3

predict_umbrella_needed

Evaluates if an umbrella is needed based on precip probability (>=40%) and volume.

location: str, date: str = "today"

get_travel_recommendation

Generates clothing packing advice and outdoor activity ratings.

location: str, days: int = 3

compare_city_weather

Compares current weather conditions across multiple cities.

cities: str (comma-separated)


๐Ÿš€ Setup & Local Execution

1. Install Dependencies

uv sync

2. Run Test Suite

PYTHONPATH=src uv run python tests/test_weather.py

3. Start FastMCP Server Locally

uv run fastmcp run src/weather_mcp/mcp_server.py --transport http --port 8000

The server will listen at http://127.0.0.1:8000/mcp.


โ˜๏ธ Databricks Apps Deployment & Agent Bricks Registration

  1. Deploy App: Deploy this repository to Databricks Apps using app.yaml:

    command:
      - "fastmcp"
      - "run"
      - "src/weather_mcp/mcp_server.py"
      - "--transport"
      - "http"
      - "--host"
      - "0.0.0.0"
      - "--port"
      - "8000"
  2. Register External MCP Tool:

    • In Databricks Workspace -> AI Playground / Agent Bricks.

    • Click Add Tool -> External MCP Server.

    • Enter App URL: https://<databricks-app-url>/mcp.

  3. Configure System Prompt:


๐Ÿงช Demonstrated Agent Queries & Responses

Query 1: Rain & Umbrella Prediction

User: "Will it rain in Chicago tomorrow?"

  • Tool Call: predict_umbrella_needed(location="Chicago", date="tomorrow")

  • Agent Response:

    "No, it is very unlikely to rain in Chicago tomorrow (2026-08-09). The precipitation probability is only 2% with clear skies. High: 79.0ยฐF (26.1ยฐC), Low: 64.5ยฐF (18.1ยฐC). You won't need an umbrella!"

Will it rain in Chicago tomorrow?

Query 2: Travel Packing Advice

User: "Should I bring a jacket to Austin this weekend?"

  • Tool Call: get_travel_recommendation(location="Austin, TX", days=3)

  • Agent Response:

    "You will not need a heavy jacket in Austin this weekend! Temperatures will be very warm with highs reaching 99.6ยฐF (37.5ยฐC) and lows around 76.1ยฐF (24.5ยฐC). I recommend packing light summer clothing and staying hydrated."

Should I bring a jacket to Austin this weekend?

Query 3: Multi-City Weather Comparison

User: "Is it warmer right now in Chicago, Austin, or Tokyo?"

  • Tool Call: compare_city_weather(cities="Chicago, Austin, Tokyo")

  • Agent Response:

    "Currently, Austin, Texas is the warmest at 96.6ยฐF (35.9ยฐC). Comparison:

    1. Austin, TX: 96.6ยฐF (35.9ยฐC)

    2. Chicago, IL: 79.0ยฐF (26.1ยฐC)

    3. Tokyo, Japan: 73.9ยฐF (23.3ยฐC)"

Is it warmer right now in Chicago, Austin, or Tokyo?

Query 4: Edge Case Error Handling

User: "What's the weather in NonExistentCityXYZ?"

  • Tool Call: get_current_weather(location="NonExistentCityXYZ")

  • Agent Response:

    "I couldn't find a location matching 'NonExistentCityXYZ'. Could you please check the spelling or provide the city name alongside its state or country?"

F
license - not found
-
quality - not tested
B
maintenance

Maintenance

โ€“Maintainers
โ€“Response time
โ€“Release cycle
โ€“Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    -
    quality
    D
    maintenance
    A Model Context Protocol (MCP) server built with the mcp-framework to provide weather-related tools and data to AI clients. It enables integration of weather capabilities and custom tools into the MCP ecosystem for use with platforms like Claude Desktop.
    14
  • A
    license
    B
    quality
    D
    maintenance
    Provides tools to retrieve current weather conditions and daily forecasts for cities worldwide using the Open-Meteo API. This Python-based server enables MCP-compatible clients to access real-time meteorological data through a standardized interface.
    2
    MIT
  • A
    license
    -
    quality
    C
    maintenance
    A no-API-key-required MCP server that wraps Open-Meteo APIs to provide geocoding and weather forecast data, enabling city lookups and multi-day forecasts through tools, resources, and prompts.
    MIT
  • A
    license
    -
    quality
    C
    maintenance
    This MCP server provides access to Open-Meteo weather APIs including forecast, historical reanalysis, geocoding, air quality, marine weather, and flood risk data, enabling AI agents to retrieve weather information using natural language.
    41
    MIT

View all related MCP servers

Related MCP Connectors

  • Open-Meteo MCP โ€” weather forecast + historical reanalysis + sister APIs

  • OpenWeather MCP โ€” wraps the OpenWeatherMap API (openweathermap.org)

  • MCP server exposing the Backtest360 engine API as tools for AI agents.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/PedroLiu1999/weather-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server