Smarter Weather
Smarter Weather MCP: forecasts, alerts, outlooks, observations, AQI, grids, and map imagery.
Connector by smarterweather · GitHub account verified by the MCP Registry
Install
Works with Claude Code, VS Code, Codex, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/smarterweather-weather
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Remote endpoint
https://mcp.smarterweather.comRemote (HTTP)
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 26, 2026.
- Tools
- 16 read · 0 write · 0 deleteRead-only
- Secrets
- 1 (API keys, tokens or passwords)
- Install scripts
- None found
- Runs as
- Node.js package
Tools by what they do 16
From the running server's own tool list (tools/list) on Oct 25, 2026.
Read 16 · Look things up without changing anything.
call_tooldescribe_datasetfind_toolsget_alertsget_current_conditionsget_forecastget_forecast_distributionget_hourly_forecastget_observed_precipitationget_platform_statusget_time_contextlist_datasets
Show 4 more tools
query_datasetreverse_geocodesearch_catalogsearch_locations
Secrets and settings it asks for
Secrets: values you paste in that let it act as you.
SMARTERWEATHER_API_KEY
Other settings (environment variables or headers).
SMARTERWEATHER_MCP_URL
Network hosts it talks to 3
github.com· found in codemcp.smarterweather.com· found in remote endpoint, install command, codesmarterweather.com· found in code
Files it touches
- Your home directory (~)
- Any path the agent passes to its tools
Tools (16)
As the server listed them on Oct 25, 2026. Descriptions are the server’s own words; hidden characters are shown as [U+…].
call_toolCall toolread-onlyRuns a tool find_tools lists, by name: same price, limits and result as calling it directly. Tools already in your list are called directly, not through this. `arguments` follows that tool's input schema.
describe_datasetDescribe datasetread-onlyA dataset's variables (standard names, units, display units, categories, bands), horizon, step, cadence, freshness, cost class and an example_query for query_dataset. Example: {"dataset_id": "nbm_conus"}.
find_toolsFind toolsread-onlyLists the weather tools this connection does not show (best times, comparisons, forecast totals, air quality; station observations, soundings, hurricane recon; lightning, storm cells, storm reports; outlooks, forecaster text, hurricanes; climate records and normals; forecast accuracy; maps and charts; people at risk; crop heat units), with when to use each and its required arguments. Run one with call_tool, in this session, no reconnect. With `tools`, returns their full input schemas. Free; no network call.
get_alertsGet NWS alertsread-onlyNWS watches, warnings, advisories. Point (city/ZIP/lat+lon): containing polygons. BBox or US state/DC/CONUS (codes, full names, US/national): intersecting polygons. A city miss is not a statewide all-clear — query the state or a bbox; never say regional inventory is impossible. NY/WA and "New York State"/"Washington State" are states; "New York"/"Washington" stay cities. Omit at for now; at (ISO-8601 UTC) is the snapshot then. Empty = all-clear or purged (~24h). alert_id = detail+geometry, ignores at. Ex: {"location":"WI","events":["Tornado Warning"]}.
get_current_conditionsGet current conditionsread-onlyCurrent weather right now at a location from two independent sources in one call: the RTMA gridded analysis (exact-point values, updated sub-hourly) and the nearest METAR station observation (ground truth with raw METAR, flight category). Use the analysis for point-accurate values and the station for verification. Analysis fields: temperature_2m, dew_point_2m, relative_humidity_2m (derived here from temperature and dew point; listed in analysis.derived), wind_speed_10m, wind_direction_10m, wind_gusts_10m, surface_pressure (station pressure at ground level, not sea-level pressure), visibility, …
get_forecastGet forecastread-onlyComplete weather overview for a location: current conditions, daily forecast (SPC threats, severity; view "detailed" adds CAPE, UV, full day/night periods), active alerts, and outlooks in one call. Pre-aggregated across NBM, HRRR, GFS, RTMA, and SPC and unit-converted server-side. Primary weather tool; reach for lower-level tools only when you need raw observations or a specific dataset. Times are UTC ISO 8601; quote daily[].astro.local to users, not UTC. If forecast.location.timezone_resolved is false, zone unknown: state times as UTC, never as local. Accepts a place name directly. Examples: …
get_forecast_distributionGet forecast distributionread-onlyNBM probabilistic guidance for one weather aspect: percentiles (p10-p90), exceedance probabilities and ensemble spread. Use this for any question about odds, ranges, potential or confidence ("how much could we get", "range of possible highs", "how sure is this") -- a deterministic forecast value cannot answer one. Reading the percentiles: p50 is the most likely outcome, p90 is the reasonable worst case when the risk is the high end (snow totals, wind, rainfall), and p10 when the risk is the low end (cold, visibility, ceiling). A single percentile is not the forecast -- report the likely value …
get_hourly_forecastGet hourly forecastread-onlyBlended hourly forecast: temperature, feels-like, humidity, wind, precipitation probability/amount, conditions, and icon per hour. hourly[0] is the current or next hour; hourly_coverage.first_time says which. Timestamps are UTC ISO 8601; convert to the local timezone before presenting. Ask for the days you need up front -- one call with days: 4 beats four calls. ALWAYS check hourly_coverage before answering about a specific hour: it reports first_time and last_time (the window the rows actually span), sample_interval_hours (past the first day rows are every 2-3h, not every hour), and truncated…
get_observed_precipitationObserved precipitationread-onlyHow much rain fell: observed precipitation totals at a location. Use for "did it rain", "how much rain fell", "rain in the last 24 hours / since yesterday". Source: MRMS MultiSensor QPE Pass2 (radar bias-corrected to rain gauges) over 1/3/6/24/48/72 h windows (CONUS; 1 h only in Alaska and Hawaii). Values have about 2 mm (0.08 in) resolution, so 0 means under about 1 mm; data runs about an hour behind real time. Pass `at` (within 33 h) for totals ending at a past time (newest frame up to 3 h before it). With include_nowcast (default) it also returns a next-hour radar nowcast (CONUS): peak inte…
get_platform_statusGet platform statusread-onlyCurrent data-freshness status of the weather platform: overall state, per-source states (ok / degraded / outage / no_signal), open incidents with cause attribution (provider outage vs internal processing delay), and active provider advisories. Use this when a user asks whether data is current, when other tools return surprisingly stale data, or before presenting time-critical weather. If a source is degraded or in outage, tell the user their data may be stale rather than presenting it as live. No inputs. Refreshed about every 5 minutes.
get_time_contextGet time contextread-onlyComplete temporal context for a location: local time, timezone, 14-day calendar with day names and Today/Tomorrow offsets, sunrise/sunset/solar times (from the weather pipeline's astro product), and moon phase. Use whenever you need to reason about dates, times, or daylight for a location -- including "what time is sunset?", "is it dark there now?", or "what day of the week is the 4th-day forecast?". If current_time.timezone_resolved is false, zone unknown: state times as UTC, never as local. Accepts a place name directly. Example: {"location": "Seattle, WA"}.
list_datasetsList datasetsread-onlyDiscover the gridded datasets (model grids, analyses) available at a location, or every public one when none is given, keyed by dataset_id. At a point: its domain (CONUS/Alaska/Hawaii) plus global grids, with freshness where tracked (latest model run as latest_run, latest_time, data_age_seconds, freshness_status). Use this to find dataset_id values for query_dataset or check whether data is current. Variables, units and standard names come from describe_dataset. Example: {"location": "Anchorage, AK"}.
query_datasetQuery datasetread-onlyRaw time series of one dataset's variables at a point, with unit labels: any gridded product (NBM, HRRR, RRFS, GFS, RTMA, MRMS, air quality, ...). Time modes: hours (default 24), time_start+time_end (ISO 8601), or latest=true (newest value). Up to 168 frames: when truncated, send next_cursor as cursor with the same arguments. reference_time pins a model run; each series reports its run (reference_time, or reference_times when runs mix); runs older than about 48 h may be gone. For blended forecasts use get_forecast. Examples: {"location": "Denver, CO", "dataset_id": "rrfs_surface", "variables":…
reverse_geocodeReverse geocoderead-onlyResolve coordinates to a human-readable place (city, state, county, timezone). Use when you have lat/lon but need a display name or the local timezone. Example: {"lat": 39.74, "lon": -104.99} -> Denver, Colorado, America/Denver.
search_catalogSearch catalogread-onlyFind which dataset answers a weather question when no dedicated tool fits: ranks the data catalog (model grids, radar, satellite, outlooks, observations) by the question's words and returns the best datasets with variable, units, cadence, a one-line why and the exact `call` (tool and arguments) to run next. Pass lat/lon, or `domain`, to keep only datasets covering the place; without one, Alaska/Hawaii twins fold into the CONUS dataset. Calls are ready for "now"; for a past time set `time_start`/`time_end` (or `at` where the tool supports it). Free; no network call.
Show 1 more tools
search_locationsSearch locationsread-onlyResolve a place to ranked candidates with lat/lon: city ("Denver"), "city, ST", ZIP ("50219"), or partial input with fuzzy=true ("bost" -> Boston); venues and addresses where enabled. Rows carry `type` place|zip|address|poi; pass a row's lat/lon to weather tools. `matched_via: "autosuggest"` marks rows found after the exact match missed; `partial` means a section timed out. Weather tools take `location` directly, venues included -- use this to disambiguate ("which Springfield?") or present choices.
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 2
- Last commit (this folder)
- Oct 20, 2026 (8 days ago)
- Last release
- Oct 20, 2026 (8 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- Registry name
io.github.smarterweather/weather- Version
- 0.1.1
- Auth
- Auth not stated, API key
- Packages
- npm @smarterweather/mcp-weather
- License
- MIT
- Repository
- github.com/smarterweather/developer
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
More from smarterweather
Cite this page
Smarter Weather MCP server. Agent Mart. https://agentmart.dev/connectors/smarterweather-weather (last updated 2026-10-24)