Weather Prediction MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Weather Prediction MCP ServerWhat should I pack for a trip to Paris next week?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Weather Prediction MCP Server
A Model Context Protocol (MCP) server that exposes weather-forecast tools, designed for consumption by a Databricks Agent Bricks agent. Deployed as a Databricks App.
Architecture
┌───────────────────────────────────────────────────────────────────┐
│ User (natural language) │
│ │ │
│ v │
│ Agent Bricks Agent (system_prompt.txt) │
│ │ MCP tool calls (streamable-HTTP) │
│ v │
│ ┌───────────────────────────────────────────────────────────┐ │
│ │ weather_mcp_server.py (FastMCP, Databricks App) │ │
│ │ ├─ get_current_weather(location) │ │
│ │ ├─ get_forecast(location, days) │ │
│ │ ├─ get_travel_recommendation(location, days) │ │
│ │ └─ compare_weather(locations, days) │ │
│ └───────────────────────────────────────────────────────────┘ │
│ │ │
│ v │
│ ┌───────────────────────────────────────────────────────────┐ │
│ │ weather_adapter.py (HTTP layer) │ │
│ │ ├─ geocode(location) → lat/lon │ │
│ │ ├─ get_current_weather(lat, lon) │ │
│ │ ├─ get_forecast(lat, lon, days) │ │
│ │ └─ build_recommendations(forecast) │ │
│ └───────────────────────────────────────────────────────────┘ │
│ │ │
│ v │
│ Open-Meteo API (free, no key required) │
│ ├─ geocoding-api.open-meteo.com/v1/search │
│ └─ api.open-meteo.com/v1/forecast │
└───────────────────────────────────────────────────────────────────┘Related MCP server: Weather Prediction MCP Server
Weather API
Open-Meteo — chosen because:
Zero signup, zero API keys, zero cost
~10,000 calls/day (non-commercial)
Global coverage (not US-only)
Provides geocoding, current weather, and 16-day forecasts in one API family
Tools
Tool | Purpose | Key Inputs |
| Live conditions (temp, wind, humidity) |
|
| Multi-day daily forecast |
|
| Packing/planning advice with thresholds |
|
| Side-by-side city comparison |
|
Recommendation Thresholds
Condition | Threshold | Advice |
Rain | Precip probability > 40% | Bring umbrella/rain jacket |
Cold | Temp < 15°C | Light jacket |
Very cold | Temp < 5°C | Heavy coat + thermals |
Windy | Wind > 30 km/h | Windbreaker |
High UV | UV index ≥ 5 | Sunscreen + sunglasses |
Heat | Temp > 35°C | Hydration alert |
Variable | Day swing > 10°C | Dress in layers |
Project Structure
WeatherMCPserver/
├── weather_adapter.py # HTTP layer: Open-Meteo API calls + geocoding + logic
├── weather_mcp_server.py # FastMCP server with @mcp.tool decorators
├── pyproject.toml # UV package management
├── app.yaml # Databricks App deployment config
├── system_prompt.txt # Agent Bricks system prompt
└── README.md # This fileSetup & Deployment
Prerequisites
Databricks workspace with Apps enabled
UV installed (
pip install uvorcurl -LsSf https://astral.sh/uv/install.sh | sh)No API keys needed (Open-Meteo is key-free)
Local Development
# Install dependencies
uv sync
# Run the MCP server locally
uv run weather_mcp_server.py
# Server starts on http://localhost:8000
# MCP endpoint: http://localhost:8000/mcpDeploy as Databricks App
# From the workspace, deploy the app
databricks apps create weather-mcp-server \
--source-code-path /Workspace/Users/<your-email>/WeatherMCPserver
# Or deploy via the Apps UI:
# 1. Go to Compute > Apps > Create App
# 2. Point source to this folder
# 3. The app.yaml handles the restRegister as External MCP Tool in Agent Bricks
Navigate to your Agent Bricks agent configuration
Add an External MCP connection:
URL:
https://<your-app-url>/mcpTransport: Streamable HTTP
Paste the contents of
system_prompt.txtas the agent's system promptTest with: "What's the weather in Tokyo right now?"
Example Queries
Current conditions:
"What's the temperature in Berlin right now?"
Forecast:
"Will it rain in Chicago this week?"
Travel advice:
"I'm traveling to Austin, Texas for 3 days. What should I pack?"
Comparison:
"Which has better weather this weekend: Miami, LA, or Denver?"
Edge cases (handled gracefully):
"What's the weather in Xyzzyville?" → Error: location not found, suggests being more specific.
Authentication & Secrets
None required. Open-Meteo needs no API key. If you later add a keyed API (e.g. WeatherAPI.com), store the key as a Databricks secret:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
api_key = w.secrets.get_secret(scope="weather", key="api_key").valueNever hardcode keys in source files.
Lakebase Integration (Optional)
Query history can be stored in the provisioned Lakebase Postgres instance for dashboard/analytics:
Host: ep-gentle-paper-e1xaec1l.database.eastus2.azuredatabricks.net
Database: databricks_postgres
User: WeatherMCPserverLicense
Internal project — Databricks learning challenge submission.
This server cannot be deployed
Maintenance
Related MCP Connectors
Hosted MCP server for Xweather weather data: conditions, forecasts, alerts, and more.
MCP server for weather with reasoning — umbrella advice, outdoor checks, city comparisons.
An MCP server for weather information by @kulybaba
An MCP server for weather information by @kulybaba
Related MCP Servers
- FlicenseNot gradedqualityBmaintenanceMCP server exposing weather tools (current conditions, forecasts, umbrella prediction, travel advice, city comparisons) via Open-Meteo, designed for integration with Databricks Agent Bricks.-
- FlicenseNot gradedqualityBmaintenanceAn MCP server that provides real-time weather data and forecasts via Open-Meteo, with tools for current conditions, multi-day forecasts, umbrella predictions, and travel recommendations.-
- AlicenseNot gradedqualityCmaintenanceThis MCP server provides current weather, 1-16 day forecasts, travel recommendations, and city comparisons using Open-Meteo. It requires no API key and includes a transparent agent-friendly interface.MIT
- AlicenseNot gradedqualityBmaintenanceA FastMCP server that provides current weather, forecasts, and rule-based umbrella/jacket recommendations via Open-Meteo, deployable to Databricks Agent Bricks.Apache 2.0