Access global weather forecasts, ERA5 historical climate data, marine conditions, air quality, and elevation via Open-Meteo.
Do not connect
A critical issue was found. Do not connect this server as-is.
Scanned 28 days ago Due for re-check
A server can change after it's graded. Re-run the automated scan to refresh this report.
This grade is deterministic and reproducible: the same server surface always yields the same grade under a given algorithm version. It is a real automated assessment computed by the MCPGrade engine from what the probe actually observed — not a fabricated or opinion score. It is not a manual human pentest, so it can miss context-specific risks.
Every signal below was measured directly by the automated probe. The grade is derived only from evidence like this — nothing is assumed.
The open-meteo-mcp-server MCP server exposes 11 tools, focused primarily on database capabilities. Its published description reads: "Access global weather forecasts, ERA5 historical climate data, marine conditions, air quality, and elevation via Open-Meteo". It communicates over Streamable HTTP using the 2025-06-18 protocol revision, and does not require authorization to connect. MCPGrade currently rates open-meteo-mcp-server F — a critical issue was found and the server should not be connected as-is. Its most notable findings include "Data-exfiltration parameters" and "Cross-tool shadowing". This report is a deterministic, reproducible automated assessment: the same observed surface always yields the same grade under a given algorithm version, and it is refreshed as new scans arrive and free to read — but it is not a substitute for a manual human security review. Always re-check open-meteo-mcp-server's advertised tools, transport security, and authorization posture before connecting an autonomous agent or sharing sensitive context with it.
Add open-meteo-mcp-server to an MCP client using the endpoint below. Review the grade and findings above before granting an autonomous agent access.
MCP endpoint
https://open-meteo.caseyjhand.com/mcpStreamable HTTP transport. This is the MCP endpoint, not a website — paste it into your MCP client server list rather than a browser.
Captured passively during the read-only scan. Click any value to find servers that match it.
The tools this server advertises via tools/list — names, purposes, and the parameters each accepts, exactly as enumerated read-only.
Resolve a place name to ranked coordinate matches with country, region, elevation, timezone, and population. Required prerequisite for name-based queries — all weather tools take latitude/longitude, n
Terrain elevation from the Copernicus Digital Elevation Model (~90m resolution) for one or more coordinate pairs. Accepts up to 100 pairs per call. Useful for geographic context, elevation-adjusted we
Sorted worst-first. Each finding shows its severity, what it means, its OWASP MCP Top-10 mapping, and a recommended fix — the check id links to the exact methodology row that produced it.
tool: openmeteo_get_forecast
A tool exposes a free-text/webhook/feedback parameter with no honest purpose — a classic exfil channel.
92) for recent history. Use past_days instead of openmeteo_get_historiRecommendationRemove side-channel parameters; constrain tool inputs.
tool: openmeteo_get_forecast
A tool description tries to alter the model’s use of another tool.
rical for dates within the last 1–5 days, since ERA5 has a variable lag. RRecommendationDescriptions must describe only their own tool.
tool: openmeteo_get_historical
A tool description tries to alter the model’s use of another tool.
last week, use openmeteo_get_forecast with past_days instead. Uses the same variableRecommendationDescriptions must describe only their own tool.
tool: openmeteo_get_marine
A tool exposes a free-text/webhook/feedback parameter with no honest purpose — a classic exfil channel.
92) for recent history — or start_date and end_date together for an arRecommendationRemove side-channel parameters; constrain tool inputs.
tool: openmeteo_get_marine
A tool description tries to alter the model’s use of another tool.
RecommendationDescriptions must describe only their own tool.
tool: openmeteo_get_air_quality
A tool exposes a free-text/webhook/feedback parameter with no honest purpose — a classic exfil channel.
92) for recent history — or start_date and end_date together for an arRecommendationRemove side-channel parameters; constrain tool inputs.
tool: openmeteo_get_air_quality
A tool description tries to alter the model’s use of another tool.
RecommendationDescriptions must describe only their own tool.
tool: openmeteo_get_ensemble
A tool exposes a free-text/webhook/feedback parameter with no honest purpose — a classic exfil channel.
on":"DataCanvas token for large multi-member queries. When a result iRecommendationRemove side-channel parameters; constrain tool inputs.
tool: openmeteo_get_climate
A tool exposes a free-text/webhook/feedback parameter with no honest purpose — a classic exfil channel.
on":"DataCanvas token for multi-decade or multi-model queries. When aRecommendationRemove side-channel parameters; constrain tool inputs.
tool: openmeteo_get_climate
A tool description tries to alter the model’s use of another tool.
counterpart to openmeteo_get_historical (ERA5, what happened). Daily resolution only. ARecommendationDescriptions must describe only their own tool.
tool: openmeteo_dataframe_query
A tool description tries to alter the model’s use of another tool.
a DataCanvas by openmeteo_get_forecast, openmeteo_get_historical, openmeteo_get_marineRecommendationDescriptions must describe only their own tool.
tool: openmeteo_dataframe_query
A database tool exposes a query/sql parameter that is a free-form string with no allow-list or parameterisation constraint — a raw-string injection surface. A tool exposing structured filters or an `enum` of named queries does not fire.
unconstrained query parameter "sql"RecommendationExpose parameterised operations instead of a raw query string; never build queries from unvalidated model output.
tool: openmeteo_dataframe_describe
A tool description tries to alter the model’s use of another tool.
anvas staged by openmeteo_get_forecast, openmeteo_get_historical, openmeteo_get_marineRecommendationDescriptions must describe only their own tool.
tool: (server instructions)
A tool description tries to alter the model’s use of another tool.
. Workflow: 1. openmeteo_search_locations — resolve a place name to coordinates (requiredRecommendationDescriptions must describe only their own tool.
The server accepts tool enumeration (and likely invocation) with no authentication.
RecommendationRequire OAuth 2.1 authorization for any server exposing non-public tools.
Vantaj uptime monitoring via MCP — manage monitors, heartbeats, incidents, and status pages.
Unified gateway to Algeria's TKAWEN ecosystem: commerce, certification, and AI tools.
Provides access to the Cohereon Doctrine AI safety framework with governance components, tiered access, and agent onboarding.
Agentic rails for complex workflows with receipts, fees, and MCP tool access.
Structural TC39 spec lookup for ECMA-262 and ECMA-402 in AI agents, SHA-pinned and offline-first.
Structural TC39 spec lookup for ECMA-262 and ECMA-402 in AI agents, SHA-pinned and offline-first.
Weather forecast for coordinates: hourly and/or daily variables for up to 16 days ahead, with optional past_days (up to 92) for recent history. Use past_days instead of openmeteo_get_historical for da
Historical weather from the ERA5 reanalysis archive (1940–present). Requires start_date and end_date (ISO 8601 date, e.g., "2024-07-01"). ERA5 has a variable lag of up to ~5 days — for dates within th
Marine wave and ocean conditions for a coastal or ocean coordinate: wave height, wave period, wave direction, wind-wave height, swell height, sea-surface temperature. Forecast horizon up to 8 days, wi
Modeled CAMS (Copernicus Atmosphere Monitoring Service) air quality: PM2.5, PM10, nitrogen dioxide, sulphur dioxide, ozone, carbon monoxide, dust, pollen, and European/US AQI indices. This is modeled
Probabilistic ensemble weather forecast — up to 64 ensemble members, up to 16 days ahead with optional past_days (0–92). Each member's values appear as separate columns named with a member suffix (e.g
GloFAS (Global Flood Awareness System) river discharge forecast and historical reanalysis. Returns daily ensemble river discharge (m³/s) for the river nearest to the given coordinates — no river ID ne
Long-range climate projections from bias-corrected daily CMIP6 models, covering 1950-01-01 to 2050-12-31 at any coordinate. Answers "what will conditions look like through 2050?" — the future-projecti
Run a read-only SQL SELECT against tables staged on a DataCanvas by openmeteo_get_forecast, openmeteo_get_historical, openmeteo_get_marine, openmeteo_get_air_quality, openmeteo_get_ensemble, openmeteo
List the tables and their columns on a DataCanvas staged by openmeteo_get_forecast, openmeteo_get_historical, openmeteo_get_marine, openmeteo_get_air_quality, openmeteo_get_ensemble, openmeteo_get_flo