@cyanheads/noaa-spaceweather-mcp-server 0.1.4 → 0.1.5
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/AGENTS.md +3 -3
- package/CLAUDE.md +3 -3
- package/Dockerfile +6 -0
- package/README.md +1 -1
- package/changelog/0.1.x/0.1.5.md +24 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-aurora-forecast.tool.d.ts +3 -3
- package/dist/mcp-server/tools/definitions/get-aurora-forecast.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-aurora-forecast.tool.js +3 -3
- package/dist/mcp-server/tools/definitions/get-aurora-forecast.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/index.d.ts +3 -3
- package/package.json +5 -5
- package/server.json +3 -3
package/AGENTS.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Developer Protocol
|
|
2
2
|
|
|
3
3
|
**Server:** noaa-spaceweather-mcp-server
|
|
4
|
-
**Version:** 0.1.
|
|
5
|
-
**Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) `^0.
|
|
4
|
+
**Version:** 0.1.5
|
|
5
|
+
**Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) `^0.10.6`
|
|
6
6
|
**Engines:** Bun ≥1.3.0, Node ≥24.0.0
|
|
7
7
|
**MCP SDK:** `@modelcontextprotocol/sdk` ^1.29.0
|
|
8
8
|
**Zod:** ^4.4.3
|
|
@@ -35,7 +35,7 @@ Tailor suggestions to what's actually missing or stale — don't recite the full
|
|
|
35
35
|
- **Logic throws, framework catches.** Tool/resource handlers are pure — throw on failure, no `try/catch`. Plain `Error` is fine; the framework catches, classifies, and formats. Use error factories (`notFound()`, `validationError()`, etc.) when the error code matters.
|
|
36
36
|
- **Use `ctx.log`** for request-scoped logging. No `console` calls.
|
|
37
37
|
- **Use `ctx.state`** for tenant-scoped storage. Never access persistence directly.
|
|
38
|
-
- **Check `ctx.elicit
|
|
38
|
+
- **Check `ctx.elicit`** for presence before calling.
|
|
39
39
|
- **Secrets in env vars only** — never hardcoded.
|
|
40
40
|
- **Close the loop on issues.** When implementing work tracked by a GitHub issue, comment on the issue with what landed and close it. Do both — a comment without a close leaves stale issues open; a close without a comment leaves no record of what shipped. The comment is for future readers — state the concrete changes, not the conversation that produced them.
|
|
41
41
|
|
package/CLAUDE.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Developer Protocol
|
|
2
2
|
|
|
3
3
|
**Server:** noaa-spaceweather-mcp-server
|
|
4
|
-
**Version:** 0.1.
|
|
5
|
-
**Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) `^0.
|
|
4
|
+
**Version:** 0.1.5
|
|
5
|
+
**Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) `^0.10.6`
|
|
6
6
|
**Engines:** Bun ≥1.3.0, Node ≥24.0.0
|
|
7
7
|
**MCP SDK:** `@modelcontextprotocol/sdk` ^1.29.0
|
|
8
8
|
**Zod:** ^4.4.3
|
|
@@ -35,7 +35,7 @@ Tailor suggestions to what's actually missing or stale — don't recite the full
|
|
|
35
35
|
- **Logic throws, framework catches.** Tool/resource handlers are pure — throw on failure, no `try/catch`. Plain `Error` is fine; the framework catches, classifies, and formats. Use error factories (`notFound()`, `validationError()`, etc.) when the error code matters.
|
|
36
36
|
- **Use `ctx.log`** for request-scoped logging. No `console` calls.
|
|
37
37
|
- **Use `ctx.state`** for tenant-scoped storage. Never access persistence directly.
|
|
38
|
-
- **Check `ctx.elicit
|
|
38
|
+
- **Check `ctx.elicit`** for presence before calling.
|
|
39
39
|
- **Secrets in env vars only** — never hardcoded.
|
|
40
40
|
- **Close the loop on issues.** When implementing work tracked by a GitHub issue, comment on the issue with what landed and close it. Do both — a comment without a close leaves stale issues open; a close without a comment leaves no record of what shipped. The comment is for future readers — state the concrete changes, not the conversation that produced them.
|
|
41
41
|
|
package/Dockerfile
CHANGED
|
@@ -36,11 +36,14 @@ WORKDIR /usr/src/app
|
|
|
36
36
|
# production dependencies are installed.
|
|
37
37
|
ENV NODE_ENV=production
|
|
38
38
|
|
|
39
|
+
ARG APP_VERSION
|
|
40
|
+
|
|
39
41
|
# OCI image metadata (https://github.com/opencontainers/image-spec/blob/main/annotations.md)
|
|
40
42
|
LABEL org.opencontainers.image.title="noaa-spaceweather-mcp-server"
|
|
41
43
|
LABEL org.opencontainers.image.description="Query NOAA SWPC space weather: geomagnetic storm scales, Kp index, aurora forecasts, solar wind, solar activity, and alerts via MCP. STDIO or Streamable HTTP."
|
|
42
44
|
LABEL org.opencontainers.image.source="https://github.com/cyanheads/noaa-spaceweather-mcp-server"
|
|
43
45
|
LABEL org.opencontainers.image.licenses="Apache-2.0"
|
|
46
|
+
LABEL org.opencontainers.image.version="${APP_VERSION}"
|
|
44
47
|
|
|
45
48
|
# Copy dependency manifests
|
|
46
49
|
COPY package.json bun.lock ./
|
|
@@ -95,5 +98,8 @@ ENV MCP_FORCE_CONSOLE_LOGGING="true"
|
|
|
95
98
|
# Expose the port the server listens on
|
|
96
99
|
EXPOSE ${MCP_HTTP_PORT}
|
|
97
100
|
|
|
101
|
+
HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
|
|
102
|
+
CMD bun -e "fetch('http://localhost:'+process.env.MCP_HTTP_PORT+'/healthz').then(r=>process.exit(r.ok?0:1)).catch(()=>process.exit(1))"
|
|
103
|
+
|
|
98
104
|
# The command to start the server
|
|
99
105
|
CMD ["bun", "run", "dist/index.js"]
|
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
<div align="center">
|
|
9
9
|
|
|
10
|
-
[](./CHANGELOG.md) [](./LICENSE) [](https://github.com/users/cyanheads/packages/container/package/noaa-spaceweather-mcp-server) [](https://modelcontextprotocol.io/) [](https://www.npmjs.com/package/@cyanheads/noaa-spaceweather-mcp-server) [](https://www.typescriptlang.org/) [](https://bun.sh/)
|
|
11
11
|
|
|
12
12
|
</div>
|
|
13
13
|
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Maintenance: mcp-ts-core ^0.10.6 adoption, explicit display identity, Docker healthcheck, MCPB bundle cleaner, aurora coordinate-error contract fix"
|
|
3
|
+
breaking: false
|
|
4
|
+
security: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# 0.1.5 — 2026-06-12
|
|
8
|
+
|
|
9
|
+
## Added
|
|
10
|
+
|
|
11
|
+
- **Display identity** — `createApp()` now sets `name` and `title` explicitly to `noaa-spaceweather-mcp-server` so the unscoped repo name shows on every surface instead of the npm scope.
|
|
12
|
+
- **Docker `HEALTHCHECK`** — container reports health via `GET /healthz`; `ARG APP_VERSION` flows into the `org.opencontainers.image.version` OCI label.
|
|
13
|
+
- **`scripts/clean-mcpb.ts`** — post-pack bundle cleaner wired into the `bundle` script: runs `mcpb clean`, then strips dependency-shipped agent-doc entries (`skills/`, `.claude/`, `.agents/`, `SKILL.md`) nested under `node_modules/` that root-anchored `.mcpbignore` patterns cannot reach.
|
|
14
|
+
- **`lint-packaging.ts` checks** — expanded from 4 to 9: `.mcpbignore` anchoring guard for root dev dirs, critical-runtime-path protection, post-bundle `node_modules` agent-doc assertion, and an identity check that `name`/`title`/`display_name` equal the unscoped package name.
|
|
15
|
+
- **`check-framework-antipatterns.ts` rule** — flags `z.coerce.boolean()` on env flags (`Boolean("false")` is `true`, so the flag can't be disabled via the environment — use `z.stringbool()`); comment lines are skipped so documenting the pattern doesn't trip the rule.
|
|
16
|
+
|
|
17
|
+
## Changed
|
|
18
|
+
|
|
19
|
+
- **`@cyanheads/mcp-ts-core`** ^0.9.21 → ^0.10.6; **`@biomejs/biome`** ^2.4.16 → ^2.5.0; **`@types/node`** ^25.9.2 → ^25.9.3.
|
|
20
|
+
- **`.mcpbignore`** — root dev-dir patterns anchored with a leading `/` (`/skills/`, `/.claude/`, `/Dockerfile`, …) so they no longer also match nested `node_modules/**` runtime paths.
|
|
21
|
+
|
|
22
|
+
## Fixed
|
|
23
|
+
|
|
24
|
+
- **`get_aurora_forecast` `invalid_coordinates`** — error contract corrected to match the handler: code `InvalidParams` → `ValidationError`, and the `when`/`recovery` reframed from out-of-range bounds (already enforced by the Zod schema) to the real check — one coordinate supplied without the other.
|
package/dist/index.js
CHANGED
|
@@ -7,6 +7,8 @@ import { createApp } from '@cyanheads/mcp-ts-core';
|
|
|
7
7
|
import { allToolDefinitions } from './mcp-server/tools/definitions/index.js';
|
|
8
8
|
import { initSpaceWeatherService } from './services/space-weather/space-weather-service.js';
|
|
9
9
|
await createApp({
|
|
10
|
+
name: 'noaa-spaceweather-mcp-server',
|
|
11
|
+
title: 'noaa-spaceweather-mcp-server',
|
|
10
12
|
tools: allToolDefinitions,
|
|
11
13
|
resources: [],
|
|
12
14
|
prompts: [],
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,mDAAmD,CAAC;AAE5F,MAAM,SAAS,CAAC;IACd,KAAK,EAAE,kBAAkB;IACzB,SAAS,EAAE,EAAE;IACb,OAAO,EAAE,EAAE;IACX,YAAY,EACV,wFAAwF;QACxF,8EAA8E;QAC9E,qGAAqG;QACrG,0FAA0F;QAC1F,wEAAwE;QACxE,kFAAkF;IACpF,KAAK,CAAC,IAAI;QACR,uBAAuB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;CACF,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,mDAAmD,CAAC;AAE5F,MAAM,SAAS,CAAC;IACd,IAAI,EAAE,8BAA8B;IACpC,KAAK,EAAE,8BAA8B;IACrC,KAAK,EAAE,kBAAkB;IACzB,SAAS,EAAE,EAAE;IACb,OAAO,EAAE,EAAE;IACX,YAAY,EACV,wFAAwF;QACxF,8EAA8E;QAC9E,qGAAqG;QACrG,0FAA0F;QAC1F,wEAAwE;QACxE,kFAAkF;IACpF,KAAK,CAAC,IAAI;QACR,uBAAuB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -30,8 +30,8 @@ export declare const getAuroraForecast: import("@cyanheads/mcp-ts-core").ToolDef
|
|
|
30
30
|
readonly recovery: "Retry in 30–60 seconds; SWPC feeds occasionally lag during high-activity events.";
|
|
31
31
|
}, {
|
|
32
32
|
readonly reason: "invalid_coordinates";
|
|
33
|
-
readonly code: JsonRpcErrorCode.
|
|
34
|
-
readonly when: "
|
|
35
|
-
readonly recovery: "Provide latitude
|
|
33
|
+
readonly code: JsonRpcErrorCode.ValidationError;
|
|
34
|
+
readonly when: "One coordinate provided without the other.";
|
|
35
|
+
readonly recovery: "Provide both latitude and longitude together, or omit both for global metadata only.";
|
|
36
36
|
}], undefined>;
|
|
37
37
|
//# sourceMappingURL=get-aurora-forecast.tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-aurora-forecast.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-aurora-forecast.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAuCjE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"get-aurora-forecast.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-aurora-forecast.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAuCjE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA4L5B,CAAC"}
|
|
@@ -107,9 +107,9 @@ export const getAuroraForecast = tool('noaa_spaceweather_get_aurora_forecast', {
|
|
|
107
107
|
},
|
|
108
108
|
{
|
|
109
109
|
reason: 'invalid_coordinates',
|
|
110
|
-
code: JsonRpcErrorCode.
|
|
111
|
-
when: '
|
|
112
|
-
recovery: 'Provide latitude
|
|
110
|
+
code: JsonRpcErrorCode.ValidationError,
|
|
111
|
+
when: 'One coordinate provided without the other.',
|
|
112
|
+
recovery: 'Provide both latitude and longitude together, or omit both for global metadata only.',
|
|
113
113
|
},
|
|
114
114
|
],
|
|
115
115
|
async handler(input, ctx) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-aurora-forecast.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-aurora-forecast.tool.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"get-aurora-forecast.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-aurora-forecast.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,9 +58,9 @@ export declare const allToolDefinitions: (import("@cyanheads/mcp-ts-core").ToolD
|
|
|
58
58
|
readonly recovery: "Retry in 30–60 seconds; SWPC feeds occasionally lag during high-activity events.";
|
|
59
59
|
}, {
|
|
60
60
|
readonly reason: "invalid_coordinates";
|
|
61
|
-
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.
|
|
62
|
-
readonly when: "
|
|
63
|
-
readonly recovery: "Provide latitude
|
|
61
|
+
readonly code: import("@cyanheads/mcp-ts-core/errors").JsonRpcErrorCode.ValidationError;
|
|
62
|
+
readonly when: "One coordinate provided without the other.";
|
|
63
|
+
readonly recovery: "Provide both latitude and longitude together, or omit both for global metadata only.";
|
|
64
64
|
}], undefined> | import("@cyanheads/mcp-ts-core").ToolDefinition<import("zod").ZodObject<{}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
65
65
|
observedAt: import("zod").ZodString;
|
|
66
66
|
currentKp: import("zod").ZodNumber;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cyanheads/noaa-spaceweather-mcp-server",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.5",
|
|
4
4
|
"mcpName": "io.github.cyanheads/noaa-spaceweather-mcp-server",
|
|
5
5
|
"description": "Query NOAA SWPC space weather: geomagnetic storm scales, Kp index, aurora forecasts, solar wind, solar activity, and alerts via MCP. STDIO or Streamable HTTP.",
|
|
6
6
|
"type": "module",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"format:unsafe": "biome check --write --unsafe .",
|
|
32
32
|
"lint:mcp": "bun run scripts/lint-mcp.ts",
|
|
33
33
|
"lint:packaging": "bun run scripts/lint-packaging.ts",
|
|
34
|
-
"bundle": "npm run build && npx -y @anthropic-ai/mcpb pack . dist/noaa-spaceweather-mcp-server.mcpb",
|
|
34
|
+
"bundle": "npm run build && npx -y @anthropic-ai/mcpb pack . dist/noaa-spaceweather-mcp-server.mcpb && bun run scripts/clean-mcpb.ts dist/noaa-spaceweather-mcp-server.mcpb",
|
|
35
35
|
"changelog:build": "bun run scripts/build-changelog.ts",
|
|
36
36
|
"changelog:check": "bun run scripts/build-changelog.ts --check",
|
|
37
37
|
"release:github": "bun run scripts/release-github.ts",
|
|
@@ -89,13 +89,13 @@
|
|
|
89
89
|
"access": "public"
|
|
90
90
|
},
|
|
91
91
|
"dependencies": {
|
|
92
|
-
"@cyanheads/mcp-ts-core": "^0.
|
|
92
|
+
"@cyanheads/mcp-ts-core": "^0.10.6",
|
|
93
93
|
"pino-pretty": "^13.1.3",
|
|
94
94
|
"zod": "^4.4.3"
|
|
95
95
|
},
|
|
96
96
|
"devDependencies": {
|
|
97
|
-
"@biomejs/biome": "^2.
|
|
98
|
-
"@types/node": "^25.9.
|
|
97
|
+
"@biomejs/biome": "^2.5.0",
|
|
98
|
+
"@types/node": "^25.9.3",
|
|
99
99
|
"depcheck": "^1.4.7",
|
|
100
100
|
"ignore": "^7.0.5",
|
|
101
101
|
"tsc-alias": "^1.8.17",
|
package/server.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"url": "https://github.com/cyanheads/noaa-spaceweather-mcp-server",
|
|
7
7
|
"source": "github"
|
|
8
8
|
},
|
|
9
|
-
"version": "0.1.
|
|
9
|
+
"version": "0.1.5",
|
|
10
10
|
"remotes": [
|
|
11
11
|
{
|
|
12
12
|
"type": "streamable-http",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"registryBaseUrl": "https://registry.npmjs.org",
|
|
20
20
|
"identifier": "@cyanheads/noaa-spaceweather-mcp-server",
|
|
21
21
|
"runtimeHint": "bun",
|
|
22
|
-
"version": "0.1.
|
|
22
|
+
"version": "0.1.5",
|
|
23
23
|
"packageArguments": [
|
|
24
24
|
{
|
|
25
25
|
"type": "positional",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"registryBaseUrl": "https://registry.npmjs.org",
|
|
49
49
|
"identifier": "@cyanheads/noaa-spaceweather-mcp-server",
|
|
50
50
|
"runtimeHint": "bun",
|
|
51
|
-
"version": "0.1.
|
|
51
|
+
"version": "0.1.5",
|
|
52
52
|
"packageArguments": [
|
|
53
53
|
{
|
|
54
54
|
"type": "positional",
|