KNMI Weather MCP
This server provides real-time weather data for locations in the Netherlands using KNMI weather stations. You can:
Get raw weather data (temperature, humidity, wind speed, precipitation, visibility, air pressure)
Receive natural language interpretation of current weather conditions
Search for locations within the Netherlands
Find the nearest KNMI weather station to specific coordinates
The MCP server uses .ENV for managing environment variables, particularly for storing the KNMI API key.
The MCP server utilizes NumPy for numerical operations in processing weather data.
The MCP server uses pandas for data manipulation and analysis of weather information.
The MCP server leverages Pydantic for data validation and settings management.
The MCP server is built with Python and requires Python 3.10 or higher.
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., "@KNMI Weather MCP what's the weather like in Amsterdam right now?"
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.
KNMI Weather MCP
A FastMCP server that provides real-time weather data from KNMI (Royal Netherlands Meteorological Institute) weather stations. This application fetches the latest 10-minute measurements from the nearest weather station to any location in the Netherlands.
Features
Get weather data for any location in the Netherlands
Automatically finds the nearest KNMI weather station
Provides real-time measurements including:
Temperature
Humidity
Wind speed and direction
Precipitation
Visibility
Air pressure
Natural language interpretation of weather conditions
Location search functionality
Detailed logging
Related MCP server: mcp-server-weather-cuhksz
Prerequisites
Python 3.10 or higher
KNMI API Key (get one from KNMI Data Platform)
uvpackage manager
Installation
Clone the repository:
git clone <repository-url> cd knmi-mcpCreate a
.envfile in the project root:KNMI_API_KEY=your_api_key_here
Running the Server
Using Claude AI
To use this application with Claude AI, run the following command in the folder of the project:
uv run fastmcp install src/knmi_weather_mcp/server.pyThis will add the following configuration to your Claude configuration file (typically located at ~/Library/Application Support/Claude/claude_desktop_config.json):
{
"KNMI Weather": {
"command": "uv",
"args": [
"run",
"--with",
"fastmcp",
"--with",
"httpx",
"--with",
"netCDF4",
"--with",
"numpy",
"--with",
"pandas",
"--with",
"pydantic",
"--with",
"python-dotenv",
"--with",
"xarray",
"fastmcp",
"run",
"/Users/<username>/<git location>/knmi-mcp/src/knmi_weather_mcp/server.py"
]
}
}Note: If you see an error like this:
spawn uv ENOENTReplace the uv command with the full path to the uv command. On *nix systems this can be found with the command which uv.
Manual Running
For development or standalone usage:
uv run fastmcp run src/knmi_weather_mcp/server.pyAvailable Tools
1. what_is_the_weather_like_in
Get a natural language interpretation of current weather conditions for any location in the Netherlands.
Example:
await what_is_the_weather_like_in("Amsterdam")2. get_location_weather
Get raw weather data for a location.
Example:
await get_location_weather("Rotterdam")3. search_location
Search for locations in the Netherlands.
Example:
await search_location("Utrecht")4. get_nearest_station
Find the nearest KNMI weather station to given coordinates.
Example:
await get_nearest_station(52.3676, 4.9041)Logging
The application logs are stored in the logs/knmi_weather.log file, providing detailed information about:
API requests and responses
Weather data processing
Error messages
Debug information
Data Sources
This application uses the KNMI Data Platform API to fetch data from the "Actuele10mindataKNMIstations" dataset, which provides 10-minute interval measurements from all KNMI weather stations in the Netherlands.
Error Handling
The application includes robust error handling for:
Invalid locations
API authentication issues
Network problems
Data parsing errors
Missing measurements
Available Tools
4 toolsget_location_weatherC
Get current weather data for a location
Inputs: location (required).
get_nearest_stationB
Find the nearest KNMI weather station to given coordinates
Args:
latitude: Latitude in degrees
longitude: Longitude in degrees
Inputs: latitude (required), longitude (required).
search_locationC
Search for locations in the Netherlands
Args:
query: Search term for location
Inputs: query (required).
what_is_the_weather_like_inB
Get and interpret weather data for a location in the Netherlands
Args:
location: City or place name in the Netherlands
Returns:
A natural language interpretation of the current weather conditions
Inputs: location (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 4 tools
Tools are mostly distinct: search_location and get_nearest_station are clearly supporting, but get_location_weather and what_is_the_weather_like_in both provide current weather, albeit in different formats (data vs. natural language). This overlap could cause misselection.
Three tools follow verb_noun pattern (get_location_weather, get_nearest_station, search_location), but what_is_the_weather_like_in deviates entirely into a conversational question, breaking consistency.
With 4 tools, the server is well-scoped for a focused weather service covering location search, station lookup, and current conditions. Each tool serves a clear purpose without being excessive.
The tool set covers location search and current weather but lacks forecast, historical data, or station metadata. The domain of weather for the Netherlands has notable gaps that could hinder some agent tasks.
Maintenance
Related MCP Connectors
MCP server for weather with reasoning — umbrella advice, outdoor checks, city comparisons.
Hosted MCP server for Xweather weather data: conditions, forecasts, alerts, and more.
An MCP server for weather information by @kulybaba
An MCP server for weather information by @kulybaba
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides real-time weather data, hourly forecasts, and daily summaries using the free Open-Meteo API with no API key required. It enables users to search for weather conditions by specific coordinates or city names across multiple measurement units.2MIT
- AlicenseNot gradedqualityDmaintenanceA FastMCP server that provides weather-related tools using the QWeather API, enabling language models to query real-time weather, forecasts, warnings, and indices.MIT
- AlicenseNot gradedqualityDmaintenanceMCP Server for global weather, forecasts, air quality, and climate data using Open-Meteo, no API key required.MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server providing AI-powered weather tools via Google Generative AI, enabling real-time weather data retrieval through natural language queries.MIT