mcp-danish-weather
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., "@mcp-danish-weatherWhat's the current weather in Copenhagen?"
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-danish-weather 🌦️
MCP server for Danish weather data from DMI (Danish Meteorological Institute). Part of the Nordic MCP Toolkit.
Tools
Tool | Description |
| Current conditions for any Danish location |
| Hourly forecast up to 72 hours ahead |
| Past weather with hourly/daily/monthly/yearly resolution |
Related MCP server: mcp-swedish-weather
Location Formats
City name:
copenhagen,aarhus,odense,gillelejePostal code:
1000,8000,5000Coordinates:
55.6761,12.5683
Installation
npx mcp-danish-weatherOr add to your MCP client config:
{
"mcpServers": {
"danish-weather": {
"command": "npx",
"args": ["-y", "mcp-danish-weather"]
}
}
}Examples
Ask your AI assistant:
"What's the weather in Copenhagen right now?"
"Will it rain in Aarhus tomorrow?"
"What was the temperature in Odense last January?"
"Show me the 72-hour forecast for Gilleleje"
Data Source
Danish Meteorological Institute (DMI) — Denmark's national weather service. Free API, no authentication required.
Part of the Nordic MCP Toolkit
mcp-danish-cvr — Danish company registry
mcp-danish-addresses — Danish address lookups & geocoding
mcp-danish-weather — Danish weather data (this package)
License
MIT
Available Tools
3 toolscompare_weatherA
Compare current weather between two Danish locations side by side. Useful for deciding between destinations or comparing conditions across the country.
| Name | Required | Description | Default |
|---|---|---|---|
| location1 | Yes | First location (city name, postal code, or coordinates) | |
| location2 | Yes | Second location |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. While it mentions 'current weather' and 'Danish locations', it doesn't disclose important behavioral traits like data sources, update frequency, error handling, or what specific weather metrics are compared. The description is too high-level for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that are front-loaded with the core functionality. Every sentence earns its place by providing purpose and usage context without any wasted words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 2 parameters with 100% schema coverage but no annotations and no output schema, the description is adequate but has clear gaps. It explains the comparison purpose well but doesn't address what weather metrics are compared, how results are presented, or any limitations of the comparison functionality.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters thoroughly. The description adds no additional parameter semantics beyond what's in the schema - it doesn't clarify format expectations, validation rules, or provide examples. Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Compare current weather'), resource ('between two Danish locations'), and scope ('side by side'). It explicitly distinguishes from sibling tools by focusing on comparison rather than single-location current weather or forecasts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool ('Useful for deciding between destinations or comparing conditions across the country'), which implicitly suggests alternatives like current_weather for single locations. However, it doesn't explicitly state when NOT to use it or name specific alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
current_weatherA
Get current weather conditions for a location in Denmark. Uses DMI HARMONIE high-resolution model (2km). Accepts city names, coordinates, or postal codes.
| Name | Required | Description | Default |
|---|---|---|---|
| location | Yes | Danish city name (e.g. 'Copenhagen', 'Aarhus', 'Gilleleje'), postal code, or lat,lon coordinates |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It reveals the data source (DMI HARMONIE model) and resolution (2km), which is valuable context beyond basic functionality. However, it doesn't mention rate limits, error conditions, authentication needs, or what specific weather data is returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise with two sentences that each earn their place: first establishes purpose and scope, second provides implementation details and parameter guidance. No wasted words, front-loaded with core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with no annotations and no output schema, the description provides adequate basic context but lacks details about return values, error handling, or performance characteristics. It covers the geographic scope and data source well, but doesn't compensate for the missing output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents the single parameter. The description adds marginal value by reinforcing the acceptable input types (city names, coordinates, postal codes) and providing Danish-specific examples, but doesn't add syntax or format details beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('Get current weather conditions') and resources ('for a location in Denmark'), and distinguishes it from siblings by specifying it's for current conditions only, not comparisons or forecasts. It explicitly mentions the data source (DMI HARMONIE high-resolution model).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context about when to use this tool (for current weather in Denmark) and implies alternatives by specifying 'current' conditions, but doesn't explicitly name sibling tools or state when not to use it. The geographic restriction to Denmark gives useful guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
weather_forecastA
Get hourly or daily weather forecast for a location in Denmark. Uses DMI HARMONIE 2km model for the first 2.5 days, then ECMWF for up to 16 days.
| Name | Required | Description | Default |
|---|---|---|---|
| location | Yes | Danish city name, postal code, or lat,lon coordinates | |
| days | No | Forecast days (default 3, max 16) | |
| mode | No | Hourly detail or daily summary (default: daily) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and adds valuable behavioral context beyond basic functionality, such as specifying the data sources (DMI HARMONIE 2km model for first 2.5 days, ECMWF for up to 16 days), which informs about accuracy and time ranges. However, it lacks details on error handling or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded, with two sentences that efficiently convey the tool's purpose and key behavioral details without unnecessary information, making it easy for an agent to understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity, no annotations, and no output schema, the description is mostly complete, covering purpose, usage context, and data sources. However, it could improve by mentioning output format or error cases to fully compensate for the lack of structured fields.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description does not add significant meaning beyond the schema, such as explaining parameter interactions or default behaviors, resulting in a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('Get hourly or daily weather forecast') and resource ('for a location in Denmark'), distinguishing it from sibling tools like 'compare_weather' and 'current_weather' by specifying forecast retrieval rather than comparison or current conditions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool (for weather forecasts in Denmark), but it does not explicitly state when not to use it or mention alternatives like 'current_weather' for real-time data, which could help differentiate usage scenarios more precisely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
v0.1.0- First observed
compare_weather - First observed
current_weather - First observed
weather_forecast
TDQS
Scored across 3 tools
The three tools have clearly distinct purposes: compare_weather for side-by-side comparisons between two locations, current_weather for real-time conditions at a single location, and weather_forecast for future predictions at a single location. There is no overlap or ambiguity in their functions, making it easy for an agent to select the appropriate tool.
All tool names follow a consistent verb_noun pattern with snake_case: compare_weather, current_weather, and weather_forecast. This predictability enhances readability and usability, with no deviations in style or convention.
With three tools, the server is well-scoped for its purpose of providing Danish weather data. Each tool earns its place by covering distinct aspects: current conditions, forecasts, and comparisons, avoiding bloat while ensuring essential functionality.
The tool set offers complete coverage for the domain of Danish weather information, including current conditions, forecasts (hourly/daily up to 16 days), and comparisons between locations. There are no obvious gaps, as it supports core workflows like planning and decision-making without dead ends.
Maintenance
Related MCP Connectors
Weather forecasts from MET Norway (Yr): geocoding plus hourly forecasts worldwide.
Global weather via Open-Meteo: forecast, ERA5 archive, marine, air quality, geocoding, elevation.
Real-time weather conditions and multi-day forecasts via Open-Meteo — free, no API key required
Current weather and forecasts for any coordinates, backed b… — paid per call (x402/credits), 1 tools
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides access to Dutch weather data (current conditions, forecasts, alerts, and historical data) via the KNMI API, with automatic location name resolution for Dutch cities.113 npm1Apache 2.0
- AlicenseBqualityDmaintenanceProvides access to current weather conditions and hourly forecasts for any location in Sweden using the SMHI Open Data API. It supports built-in city lists, coordinate inputs, and geocoding fallback to deliver detailed meteorological data without requiring authentication.27 npmMIT
- AlicenseAqualityDmaintenanceProvides access to German Weather Service (DWD) data via the Bright Sky API, including current conditions, forecasts, and official weather alerts. Users can retrieve weather information and locate stations using either city names or geographic coordinates.4MIT
- FlicenseNot gradedqualityDmaintenanceProvides real-time weather and forecasts via Open-Meteo, supporting queries by coordinates or city name.-