Click on "Install 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., "@Open Meteo MCP Serverwhat's the current weather and air quality in New York?"
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.
MCP Open Meteo Server
A comprehensive Model Context Protocol (MCP) server for accessing Open Meteo weather data and services. This server provides multiple tools to interact with various Open Meteo APIs, including current weather, forecasts, historical data, air quality, marine weather, and climate data.
Features
š¤ļø Weather Services
Current Weather - Real-time weather conditions for any location
Weather Forecast - Detailed hourly and daily forecasts up to 16 days
Historical Weather - Past weather data with comprehensive statistics
š Location Services
Geocoding - Search for locations and get coordinates
Reverse Geocoding - Get location details from coordinates
š Environmental Data
Air Quality - Air pollution data with AQI indices (European & US)
Marine Weather - Wave heights, ocean currents, and marine conditions
Climate Data - Long-term climate projections and historical climate data
š Data Features
Multiple temperature units (Celsius/Fahrenheit)
Comprehensive weather statistics
Health recommendations for air quality
Marine safety information
Climate model comparisons
Installation
Local Development
Docker Usage
Build and Run
Using Docker Compose
Usage
MCP Configuration
Local Node.js
Add this server to your MCP client configuration:
Docker
Docker Compose
Available Tools
1. Get Current Weather
Get real-time weather conditions for any location.
Parameters:
latitude(required): Latitude coordinate (-90 to 90)longitude(required): Longitude coordinate (-180 to 180)units(optional): Temperature units ("celsius" or "fahrenheit", default: "celsius")
2. Get Weather Forecast
Get detailed weather forecasts with hourly and daily data.
Parameters:
latitude(required): Latitude coordinate (-90 to 90)longitude(required): Longitude coordinate (-180 to 180)days(optional): Number of forecast days (1-16, default: 7)hourly(optional): Include hourly forecast (default: true)daily(optional): Include daily forecast (default: true)units(optional): Temperature units (default: "celsius")
3. Get Historical Weather
Retrieve historical weather data for analysis.
Parameters:
latitude(required): Latitude coordinate (-90 to 90)longitude(required): Longitude coordinate (-180 to 180)start_date(required): Start date in YYYY-MM-DD formatend_date(required): End date in YYYY-MM-DD formatdaily(optional): Include daily data (default: true)hourly(optional): Include hourly data (default: false)units(optional): Temperature units (default: "celsius")
4. Search Locations
Find locations by name and get their coordinates.
Parameters:
name(required): Location name to search forcount(optional): Maximum number of results (1-100, default: 10)language(optional): Language for results (default: "en")
5. Get Air Quality
Retrieve air quality data and forecasts.
Parameters:
latitude(required): Latitude coordinate (-90 to 90)longitude(required): Longitude coordinate (-180 to 180)days(optional): Number of forecast days (1-5, default: 3)current(optional): Include current air quality (default: true)
6. Get Marine Weather
Get marine weather forecasts including waves and ocean conditions.
Parameters:
latitude(required): Latitude coordinate (-90 to 90)longitude(required): Longitude coordinate (-180 to 180)days(optional): Number of forecast days (1-7, default: 7)
7. Get Climate Data
Access climate change scenarios and long-term climate data.
Parameters:
latitude(required): Latitude coordinate (-90 to 90)longitude(required): Longitude coordinate (-180 to 180)start_date(required): Start date in YYYY-MM-DD formatend_date(required): End date in YYYY-MM-DD formatmodels(optional): Array of climate models to use
Available Climate Models
EC_Earth3P_HR- EC-Earth3P-HR (High Resolution European Centre)FGOALS_f3_H- FGOALS-f3-H (Chinese Academy of Sciences)HiRAM_SIT_HR- HiRAM-SIT-HR (NOAA High Resolution)MRI_AGCM3_2_S- MRI-AGCM3-2-S (Japan Meteorological Research Institute)EC_Earth3P- EC-Earth3P (European Centre Standard)FGOALS_f3- FGOALS-f3 (Chinese Academy of Sciences Standard)MPI_ESM1_2_HR- MPI-ESM1-2-HR (Max Planck Institute High Resolution)MRI_AGCM3_2- MRI-AGCM3-2 (Japan Meteorological Research Institute Standard)
Example Workflows
1. Complete Weather Analysis for a City
2. Historical Weather Analysis
3. Marine Weather for Sailing
4. Climate Research
Data Sources
This server uses the following Open Meteo APIs:
Weather API - Current weather and forecasts
Historical Weather API - Past weather data
Geocoding API - Location search and coordinates
Air Quality API - Pollution and air quality data
Marine Weather API - Ocean and wave conditions
Climate API - Long-term climate data and projections
Development
Project Structure
Build Commands
Adding New Tools
Create a new tool file in
src/tools/Export an async function that handles the tool logic
Add the tool to the imports in
src/index.tsAdd the tool definition to the
ListToolsRequestSchemahandlerAdd the tool case to the
CallToolRequestSchemahandler
API Rate Limits
Open Meteo APIs have the following rate limits:
Free tier: 10,000 API calls per day
Commercial tier: Higher limits available
For high-volume usage, consider:
Implementing caching mechanisms
Using the commercial API for higher rate limits
Batching requests when possible
Error Handling
The server includes comprehensive error handling:
Input validation for all parameters
API error response handling
Network timeout and retry logic
Informative error messages
Contributing
Fork the repository
Create a feature branch
Make your changes
Add tests if applicable
Submit a pull request
License
MIT License - see LICENSE file for details
Acknowledgments
Open Meteo for providing free weather APIs
Model Context Protocol for the MCP specification
Support
For issues and questions:
Check the Open Meteo documentation
Review the error messages for specific guidance
Open an issue in this repository for bugs or feature requests