@dangahagan/weather-mcp 1.25.1 → 1.25.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  [![npm version](https://badge.fury.io/js/@dangahagan%2Fweather-mcp.svg)](https://www.npmjs.com/package/@dangahagan/weather-mcp)
4
4
  [![MCP Registry](https://img.shields.io/badge/MCP-Registry-blue)](https://registry.modelcontextprotocol.io/v0/servers?search=io.github.dgahagan/weather-mcp)
5
5
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
6
- [![Tests](https://img.shields.io/badge/tests-2%2C541%20passing-brightgreen)](./docs/testing/TEST_SUITE_README.md)
6
+ [![Tests](https://img.shields.io/badge/tests-2%2C569%20passing-brightgreen)](./docs/testing/TEST_SUITE_README.md)
7
7
  [![Node](https://img.shields.io/badge/node-%3E%3D18-339933?logo=node.js&logoColor=white)](https://nodejs.org)
8
8
 
9
9
  **Give your AI assistant real weather data — 17 tools, zero API keys, zero signup, zero cost.**
@@ -58,7 +58,7 @@ Choose this one if you want:
58
58
 
59
59
  - **Genuinely free** — every data source is a free public API. No trial that expires, no credit card, no rate-limited "free tier" bait.
60
60
  - **No API keys** — install to first forecast in under a minute. Nothing to configure, nothing to leak into a repo. ([Three optional keys](#optional-api-keys) add extras if you want them; the default configuration needs none.)
61
- - **Fully open source** — MIT licensed, readable TypeScript, 2,541 tests. Audit it, fork it, fix it.
61
+ - **Fully open source** — MIT licensed, readable TypeScript, 2,569 tests. Audit it, fork it, fix it.
62
62
  - **Privacy-respecting** — your queries go directly from your machine to public weather APIs. No middleman server, no telemetry.
63
63
  - **Breadth** — 17 tools covering weather, safety hazards (lightning, floods, wildfires), marine conditions, air quality, and historical data back to 1940. Most weather MCPs stop at forecasts.
64
64
 
@@ -378,7 +378,7 @@ Being honest about what free public data can and can't do:
378
378
  ```bash
379
379
  npm run build # Compile TypeScript
380
380
  npm run dev # Run in development mode
381
- npm test # Run all 2,541 tests
381
+ npm test # Run all 2,569 tests
382
382
  npm run test:coverage # Coverage report
383
383
  npm run audit # Dependency vulnerability scan
384
384
  ```
@@ -1 +1 @@
1
- {"version":3,"file":"lightningHandler.d.ts","sourceRoot":"","sources":["../../src/handlers/lightningHandler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EAM1B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAuD,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAc1G;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,OAAO,EACb,aAAa,EAAE,aAAa,EAC5B,gBAAgB,EAAE,gBAAgB,GACjC,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAyB7D;AA6JD;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAkF9G;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,yBAAyB,EACnC,MAAM,GAAE,WAAwB,GAC/B,MAAM,CAyIR"}
1
+ {"version":3,"file":"lightningHandler.d.ts","sourceRoot":"","sources":["../../src/handlers/lightningHandler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EAM1B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAuD,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAe1G;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,OAAO,EACb,aAAa,EAAE,aAAa,EAC5B,gBAAgB,EAAE,gBAAgB,GACjC,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAyB7D;AAiKD;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAkF9G;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,yBAAyB,EACnC,MAAM,GAAE,WAAwB,GAC/B,MAAM,CAyIR"}
@@ -6,6 +6,7 @@ import { blitzortungService } from '../services/blitzortung.js';
6
6
  import { resolveLocationAsync, prependLocationLine } from '../utils/locationResolver.js';
7
7
  import { validateLatitude, validateLongitude, validateDetail } from '../utils/validation.js';
8
8
  import { logger, redactCoordinatesForLogging } from '../utils/logger.js';
9
+ import { displayValue } from '../utils/displayBanding.js';
9
10
  import { ValidationError } from '../errors/ApiError.js';
10
11
  /**
11
12
  * Tool entry point: resolve the location (coordinates, saved name, or geocoded
@@ -101,6 +102,10 @@ function assessSafety(strikes, statistics) {
101
102
  // `nearestDistance === null` arm below and render a green SAFE all-clear for a strike overhead.
102
103
  const nearestDistance = nearestStrike?.distance ?? null;
103
104
  const nearestTime = nearestStrike?.timestamp || null;
105
+ // Band on the number the report actually prints, not the raw measurement: every sentence below
106
+ // renders `.toFixed(1)`, so banding on the raw value lets two reports show the same distance under
107
+ // different verdicts (issue #80). Per the caller contract shared with getFrostbiteRisk/getWbgtCategory.
108
+ const shownDistance = nearestDistance === null ? null : displayValue(nearestDistance, 1);
104
109
  // Determine if there's active thunderstorm activity
105
110
  // Active if: strikes in last 10 minutes OR high strike rate
106
111
  const recentStrikes = strikes.filter(s => {
@@ -112,29 +117,29 @@ function assessSafety(strikes, statistics) {
112
117
  let message;
113
118
  const recommendations = [];
114
119
  // Safety assessment based on nearest strike distance
115
- if (nearestDistance === null || nearestDistance > 50) {
120
+ if (shownDistance === null || shownDistance > 50) {
116
121
  level = 'safe';
117
122
  // `safe` covers two different facts, and they must not share a sentence: no strikes were
118
123
  // found at all, or strikes were found and the nearest is beyond the 50 km threshold. The
119
124
  // second must state the fact and claim only what the band means — never assert an absence
120
125
  // above a report that goes on to list the strikes.
121
- message = nearestDistance === null
126
+ message = shownDistance === null
122
127
  ? 'No significant lightning activity detected in the area.'
123
- : `Nearest lightning ${nearestDistance.toFixed(1)} km away — no immediate lightning threat at this location.`;
128
+ : `Nearest lightning ${shownDistance.toFixed(1)} km away — no immediate lightning threat at this location.`;
124
129
  recommendations.push('Continue to monitor weather conditions.');
125
130
  recommendations.push('Lightning can strike from distant storms, so stay alert to changing conditions.');
126
131
  }
127
- else if (nearestDistance > 16) {
132
+ else if (shownDistance > 16) {
128
133
  level = 'elevated';
129
- message = `Lightning detected ${nearestDistance.toFixed(1)} km away. Thunderstorm in the vicinity.`;
134
+ message = `Lightning detected ${shownDistance.toFixed(1)} km away. Thunderstorm in the vicinity.`;
130
135
  recommendations.push('Move activities indoors if possible.');
131
136
  recommendations.push('Avoid open areas, tall objects, and bodies of water.');
132
137
  recommendations.push('If outdoors, seek shelter in a substantial building or hard-topped vehicle.');
133
138
  recommendations.push('Monitor conditions closely - storms can move quickly.');
134
139
  }
135
- else if (nearestDistance > 8) {
140
+ else if (shownDistance > 8) {
136
141
  level = 'high';
137
- message = `Lightning strike detected ${nearestDistance.toFixed(1)} km away. High risk - seek shelter immediately.`;
142
+ message = `Lightning strike detected ${shownDistance.toFixed(1)} km away. High risk - seek shelter immediately.`;
138
143
  recommendations.push('SEEK SHELTER IMMEDIATELY in a substantial building or hard-topped vehicle.');
139
144
  recommendations.push('Do NOT shelter under trees or in open-sided structures.');
140
145
  recommendations.push('Stay away from windows, doors, and electrical equipment.');
@@ -143,7 +148,7 @@ function assessSafety(strikes, statistics) {
143
148
  }
144
149
  else {
145
150
  level = 'extreme';
146
- message = `EXTREME DANGER: Lightning strike within ${nearestDistance?.toFixed(1)} km. You are in immediate danger.`;
151
+ message = `EXTREME DANGER: Lightning strike within ${shownDistance.toFixed(1)} km. You are in immediate danger.`;
147
152
  recommendations.push('⚠️ TAKE IMMEDIATE SHELTER - Lightning is striking nearby!');
148
153
  recommendations.push('Get inside a substantial building or hard-topped vehicle NOW.');
149
154
  recommendations.push('If no shelter available, crouch low immediately with feet together.');
@@ -1 +1 @@
1
- {"version":3,"file":"lightningHandler.js","sourceRoot":"","sources":["../../src/handlers/lightningHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lightningHandler.js","sourceRoot":"","sources":["../../src/handlers/lightningHandler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Round a raw computed value to the same precision the render site will
3
+ * display it at, mirroring `toFixed` rather than `Math.round`.
4
+ *
5
+ * `toFixed` and `Math.round` disagree on negative halves — `(-2.5).toFixed(0)`
6
+ * is `"-3"` while `Math.round(-2.5)` is `-2` — so this helper matches the
7
+ * render site's own rounding rather than a generic round, which is the
8
+ * entire point of having it.
9
+ *
10
+ * Per the caller contract: pass this value to the band, and pass the same
11
+ * `decimals` the render site passes to `toFixed`. That is the invariant
12
+ * this helper exists to hold — the number the user reads and the band it
13
+ * falls in can never disagree at an edge.
14
+ *
15
+ * `decimals` must be an integer in `toFixed`'s own valid range (0-100);
16
+ * this helper does not re-validate it, because every call site is in-repo
17
+ * and passes a literal.
18
+ *
19
+ * @param raw The raw computed value
20
+ * @param decimals The number of decimal places the render site formats to
21
+ * @returns `raw` rounded to `decimals` places via `toFixed`, or `raw`
22
+ * unchanged when it is not finite (NaN or +/-Infinity), so a non-finite
23
+ * value is never converted into a number the caller would then band
24
+ */
25
+ export declare function displayValue(raw: number, decimals: number): number;
26
+ //# sourceMappingURL=displayBanding.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"displayBanding.d.ts","sourceRoot":"","sources":["../../src/utils/displayBanding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAMlE"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Round a raw computed value to the same precision the render site will
3
+ * display it at, mirroring `toFixed` rather than `Math.round`.
4
+ *
5
+ * `toFixed` and `Math.round` disagree on negative halves — `(-2.5).toFixed(0)`
6
+ * is `"-3"` while `Math.round(-2.5)` is `-2` — so this helper matches the
7
+ * render site's own rounding rather than a generic round, which is the
8
+ * entire point of having it.
9
+ *
10
+ * Per the caller contract: pass this value to the band, and pass the same
11
+ * `decimals` the render site passes to `toFixed`. That is the invariant
12
+ * this helper exists to hold — the number the user reads and the band it
13
+ * falls in can never disagree at an edge.
14
+ *
15
+ * `decimals` must be an integer in `toFixed`'s own valid range (0-100);
16
+ * this helper does not re-validate it, because every call site is in-repo
17
+ * and passes a literal.
18
+ *
19
+ * @param raw The raw computed value
20
+ * @param decimals The number of decimal places the render site formats to
21
+ * @returns `raw` rounded to `decimals` places via `toFixed`, or `raw`
22
+ * unchanged when it is not finite (NaN or +/-Infinity), so a non-finite
23
+ * value is never converted into a number the caller would then band
24
+ */
25
+ export function displayValue(raw, decimals) {
26
+ if (!Number.isFinite(raw)) {
27
+ return raw;
28
+ }
29
+ return Number(raw.toFixed(decimals));
30
+ }
31
+ //# sourceMappingURL=displayBanding.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"displayBanding.js","sourceRoot":"","sources":["../../src/utils/displayBanding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,YAAY,CAAC,GAAW,EAAE,QAAgB;IACxD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,GAAG,CAAC;IACb,CAAC;IAED,OAAO,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;AACvC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dangahagan/weather-mcp",
3
- "version": "1.25.1",
3
+ "version": "1.25.2",
4
4
  "description": "MCP server giving AI assistants 17 weather tools with zero API keys: global forecasts, current conditions, alerts, air quality, marine conditions, lightning detection, radar imagery, river levels, wildfire tracking, and historical weather back to 1940. Built entirely on free public APIs (NOAA, Open-Meteo, USGS, NIFC).",
5
5
  "mcpName": "io.github.dgahagan/weather-mcp",
6
6
  "main": "dist/index.js",